diff --git a/CHANGES b/CHANGES index c35d002e8..9960eb772 100644 --- a/CHANGES +++ b/CHANGES @@ -13,6 +13,7 @@ Bugs fixed * #1789: ``:pyobject:`` option of ``literalinclude`` directive includes following lines after class definitions * #1790: ``literalinclude`` strips empty lines at the head and tail +* #1913: C++, fix assert bug for enumerators in next-to-global and global scope. Documentation ------------- @@ -38,6 +39,7 @@ Bugs fixed Thanks to Jens Hedegaard Nielsen. * #1781: Setting `html_domain_indices` to a list raises a type check warnings. + Release 1.3 (released Mar 10, 2015) =================================== @@ -86,6 +88,7 @@ Documentation * #1651: Add ``vartype`` field descritpion for python domain. + Release 1.3b3 (released Feb 24, 2015) ===================================== diff --git a/doc/_templates/indexsidebar.html b/doc/_templates/indexsidebar.html index 0bd3d71a4..56094809f 100644 --- a/doc/_templates/indexsidebar.html +++ b/doc/_templates/indexsidebar.html @@ -27,7 +27,7 @@ are also available.{%endtrans%}

{%trans%}Questions? Suggestions?{%endtrans%}

-

{%trans%}Join the Google group:{%endtrans%}

+

{%trans%}Join the sphinx-users mailing list on Google Groups:{%endtrans%}

>> print [i for i in example_generator(4)] - [0, 1, 2, 3] + >>> print([i for i in example_generator(4)]) + [0, 1, 2, 3] """ for i in range(n): @@ -118,18 +131,19 @@ class ExampleError(Exception): convention to document the __init__ method and be consistent with it. Note: - Do not include the `self` parameter in the ``Args`` section. + Do not include the `self` parameter in the ``Args`` section. Args: - msg (str): Human readable string describing the exception. - code (int, optional): Error code, defaults to 2. + msg (str): Human readable string describing the exception. + code (Optional[int]): Error code. Attributes: - msg (str): Human readable string describing the exception. - code (int): Exception error code. + msg (str): Human readable string describing the exception. + code (int): Exception error code. """ - def __init__(self, msg, code=2): + + def __init__(self, msg, code): self.msg = msg self.code = code @@ -137,17 +151,28 @@ class ExampleError(Exception): class ExampleClass(object): """The summary line for a class docstring should fit on one line. - If the class has public attributes, they should be documented here + If the class has public attributes, they may be documented here in an ``Attributes`` section and follow the same formatting as a - function's ``Args`` section. + function's ``Args`` section. Alternatively, attributes may be documented + inline with the attribute's declaration (see __init__ method below). + + Properties created with the ``@property`` decorator should be documented + in the property's getter method. + + Attribute and property types -- if given -- should be specified according + to `PEP 484`_, though `PEP 484`_ conformance isn't required or enforced. Attributes: - attr1 (str): Description of `attr1`. - attr2 (list of str): Description of `attr2`. - attr3 (int): Description of `attr3`. + attr1 (str): Description of `attr1`. + attr2 (Optional[int]): Description of `attr2`. + + + .. _PEP 484: + https://www.python.org/dev/peps/pep-0484/ """ - def __init__(self, param1, param2, param3=0): + + def __init__(self, param1, param2, param3): """Example of docstring on the __init__ method. The __init__ method may be documented in either the class level @@ -157,31 +182,56 @@ class ExampleClass(object): convention to document the __init__ method and be consistent with it. Note: - Do not include the `self` parameter in the ``Args`` section. + Do not include the `self` parameter in the ``Args`` section. Args: - param1 (str): Description of `param1`. - param2 (list of str): Description of `param2`. Multiple - lines are supported. - param3 (int, optional): Description of `param3`, defaults to 0. + param1 (str): Description of `param1`. + param2 (Optional[int]): Description of `param2`. Multiple + lines are supported. + param3 (List[str]): Description of `param3`. """ self.attr1 = param1 self.attr2 = param2 - self.attr3 = param3 + self.attr3 = param3 #: Doc comment *inline* with attribute + + #: List[str]: Doc comment *before* attribute, with type specified + self.attr4 = ['attr4'] + + self.attr5 = None + """Optional[str]: Docstring *after* attribute, with type specified.""" + + @property + def readonly_property(self): + """str: Properties should be documented in their getter method.""" + return 'readonly_property' + + @property + def readwrite_property(self): + """List[str]: Properties with both a getter and setter should only + be documented in their getter method. + + If the setter method contains notable behavior, it should be + mentioned here. + """ + return ['readwrite_property'] + + @readwrite_property.setter + def readwrite_property(self, value): + value def example_method(self, param1, param2): """Class methods are similar to regular functions. Note: - Do not include the `self` parameter in the ``Args`` section. + Do not include the `self` parameter in the ``Args`` section. Args: - param1: The first parameter. - param2: The second parameter. + param1: The first parameter. + param2: The second parameter. Returns: - True if successful, False otherwise. + True if successful, False otherwise. """ return True diff --git a/doc/ext/example_numpy.py b/doc/ext/example_numpy.py index df1d20e6d..68bc9d289 100644 --- a/doc/ext/example_numpy.py +++ b/doc/ext/example_numpy.py @@ -23,12 +23,12 @@ Notes This is an example of an indented section. It's like any other section, but the body is indented to help it stand out from surrounding text. -If a section is indented, then a section break is created simply by +If a section is indented, then a section break is created by resuming unindented text. Attributes ---------- -module_level_variable : int +module_level_variable1 : int Module level variables may be documented in either the ``Attributes`` section of the module docstring, or in an inline docstring immediately following the variable. @@ -42,7 +42,14 @@ module_level_variable : int """ -module_level_variable = 12345 +module_level_variable1 = 12345 + +module_level_variable2 = 98765 +"""int: Module level variable documented inline. + +The docstring may span multiple lines. The type may optionally be specified +on the first line, separated by a colon. +""" def module_level_function(param1, param2=None, *args, **kwargs): @@ -52,9 +59,11 @@ def module_level_function(param1, param2=None, *args, **kwargs): The name of each parameter is required. The type and description of each parameter is optional, but should be included if not obvious. - If the parameter itself is optional, it should be noted by adding - ", optional" to the type. If \*args or \*\*kwargs are accepted, they - should be listed as \*args and \*\*kwargs. + Parameter types -- if given -- should be specified according to + `PEP 484`_, though `PEP 484`_ conformance isn't required or enforced. + + If \*args or \*\*kwargs are accepted, + they should be listed as ``*args`` and ``**kwargs``. The format for a parameter is:: @@ -63,6 +72,7 @@ def module_level_function(param1, param2=None, *args, **kwargs): The description may span multiple lines. Following lines should be indented to match the first line of the description. + The ": type" is optional. Multiple paragraphs are supported in parameter descriptions. @@ -71,8 +81,8 @@ def module_level_function(param1, param2=None, *args, **kwargs): ---------- param1 : int The first parameter. - param2 : str, optional - The second parameter, defaults to None. + param2 : Optional[str] + The second parameter. *args Variable length argument list. **kwargs @@ -103,6 +113,10 @@ def module_level_function(param1, param2=None, *args, **kwargs): ValueError If `param2` is equal to `param1`. + + .. _PEP 484: + https://www.python.org/dev/peps/pep-0484/ + """ if param1 == param2: raise ValueError('param1 may not be equal to param2') @@ -115,19 +129,19 @@ def example_generator(n): Parameters ---------- n : int - The upper limit of the range to generate, from 0 to `n` - 1 + The upper limit of the range to generate, from 0 to `n` - 1. Yields ------ int - The next number in the range of 0 to `n` - 1 + The next number in the range of 0 to `n` - 1. Examples -------- Examples should be written in doctest format, and should illustrate how to use the function. - >>> print [i for i in example_generator(4)] + >>> print([i for i in example_generator(4)]) [0, 1, 2, 3] """ @@ -152,18 +166,19 @@ class ExampleError(Exception): ---------- msg : str Human readable string describing the exception. - code : int, optional - Error code, defaults to 2. + code : Optional[int] + Numeric error code. Attributes ---------- msg : str Human readable string describing the exception. code : int - Exception error code. + Numeric error code. """ - def __init__(self, msg, code=2): + + def __init__(self, msg, code): self.msg = msg self.code = code @@ -171,21 +186,31 @@ class ExampleError(Exception): class ExampleClass(object): """The summary line for a class docstring should fit on one line. - If the class has public attributes, they should be documented here + If the class has public attributes, they may be documented here in an ``Attributes`` section and follow the same formatting as a - function's ``Parameters`` section. + function's ``Args`` section. Alternatively, attributes may be documented + inline with the attribute's declaration (see __init__ method below). + + Properties created with the ``@property`` decorator should be documented + in the property's getter method. + + Attribute and property types -- if given -- should be specified according + to `PEP 484`_, though `PEP 484`_ conformance isn't required or enforced. Attributes ---------- attr1 : str Description of `attr1`. - attr2 : list of str + attr2 : Optional[int] Description of `attr2`. - attr3 : int - Description of `attr3`. + + + .. _PEP 484: + https://www.python.org/dev/peps/pep-0484/ """ - def __init__(self, param1, param2, param3=0): + + def __init__(self, param1, param2, param3): """Example of docstring on the __init__ method. The __init__ method may be documented in either the class level @@ -202,16 +227,41 @@ class ExampleClass(object): ---------- param1 : str Description of `param1`. - param2 : list of str + param2 : List[str] Description of `param2`. Multiple lines are supported. - param3 : int, optional - Description of `param3`, defaults to 0. + param3 : Optional[int] + Description of `param3`. """ self.attr1 = param1 self.attr2 = param2 - self.attr3 = param3 + self.attr3 = param3 #: Doc comment *inline* with attribute + + #: List[str]: Doc comment *before* attribute, with type specified + self.attr4 = ["attr4"] + + self.attr5 = None + """Optional[str]: Docstring *after* attribute, with type specified.""" + + @property + def readonly_property(self): + """str: Properties should be documented in their getter method.""" + return "readonly_property" + + @property + def readwrite_property(self): + """List[str]: Properties with both a getter and setter should only + be documented in their getter method. + + If the setter method contains notable behavior, it should be + mentioned here. + """ + return ["readwrite_property"] + + @readwrite_property.setter + def readwrite_property(self, value): + value def example_method(self, param1, param2): """Class methods are similar to regular functions. diff --git a/doc/ext/napoleon.rst b/doc/ext/napoleon.rst index e0dc2cf01..7bd74aabd 100644 --- a/doc/ext/napoleon.rst +++ b/doc/ext/napoleon.rst @@ -50,9 +50,9 @@ source code files. .. _ReStructuredText: http://docutils.sourceforge.net/rst.html .. _docstrings: http://www.python.org/dev/peps/pep-0287/ .. _Google Python Style Guide: - http://google-styleguide.googlecode.com/svn/trunk/pyguide.html + http://google.github.io/styleguide/pyguide.html .. _Google: - http://google-styleguide.googlecode.com/svn/trunk/pyguide.html#Comments + http://google.github.io/styleguide/pyguide.html#Comments .. _NumPy: https://github.com/numpy/numpy/blob/master/doc/HOWTO_DOCUMENT.rst.txt .. _Khan Academy: @@ -113,6 +113,7 @@ All of the following section headers are supported: * ``Warning`` * ``Warnings`` *(alias of Warning)* * ``Warns`` + * ``Yield`` *(alias of Yields)* * ``Yields`` Google vs NumPy @@ -178,6 +179,11 @@ not be mixed. Choose one style for your project and be consistent with it. * :ref:`example_google` * :ref:`example_numpy` + For Python type annotations, see `PEP 484`_. + +.. _PEP 484: + https://www.python.org/dev/peps/pep-0484/ + Configuration ============= diff --git a/doc/extdev/tutorial.rst b/doc/extdev/tutorial.rst index 8241e109e..ad0bc27a1 100644 --- a/doc/extdev/tutorial.rst +++ b/doc/extdev/tutorial.rst @@ -4,11 +4,11 @@ Tutorial: Writing a simple extension ==================================== This section is intended as a walkthrough for the creation of custom extensions. -It covers the basics of writing and activating an extensions, as well as +It covers the basics of writing and activating an extension, as well as commonly used features of extensions. As an example, we will cover a "todo" extension that adds capabilities to -include todo entries in the documentation, and collecting these in a central +include todo entries in the documentation, and to collect these in a central place. (A similar "todo" extension is distributed with Sphinx.) @@ -20,7 +20,7 @@ extension. These are: **Application** The application object (usually called ``app``) is an instance of - :class:`.Sphinx`. It controls the most high-level functionality, such as the + :class:`.Sphinx`. It controls most high-level functionality, such as the setup of extensions, event dispatching and producing output (logging). If you have the environment object, the application is available as @@ -29,8 +29,8 @@ extension. These are: **Environment** The build environment object (usually called ``env``) is an instance of :class:`.BuildEnvironment`. It is responsible for parsing the source - documents stores all metadata about the document collection and is serialized - after each build. + documents, stores all metadata about the document collection and is + serialized to disk after each build. Its API provides methods to do with access to metadata, resolving references, etc. It can also be used by extensions to cache information that should @@ -64,7 +64,7 @@ in which a Sphinx project is built: this works in several phases. **Phase 0: Initialization** - In this phase, almost nothing interesting for us happens. The source + In this phase, almost nothing of interest to us happens. The source directory is searched for source files, and extensions are initialized. Should a stored build environment exist, it is loaded, otherwise a new one is created. @@ -73,8 +73,8 @@ in which a Sphinx project is built: this works in several phases. In Phase 1, all source files (and on subsequent builds, those that are new or changed) are read and parsed. This is the phase where directives and roles - are encountered by the docutils, and the corresponding code is executed. The - output of this phase is a *doctree* for each source files, that is a tree of + are encountered by docutils, and the corresponding code is executed. The + output of this phase is a *doctree* for each source file; that is a tree of docutils nodes. For document elements that aren't fully known until all existing files are read, temporary nodes are created. @@ -229,8 +229,8 @@ The Directive Classes A directive class is a class deriving usually from :class:`docutils.parsers.rst.Directive`. The directive interface is also covered in detail in the `docutils documentation`_; the important thing is that -the class has attributes that configure the allowed markup and a method ``run`` -that returns a list of nodes. +the class should have attributes that configure the allowed markup, +and a ``run`` method that returns a list of nodes. The ``todolist`` directive is quite simple:: diff --git a/doc/install.rst b/doc/install.rst index 046b31bf2..40d10a92b 100644 --- a/doc/install.rst +++ b/doc/install.rst @@ -147,7 +147,7 @@ If you finished the installation of pip, type this line in the command prompt: C:\> pip install sphinx -After installation, type :command:`sphinx-build` on the command prompt. If +After installation, type :command:`sphinx-build -h` on the command prompt. If everything worked fine, you will get a Sphinx version number and a list of options for this command. diff --git a/doc/make.bat b/doc/make.bat new file mode 100644 index 000000000..0a4bd77b9 --- /dev/null +++ b/doc/make.bat @@ -0,0 +1,33 @@ +@ECHO OFF + +REM Command file for Sphinx documentation + +if "%SPHINXBUILD%" == "" ( + set SPHINXBUILD=python ../sphinx-build.py +) +set SOURCEDIR=. +set BUILDDIR=_build +set SPHINXPROJ=sphinx-doc + +if "%1" == "" goto help + +%SPHINXBUILD% 2> nul +if errorlevel 9009 ( + echo. + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx + echo.installed, then set the SPHINXBUILD environment variable to point + echo.to the full path of the 'sphinx-build' executable. Alternatively you + echo.may add the Sphinx directory to PATH. + echo. + echo.If you don't have Sphinx installed, grab it from + echo.http://sphinx-doc.org/ + exit /b 1 +) + +%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% +goto end + +:help +%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% + +:end diff --git a/doc/markup/toctree.rst b/doc/markup/toctree.rst index ff0af7535..4123ee95d 100644 --- a/doc/markup/toctree.rst +++ b/doc/markup/toctree.rst @@ -85,7 +85,7 @@ tables of contents. The ``toctree`` directive is the central element. **Additional options** - You can use ``caption`` option to provide toctree caption and you can use + You can use ``caption`` option to provide a toctree caption and you can use ``name`` option to provide implicit target name that can be referenced by using :rst:role:`ref`:: diff --git a/doc/templating.rst b/doc/templating.rst index 20423b391..0ab005a8e 100644 --- a/doc/templating.rst +++ b/doc/templating.rst @@ -412,3 +412,8 @@ are in HTML form), these variables are also available: * ``includehidden`` (``False`` by default): if true, the TOC tree will also contain hidden entries. + +.. data:: page_source_suffix + + The suffix of the file that was rendered. Since we support a list of :confval:`source_suffix`, + this will allow you to properly link to the original source file. diff --git a/sphinx/apidoc.py b/sphinx/apidoc.py index 6891aec1c..10311e6f3 100644 --- a/sphinx/apidoc.py +++ b/sphinx/apidoc.py @@ -238,7 +238,7 @@ def recurse_tree(rootpath, excludes, opts): def normalize_excludes(rootpath, excludes): """Normalize the excluded directory list.""" - return [path.normpath(path.abspath(exclude)) for exclude in excludes] + return [path.abspath(exclude) for exclude in excludes] def is_excluded(root, excludes): @@ -247,7 +247,6 @@ def is_excluded(root, excludes): Note: by having trailing slashes, we avoid common prefix issues, like e.g. an exlude "foo" also accidentally excluding "foobar". """ - root = path.normpath(root) for exclude in excludes: if root == exclude: return True @@ -328,7 +327,7 @@ Note: By default this script will not overwrite already created files.""") if not opts.destdir: parser.error('An output directory is required.') if opts.header is None: - opts.header = path.normpath(rootpath).split(path.sep)[-1] + opts.header = path.abspath(rootpath).split(path.sep)[-1] if opts.suffix.startswith('.'): opts.suffix = opts.suffix[1:] if not path.isdir(rootpath): @@ -337,7 +336,7 @@ Note: By default this script will not overwrite already created files.""") if not path.isdir(opts.destdir): if not opts.dryrun: os.makedirs(opts.destdir) - rootpath = path.normpath(path.abspath(rootpath)) + rootpath = path.abspath(rootpath) excludes = normalize_excludes(rootpath, excludes) modules = recurse_tree(rootpath, excludes, opts) if opts.full: diff --git a/sphinx/application.py b/sphinx/application.py index 7d3fa01fe..66e083133 100644 --- a/sphinx/application.py +++ b/sphinx/application.py @@ -79,6 +79,7 @@ class Sphinx(object): self._extension_metadata = {} self._listeners = {} self.domains = BUILTIN_DOMAINS.copy() + self.buildername = buildername self.builderclasses = BUILTIN_BUILDERS.copy() self.builder = None self.env = None @@ -185,7 +186,7 @@ class Sphinx(object): # set up the build environment self._init_env(freshenv) # set up the builder - self._init_builder(buildername) + self._init_builder(self.buildername) def _init_i18n(self): """Load translated strings from the configured localedirs if enabled in @@ -446,8 +447,17 @@ class Sphinx(object): 'version.' % (extension, err)) if ext_meta is None: ext_meta = {} - if not ext_meta.get('version'): - ext_meta['version'] = 'unknown version' + # special-case for compatibility + if extension == 'rst2pdf.pdfbuilder': + ext_meta = {'parallel_read_safe': True} + try: + if not ext_meta.get('version'): + ext_meta['version'] = 'unknown version' + except Exception: + self.warn('extension %r returned an unsupported object from ' + 'its setup() function; it should return None or a ' + 'metadata dictionary' % extension) + ext_meta = {'version': 'unknown version'} self._extensions[extension] = mod self._extension_metadata[extension] = ext_meta diff --git a/sphinx/builders/html.py b/sphinx/builders/html.py index 431ac4091..b9585ec6a 100644 --- a/sphinx/builders/html.py +++ b/sphinx/builders/html.py @@ -408,6 +408,9 @@ class StandaloneHTMLBuilder(Builder): # metadata for the document meta = self.env.metadata.get(docname) + # Suffix for the document + source_suffix = '.' + self.env.doc2path(docname).split('.')[-1] + # local TOC and global TOC tree self_toc = self.env.get_toc_for(docname, self) toc = self.render_partial(self_toc)['fragment'] @@ -425,6 +428,7 @@ class StandaloneHTMLBuilder(Builder): toc = toc, # only display a TOC if there's more than one item to show display_toc = (self.env.toc_num_entries[docname] > 1), + page_source_suffix = source_suffix, ) def write_doc(self, docname, doctree): @@ -584,6 +588,12 @@ class StandaloneHTMLBuilder(Builder): copyfile(jsfile, path.join(self.outdir, '_static', 'translations.js')) + # copy non-minified stemmer JavaScript file + if self.indexer is not None: + jsfile = self.indexer.get_js_stemmer_rawcode() + if jsfile: + copyfile(jsfile, path.join(self.outdir, '_static', '_stemmer.js')) + ctx = self.globalcontext.copy() # add context items for search function used in searchtools.js_t diff --git a/sphinx/domains/cpp.py b/sphinx/domains/cpp.py index 09c2204d5..ae383f348 100644 --- a/sphinx/domains/cpp.py +++ b/sphinx/domains/cpp.py @@ -2415,6 +2415,43 @@ class CPPObject(ObjectDescription): names=('returns', 'return')), ] + def _add_enumerator_to_parent(self, ast, objects): + assert ast.objectType == 'enumerator' + # find the parent, if it exists && is an enum + # && it's unscoped, + # then add the name to the parent scope + assert len(ast.prefixedName.names) > 0 + if len(ast.prefixedName.names) == 1: + # TODO: we could warn, but it is somewhat equivalent to unscoped + # enums, without the enum + return # no parent + parentPrefixedAstName = ASTNestedName(ast.prefixedName.names[:-1]) + parentPrefixedName = text_type(parentPrefixedAstName).lstrip(':') + if parentPrefixedName not in objects: + # the parent is not explicitly declared + # TODO: we could warn, but it could be a style to just assume + # enumerator parnets to be scoped + return + docname, parentAst = objects[parentPrefixedName] + if parentAst.objectType != 'enum': + # TODO: maybe issue a warning, enumerators in non-enums is weird, + # but it is somewhat equivalent to unscoped enums, without the enum + return + if parentAst.scoped: + return + enumeratorName = ASTNestedName([ast.prefixedName.names[-1]]) + assert len(parentAst.prefixedName.names) > 0 + if len(parentAst.prefixedName.names) == 1: + # the enum is in global scope + unscopedName = enumeratorName + else: + enumScope = ASTNestedName(parentAst.prefixedName.names[:-1]) + unscopedName = enumeratorName.prefix_nested_name(enumScope) + txtUnscopedName = text_type(unscopedName).lstrip(':') + if txtUnscopedName not in objects: + objects.setdefault(txtUnscopedName, + (self.env.docname, ast)) + def add_target_and_index(self, ast, sig, signode): # general note: name must be lstrip(':')'ed, to remove "::" try: @@ -2445,23 +2482,7 @@ class CPPObject(ObjectDescription): if name not in objects: objects.setdefault(name, (self.env.docname, ast)) if ast.objectType == 'enumerator': - # find the parent, if it exists && is an enum - # && it's unscoped, - # then add the name to the parent scope - assert len(ast.prefixedName.names) > 0 - parentPrefixedAstName = ASTNestedName(ast.prefixedName.names[:-1]) - parentPrefixedName = text_type(parentPrefixedAstName).lstrip(':') - if parentPrefixedName in objects: - docname, parentAst = objects[parentPrefixedName] - if parentAst.objectType == 'enum' and not parentAst.scoped: - enumeratorName = ASTNestedName([ast.prefixedName.names[-1]]) - assert len(parentAst.prefixedName.names) > 0 - enumScope = ASTNestedName(parentAst.prefixedName.names[:-1]) - unscopedName = enumeratorName.prefix_nested_name(enumScope) - txtUnscopedName = text_type(unscopedName).lstrip(':') - if txtUnscopedName not in objects: - objects.setdefault(txtUnscopedName, - (self.env.docname, ast)) + self._add_enumerator_to_parent(ast, objects) # add the uninstantiated template if it doesn't exist uninstantiated = ast.prefixedName.get_name_no_last_template().lstrip(':') if uninstantiated != name and uninstantiated not in objects: diff --git a/sphinx/environment.py b/sphinx/environment.py index 11f395b43..47ebf7bd8 100644 --- a/sphinx/environment.py +++ b/sphinx/environment.py @@ -141,8 +141,6 @@ class SphinxFileInput(FileInput): def __init__(self, app, env, *args, **kwds): self.app = app self.env = env - # don't call sys.exit() on IOErrors - kwds['handle_io_errors'] = False kwds['error_handler'] = 'sphinx' # py3: handle error on open. FileInput.__init__(self, *args, **kwds) diff --git a/sphinx/ext/autosummary/__init__.py b/sphinx/ext/autosummary/__init__.py index 4fd44ac67..a53b125d5 100644 --- a/sphinx/ext/autosummary/__init__.py +++ b/sphinx/ext/autosummary/__init__.py @@ -276,7 +276,7 @@ class Autosummary(Directive): self.warn('failed to import object %s' % real_name) items.append((display_name, '', '', real_name)) continue - if not documenter.check_module(): + if documenter.options.members and not documenter.check_module(): continue # try to also get a source code analyzer for attribute docs diff --git a/sphinx/ext/napoleon/__init__.py b/sphinx/ext/napoleon/__init__.py index d96c66a76..59c1213c6 100644 --- a/sphinx/ext/napoleon/__init__.py +++ b/sphinx/ext/napoleon/__init__.py @@ -371,7 +371,7 @@ def _skip_member(app, what, name, obj, skip, options): cls = functools.reduce(getattr, mod_path, mod) else: cls = obj.__globals__[cls_path] - except: + except Exception: cls_is_owner = False else: cls_is_owner = (cls and hasattr(cls, name) and diff --git a/sphinx/ext/napoleon/docstring.py b/sphinx/ext/napoleon/docstring.py index 1ac7d869f..1cd32bcd0 100644 --- a/sphinx/ext/napoleon/docstring.py +++ b/sphinx/ext/napoleon/docstring.py @@ -23,21 +23,19 @@ from sphinx.util.pycompat import UnicodeMixin _directive_regex = re.compile(r'\.\. \S+::') -_google_untyped_arg_regex = re.compile(r'(.+)\s*(? 1 lines = [] - for _name, _type, _desc in fields: - sep = _desc and ' -- ' or '' - if _name: - if ' ' in _name: - _name = '**%s**' % _name + for _, _type, _desc in fields: + _desc = self._strip_empty(_desc) + has_desc = any(_desc) + separator = has_desc and ' -- ' or '' + if _type: + has_refs = '`' in _type or ':' in _type + has_space = any(c in ' \t\n\v\f ' for c in _type) + + if not has_refs and not has_space: + _type = ':exc:`%s`%s' % (_type, separator) + elif has_desc and has_space: + _type = '*%s*%s' % (_type, separator) else: - _name = ':exc:`%s`' % _name - if _type: - if '`' in _type: - field = ['%s (%s)%s' % (_name, _type, sep)] - else: - field = ['%s (*%s*)%s' % (_name, _type, sep)] + _type = '%s%s' % (_type, separator) + + if has_desc: + field = [_type + _desc[0]] + _desc[1:] else: - field = ['%s%s' % (_name, sep)] - elif _type: - if '`' in _type: - field = ['%s%s' % (_type, sep)] - else: - field = ['*%s*%s' % (_type, sep)] + field = [_type] else: - field = [] - field = field + _desc + field = _desc if multi: if lines: lines.extend(self._format_block(padding + ' * ', field)) @@ -545,6 +563,8 @@ class GoogleDocstring(UnicodeMixin): lines.extend(self._format_block(field_type + ' * ', field)) else: lines.extend(self._format_block(field_type + ' ', field)) + if lines and lines[-1]: + lines.append('') return lines def _parse_references_section(self, section): @@ -574,8 +594,9 @@ class GoogleDocstring(UnicodeMixin): else: lines.extend(self._format_block(':returns: ', field)) if _type and use_rtype: - lines.append(':rtype: %s' % _type) - lines.append('') + lines.extend([':rtype: %s' % _type, '']) + if lines and lines[-1]: + lines.append('') return lines def _parse_see_also_section(self, section): @@ -593,6 +614,27 @@ class GoogleDocstring(UnicodeMixin): fields = self._consume_returns_section() return self._format_fields('Yields', fields) + def _partition_field_on_colon(self, line): + before_colon = [] + after_colon = [] + colon = '' + found_colon = False + for i, source in enumerate(_xref_regex.split(line)): + if found_colon: + after_colon.append(source) + else: + if (i % 2) == 0 and ":" in source: + found_colon = True + before, colon, after = source.partition(":") + before_colon.append(before) + after_colon.append(after) + else: + before_colon.append(source) + + return ("".join(before_colon).strip(), + colon, + "".join(after_colon).strip()) + def _strip_empty(self, lines): if lines: start = -1 @@ -614,16 +656,14 @@ class GoogleDocstring(UnicodeMixin): class NumpyDocstring(GoogleDocstring): - """Parse NumPy style docstrings. - - Convert NumPy style docstrings to reStructuredText. + """Convert NumPy style docstrings to reStructuredText. Parameters ---------- - docstring : str or list of str + docstring : str or List[str] The docstring to parse, given either as a string or split into individual lines. - config : sphinx.ext.napoleon.Config or sphinx.config.Config, optional + config : Optional[sphinx.ext.napoleon.Config or sphinx.config.Config] The configuration settings to use. If not given, defaults to the config object on `app`; or if `app` is not given defaults to the a new `sphinx.ext.napoleon.Config` object. @@ -634,17 +674,17 @@ class NumpyDocstring(GoogleDocstring): Other Parameters ---------------- - app : sphinx.application.Sphinx, optional + app : Optional[sphinx.application.Sphinx] Application object representing the Sphinx process. - what : str, optional + what : Optional[str] A string specifying the type of the object to which the docstring belongs. Valid values: "module", "class", "exception", "function", "method", "attribute". - name : str, optional + name : Optional[str] The fully qualified name of the object. obj : module, class, exception, function, method, or attribute The object to which the docstring belongs. - options : sphinx.ext.autodoc.Options, optional + options : Optional[sphinx.ext.autodoc.Options] The options given to the directive: an object with attributes inherited_members, undoc_members, show_inheritance and noindex that are True if the flag option of same name was given to the auto @@ -706,7 +746,7 @@ class NumpyDocstring(GoogleDocstring): Returns ------- - list of str + List[str] The lines of the docstring in a list. """ @@ -719,9 +759,7 @@ class NumpyDocstring(GoogleDocstring): def _consume_field(self, parse_type=True, prefer_type=False): line = next(self._line_iter) if parse_type: - _name, _, _type = line.partition(':') - if not _name: - _type = line + _name, _, _type = self._partition_field_on_colon(line) else: _name, _type = line, '' _name, _type = _name.strip(), _type.strip() diff --git a/sphinx/highlighting.py b/sphinx/highlighting.py index dd40bc308..6f22993c2 100644 --- a/sphinx/highlighting.py +++ b/sphinx/highlighting.py @@ -164,7 +164,7 @@ class PygmentsBridge(object): lexer = lexers[lang] else: try: - lexer = lexers[lang] = get_lexer_by_name(lang, **opts or {}) + lexer = lexers[lang] = get_lexer_by_name(lang, **(opts or {})) except ClassNotFound: if warn: warn('Pygments lexer name %r is not known' % lang) diff --git a/sphinx/search/__init__.py b/sphinx/search/__init__.py index 8126c9aee..e248088ab 100644 --- a/sphinx/search/__init__.py +++ b/sphinx/search/__init__.py @@ -13,6 +13,7 @@ import re from six import iteritems, itervalues, text_type, string_types from six.moves import cPickle as pickle from docutils.nodes import raw, comment, title, Text, NodeVisitor, SkipNode +from os import path from sphinx.util import jsdump, rpartition @@ -42,6 +43,7 @@ class SearchLanguage(object): lang = None language_name = None stopwords = set() + js_stemmer_rawcode = None js_stemmer_code = """ /** * Dummy stemmer for languages without stemming rules. @@ -377,3 +379,11 @@ class IndexBuilder(object): search_language_stop_words = jsdump.dumps(sorted(self.lang.stopwords)), search_scorer_tool = self.js_scorer_code, ) + + def get_js_stemmer_rawcode(self): + if self.lang.js_stemmer_rawcode: + return path.join( + path.dirname(path.abspath(__file__)), + 'non-minified-js', + self.lang.js_stemmer_rawcode + ) diff --git a/sphinx/search/da.py b/sphinx/search/da.py index 755122b56..b3611152a 100644 --- a/sphinx/search/da.py +++ b/sphinx/search/da.py @@ -120,6 +120,7 @@ var Stemmer = JSX.require("src/danish-stemmer.jsx").DanishStemmer; class SearchDanish(SearchLanguage): lang = 'da' language_name = 'Danish' + js_stemmer_rawcode = 'danish-stemmer.js' js_stemmer_code = js_stemmer stopwords = danish_stopwords diff --git a/sphinx/search/de.py b/sphinx/search/de.py index b46c7dd33..89cbe3de5 100644 --- a/sphinx/search/de.py +++ b/sphinx/search/de.py @@ -303,6 +303,7 @@ var Stemmer = JSX.require("src/german-stemmer.jsx").GermanStemmer; class SearchGerman(SearchLanguage): lang = 'de' language_name = 'German' + js_stemmer_rawcode = 'german-stemmer.js' js_stemmer_code = js_stemmer stopwords = german_stopwords diff --git a/sphinx/search/es.py b/sphinx/search/es.py index 659d00fb1..2777811d8 100644 --- a/sphinx/search/es.py +++ b/sphinx/search/es.py @@ -363,6 +363,7 @@ var Stemmer = JSX.require("src/spanish-stemmer.jsx").SpanishStemmer; class SearchSpanish(SearchLanguage): lang = 'es' language_name = 'Spanish' + js_stemmer_rawcode = 'spanish-stemmer.js' js_stemmer_code = js_stemmer stopwords = spanish_stopwords diff --git a/sphinx/search/fi.py b/sphinx/search/fi.py index 7350d88f3..ca63b0021 100644 --- a/sphinx/search/fi.py +++ b/sphinx/search/fi.py @@ -113,6 +113,7 @@ var Stemmer = JSX.require("src/finnish-stemmer.jsx").FinnishStemmer; class SearchFinnish(SearchLanguage): lang = 'fi' language_name = 'Finnish' + js_stemmer_rawcode = 'finnish-stemmer.js' js_stemmer_code = js_stemmer stopwords = finnish_stopwords diff --git a/sphinx/search/fr.py b/sphinx/search/fr.py index 9ae61339d..2cf70357e 100644 --- a/sphinx/search/fr.py +++ b/sphinx/search/fr.py @@ -199,6 +199,7 @@ var Stemmer = JSX.require("src/french-stemmer.jsx").FrenchStemmer; class SearchFrench(SearchLanguage): lang = 'fr' language_name = 'French' + js_stemmer_rawcode = 'french-stemmer.js' js_stemmer_code = js_stemmer stopwords = french_stopwords diff --git a/sphinx/search/hu.py b/sphinx/search/hu.py index 003a98ae6..85d15bac7 100644 --- a/sphinx/search/hu.py +++ b/sphinx/search/hu.py @@ -227,6 +227,7 @@ var Stemmer = JSX.require("src/hungarian-stemmer.jsx").HungarianStemmer; class SearchHungarian(SearchLanguage): lang = 'hu' language_name = 'Hungarian' + js_stemmer_rawcode = 'hungarian-stemmer.js' js_stemmer_code = js_stemmer stopwords = hungarian_stopwords diff --git a/sphinx/search/it.py b/sphinx/search/it.py index 1b8d51ece..b613ce33c 100644 --- a/sphinx/search/it.py +++ b/sphinx/search/it.py @@ -316,6 +316,7 @@ var Stemmer = JSX.require("src/italian-stemmer.jsx").ItalianStemmer; class SearchItalian(SearchLanguage): lang = 'it' language_name = 'Italian' + js_stemmer_rawcode = 'italian-stemmer.js' js_stemmer_code = js_stemmer stopwords = italian_stopwords diff --git a/sphinx/search/nl.py b/sphinx/search/nl.py index f0d612c0b..028a980ee 100644 --- a/sphinx/search/nl.py +++ b/sphinx/search/nl.py @@ -120,6 +120,7 @@ var Stemmer = JSX.require("src/dutch-stemmer.jsx").DutchStemmer; class SearchDutch(SearchLanguage): lang = 'nl' language_name = 'Dutch' + js_stemmer_rawcode = 'dutch-stemmer.js' js_stemmer_code = js_stemmer stopwords = danish_stopwords diff --git a/sphinx/search/no.py b/sphinx/search/no.py index b72b4ea05..32f7b38c5 100644 --- a/sphinx/search/no.py +++ b/sphinx/search/no.py @@ -202,6 +202,7 @@ var Stemmer = JSX.require("src/norwegian-stemmer.jsx").NorwegianStemmer; class SearchNorwegian(SearchLanguage): lang = 'no' language_name = 'Norwegian' + js_stemmer_rawcode = 'norwegian-stemmer.js' js_stemmer_code = js_stemmer stopwords = norwegian_stopwords diff --git a/sphinx/search/non-minified-js/danish-stemmer.js b/sphinx/search/non-minified-js/danish-stemmer.js new file mode 100644 index 000000000..f6309327f --- /dev/null +++ b/sphinx/search/non-minified-js/danish-stemmer.js @@ -0,0 +1,1873 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function DanishStemmer() { + BaseStemmer.call(this); + this.I_x = 0; + this.I_p1 = 0; + this.S_ch = ""; +}; + +$__jsx_extend([DanishStemmer], BaseStemmer); +DanishStemmer.prototype.copy_from$LDanishStemmer$ = function (other) { + this.I_x = other.I_x; + this.I_p1 = other.I_p1; + this.S_ch = other.S_ch; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +DanishStemmer.prototype.copy_from = DanishStemmer.prototype.copy_from$LDanishStemmer$; + +DanishStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_2; + var c; + var lab1; + var lab3; + var lab4; + var cursor$0; + var limit$0; + var cursor$1; + var cursor$2; + var $__jsx_postinc_t; + this.I_p1 = limit$0 = this.limit; + v_1 = cursor$0 = this.cursor; + c = (cursor$0 + 3 | 0); + if (0 > c || c > limit$0) { + return false; + } + cursor$2 = this.cursor = c; + this.I_x = cursor$2; + this.cursor = v_1; +golab0: + while (true) { + v_2 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, DanishStemmer.g_v, 97, 248)) { + break lab1; + } + this.cursor = v_2; + break golab0; + } + cursor$1 = this.cursor = v_2; + if (cursor$1 >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, DanishStemmer.g_v, 97, 248)) { + break lab3; + } + break golab2; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! (this.I_p1 < this.I_x)) { + break lab4; + } + this.I_p1 = this.I_x; + } + return true; +}; + +DanishStemmer.prototype.r_mark_regions = DanishStemmer.prototype.r_mark_regions$; + +function DanishStemmer$r_mark_regions$LDanishStemmer$($this) { + var v_1; + var v_2; + var c; + var lab1; + var lab3; + var lab4; + var cursor$0; + var limit$0; + var cursor$1; + var cursor$2; + var $__jsx_postinc_t; + $this.I_p1 = limit$0 = $this.limit; + v_1 = cursor$0 = $this.cursor; + c = (cursor$0 + 3 | 0); + if (0 > c || c > limit$0) { + return false; + } + cursor$2 = $this.cursor = c; + $this.I_x = cursor$2; + $this.cursor = v_1; +golab0: + while (true) { + v_2 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, DanishStemmer.g_v, 97, 248)) { + break lab1; + } + $this.cursor = v_2; + break golab0; + } + cursor$1 = $this.cursor = v_2; + if (cursor$1 >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, DanishStemmer.g_v, 97, 248)) { + break lab3; + } + break golab2; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! ($this.I_p1 < $this.I_x)) { + break lab4; + } + $this.I_p1 = $this.I_x; + } + return true; +}; + +DanishStemmer.r_mark_regions$LDanishStemmer$ = DanishStemmer$r_mark_regions$LDanishStemmer$; + +DanishStemmer.prototype.r_main_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, DanishStemmer.a_0, 32); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, DanishStemmer.g_s_ending, 97, 229)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +DanishStemmer.prototype.r_main_suffix = DanishStemmer.prototype.r_main_suffix$; + +function DanishStemmer$r_main_suffix$LDanishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, DanishStemmer.a_0, 32); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, DanishStemmer.g_s_ending, 97, 229)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +DanishStemmer.r_main_suffix$LDanishStemmer$ = DanishStemmer$r_main_suffix$LDanishStemmer$; + +DanishStemmer.prototype.r_consonant_pair$ = function () { + var v_1; + var v_2; + var v_3; + var limit$0; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var limit_backward$0; + var $__jsx_postinc_t; + v_1 = (((limit$0 = this.limit) - (cursor$0 = this.cursor)) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_3 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_2) | 0); + this.ket = cursor$2; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, DanishStemmer.a_1, 4) === 0) { + this.limit_backward = v_3; + return false; + } + this.bra = this.cursor; + limit_backward$0 = this.limit_backward = v_3; + cursor$3 = this.cursor = ((this.limit - v_1) | 0); + if (cursor$3 <= limit_backward$0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +DanishStemmer.prototype.r_consonant_pair = DanishStemmer.prototype.r_consonant_pair$; + +function DanishStemmer$r_consonant_pair$LDanishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var limit$0; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var limit_backward$0; + var $__jsx_postinc_t; + v_1 = (((limit$0 = $this.limit) - (cursor$0 = $this.cursor)) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_3 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_2) | 0); + $this.ket = cursor$2; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, DanishStemmer.a_1, 4) === 0) { + $this.limit_backward = v_3; + return false; + } + $this.bra = $this.cursor; + limit_backward$0 = $this.limit_backward = v_3; + cursor$3 = $this.cursor = (($this.limit - v_1) | 0); + if (cursor$3 <= limit_backward$0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +DanishStemmer.r_consonant_pair$LDanishStemmer$ = DanishStemmer$r_consonant_pair$LDanishStemmer$; + +DanishStemmer.prototype.r_other_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var lab0; + var lab1; + var limit$0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "st")) { + break lab0; + } + this.bra = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ig")) { + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + cursor$0 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_3 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_2) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, DanishStemmer.a_2, 5); + if (among_var === 0) { + this.limit_backward = v_3; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_3; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_4 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! DanishStemmer$r_consonant_pair$LDanishStemmer$(this)) { + break lab1; + } + } + this.cursor = ((this.limit - v_4) | 0); + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "l\u00F8s")) { + return false; + } + break; + } + return true; +}; + +DanishStemmer.prototype.r_other_suffix = DanishStemmer.prototype.r_other_suffix$; + +function DanishStemmer$r_other_suffix$LDanishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var lab0; + var lab1; + var limit$0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "st")) { + break lab0; + } + $this.bra = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ig")) { + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + cursor$0 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_3 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_2) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, DanishStemmer.a_2, 5); + if (among_var === 0) { + $this.limit_backward = v_3; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_3; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_4 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! DanishStemmer$r_consonant_pair$LDanishStemmer$($this)) { + break lab1; + } + } + $this.cursor = (($this.limit - v_4) | 0); + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "l\u00F8s")) { + return false; + } + break; + } + return true; +}; + +DanishStemmer.r_other_suffix$LDanishStemmer$ = DanishStemmer$r_other_suffix$LDanishStemmer$; + +DanishStemmer.prototype.r_undouble$ = function () { + var v_1; + var v_2; + var s$0; + var cursor$0; + var cursor$1; + var cursor$2; + var S_ch$0; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, DanishStemmer.g_v, 97, 248)) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + S_ch$0 = this.S_ch = BaseStemmer$slice_to$LBaseStemmer$S(this, this.S_ch); + if (S_ch$0 === '') { + return false; + } + this.limit_backward = v_2; + return (! (s$0 = this.S_ch, BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s$0.length, s$0)) ? false : ! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +DanishStemmer.prototype.r_undouble = DanishStemmer.prototype.r_undouble$; + +function DanishStemmer$r_undouble$LDanishStemmer$($this) { + var v_1; + var v_2; + var s$0; + var cursor$0; + var cursor$1; + var cursor$2; + var S_ch$0; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, DanishStemmer.g_v, 97, 248)) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + S_ch$0 = $this.S_ch = BaseStemmer$slice_to$LBaseStemmer$S($this, $this.S_ch); + if (S_ch$0 === '') { + return false; + } + $this.limit_backward = v_2; + return (! (s$0 = $this.S_ch, BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s$0.length, s$0)) ? false : ! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +DanishStemmer.r_undouble$LDanishStemmer$ = DanishStemmer$r_undouble$LDanishStemmer$; + +DanishStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var limit$2; + var cursor$3; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! DanishStemmer$r_mark_regions$LDanishStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + this.limit_backward = cursor$0; + cursor$1 = this.cursor = limit$0 = this.limit; + v_2 = ((limit$0 - cursor$1) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! DanishStemmer$r_main_suffix$LDanishStemmer$(this)) { + break lab1; + } + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_2) | 0); + v_3 = ((limit$1 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! DanishStemmer$r_consonant_pair$LDanishStemmer$(this)) { + break lab2; + } + } + cursor$3 = this.cursor = (((limit$2 = this.limit) - v_3) | 0); + v_4 = ((limit$2 - cursor$3) | 0); + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + if (! DanishStemmer$r_other_suffix$LDanishStemmer$(this)) { + break lab3; + } + } + this.cursor = ((this.limit - v_4) | 0); + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! DanishStemmer$r_undouble$LDanishStemmer$(this)) { + break lab4; + } + } + this.cursor = this.limit_backward; + return true; +}; + +DanishStemmer.prototype.stem = DanishStemmer.prototype.stem$; + +DanishStemmer.prototype.equals$X = function (o) { + return o instanceof DanishStemmer; +}; + +DanishStemmer.prototype.equals = DanishStemmer.prototype.equals$X; + +function DanishStemmer$equals$LDanishStemmer$X($this, o) { + return o instanceof DanishStemmer; +}; + +DanishStemmer.equals$LDanishStemmer$X = DanishStemmer$equals$LDanishStemmer$X; + +DanishStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "DanishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +DanishStemmer.prototype.hashCode = DanishStemmer.prototype.hashCode$; + +function DanishStemmer$hashCode$LDanishStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "DanishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +DanishStemmer.hashCode$LDanishStemmer$ = DanishStemmer$hashCode$LDanishStemmer$; + +DanishStemmer.serialVersionUID = 1; +$__jsx_lazy_init(DanishStemmer, "methodObject", function () { + return new DanishStemmer(); +}); +$__jsx_lazy_init(DanishStemmer, "a_0", function () { + return [ new Among("hed", -1, 1), new Among("ethed", 0, 1), new Among("ered", -1, 1), new Among("e", -1, 1), new Among("erede", 3, 1), new Among("ende", 3, 1), new Among("erende", 5, 1), new Among("ene", 3, 1), new Among("erne", 3, 1), new Among("ere", 3, 1), new Among("en", -1, 1), new Among("heden", 10, 1), new Among("eren", 10, 1), new Among("er", -1, 1), new Among("heder", 13, 1), new Among("erer", 13, 1), new Among("s", -1, 2), new Among("heds", 16, 1), new Among("es", 16, 1), new Among("endes", 18, 1), new Among("erendes", 19, 1), new Among("enes", 18, 1), new Among("ernes", 18, 1), new Among("eres", 18, 1), new Among("ens", 16, 1), new Among("hedens", 24, 1), new Among("erens", 24, 1), new Among("ers", 16, 1), new Among("ets", 16, 1), new Among("erets", 28, 1), new Among("et", -1, 1), new Among("eret", 30, 1) ]; +}); +$__jsx_lazy_init(DanishStemmer, "a_1", function () { + return [ new Among("gd", -1, -1), new Among("dt", -1, -1), new Among("gt", -1, -1), new Among("kt", -1, -1) ]; +}); +$__jsx_lazy_init(DanishStemmer, "a_2", function () { + return [ new Among("ig", -1, 1), new Among("lig", 0, 1), new Among("elig", 1, 1), new Among("els", -1, 1), new Among("l\u00F8st", -1, 2) ]; +}); +DanishStemmer.g_v = [ 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 128 ]; +DanishStemmer.g_s_ending = [ 239, 254, 42, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/danish-stemmer.jsx": { + DanishStemmer: DanishStemmer, + DanishStemmer$: DanishStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var DanishStemmer = JSX.require("src/danish-stemmer.jsx").DanishStemmer; diff --git a/sphinx/search/non-minified-js/dutch-stemmer.js b/sphinx/search/non-minified-js/dutch-stemmer.js new file mode 100644 index 000000000..15c053a8d --- /dev/null +++ b/sphinx/search/non-minified-js/dutch-stemmer.js @@ -0,0 +1,2637 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function DutchStemmer() { + BaseStemmer.call(this); + this.I_p2 = 0; + this.I_p1 = 0; + this.B_e_found = false; +}; + +$__jsx_extend([DutchStemmer], BaseStemmer); +DutchStemmer.prototype.copy_from$LDutchStemmer$ = function (other) { + this.I_p2 = other.I_p2; + this.I_p1 = other.I_p1; + this.B_e_found = other.B_e_found; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +DutchStemmer.prototype.copy_from = DutchStemmer.prototype.copy_from$LDutchStemmer$; + +DutchStemmer.prototype.r_prelude$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab1; + var lab2; + var lab4; + var lab6; + var lab7; + var lab8; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + v_1 = this.cursor; +replab0: + while (true) { + v_2 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, DutchStemmer.a_0, 11); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "o")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 6: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_2; + break replab0; + } + cursor$0 = this.cursor = v_1; + v_3 = cursor$0; + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + this.bra = this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "y")) { + this.cursor = v_3; + break lab2; + } + this.ket = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "Y")) { + return false; + } + } +replab3: + while (true) { + v_4 = this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + golab5: + while (true) { + v_5 = this.cursor; + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, DutchStemmer.g_v, 97, 232)) { + break lab6; + } + this.bra = this.cursor; + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + v_6 = this.cursor; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "i")) { + break lab8; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, DutchStemmer.g_v, 97, 232)) { + break lab8; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "I")) { + return false; + } + break lab7; + } + this.cursor = v_6; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "y")) { + break lab6; + } + this.ket = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "Y")) { + return false; + } + } + this.cursor = v_5; + break golab5; + } + cursor$1 = this.cursor = v_5; + if (cursor$1 >= this.limit) { + break lab4; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab3; + } + this.cursor = v_4; + break replab3; + } + return true; +}; + +DutchStemmer.prototype.r_prelude = DutchStemmer.prototype.r_prelude$; + +function DutchStemmer$r_prelude$LDutchStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab1; + var lab2; + var lab4; + var lab6; + var lab7; + var lab8; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + v_1 = $this.cursor; +replab0: + while (true) { + v_2 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, DutchStemmer.a_0, 11); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "o")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 6: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_2; + break replab0; + } + cursor$0 = $this.cursor = v_1; + v_3 = cursor$0; + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + $this.bra = $this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "y")) { + $this.cursor = v_3; + break lab2; + } + $this.ket = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "Y")) { + return false; + } + } +replab3: + while (true) { + v_4 = $this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + golab5: + while (true) { + v_5 = $this.cursor; + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, DutchStemmer.g_v, 97, 232)) { + break lab6; + } + $this.bra = $this.cursor; + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + v_6 = $this.cursor; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "i")) { + break lab8; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, DutchStemmer.g_v, 97, 232)) { + break lab8; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "I")) { + return false; + } + break lab7; + } + $this.cursor = v_6; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "y")) { + break lab6; + } + $this.ket = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "Y")) { + return false; + } + } + $this.cursor = v_5; + break golab5; + } + cursor$1 = $this.cursor = v_5; + if (cursor$1 >= $this.limit) { + break lab4; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab3; + } + $this.cursor = v_4; + break replab3; + } + return true; +}; + +DutchStemmer.r_prelude$LDutchStemmer$ = DutchStemmer$r_prelude$LDutchStemmer$; + +DutchStemmer.prototype.r_mark_regions$ = function () { + var lab1; + var lab3; + var lab4; + var lab6; + var lab8; + var limit$0; + var $__jsx_postinc_t; + this.I_p1 = limit$0 = this.limit; + this.I_p2 = limit$0; +golab0: + while (true) { + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, DutchStemmer.g_v, 97, 232)) { + break lab1; + } + break golab0; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, DutchStemmer.g_v, 97, 232)) { + break lab3; + } + break golab2; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! (this.I_p1 < 3)) { + break lab4; + } + this.I_p1 = 3; + } +golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, DutchStemmer.g_v, 97, 232)) { + break lab6; + } + break golab5; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, DutchStemmer.g_v, 97, 232)) { + break lab8; + } + break golab7; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + return true; +}; + +DutchStemmer.prototype.r_mark_regions = DutchStemmer.prototype.r_mark_regions$; + +function DutchStemmer$r_mark_regions$LDutchStemmer$($this) { + var lab1; + var lab3; + var lab4; + var lab6; + var lab8; + var limit$0; + var $__jsx_postinc_t; + $this.I_p1 = limit$0 = $this.limit; + $this.I_p2 = limit$0; +golab0: + while (true) { + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, DutchStemmer.g_v, 97, 232)) { + break lab1; + } + break golab0; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, DutchStemmer.g_v, 97, 232)) { + break lab3; + } + break golab2; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! ($this.I_p1 < 3)) { + break lab4; + } + $this.I_p1 = 3; + } +golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, DutchStemmer.g_v, 97, 232)) { + break lab6; + } + break golab5; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, DutchStemmer.g_v, 97, 232)) { + break lab8; + } + break golab7; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p2 = $this.cursor; + return true; +}; + +DutchStemmer.r_mark_regions$LDutchStemmer$ = DutchStemmer$r_mark_regions$LDutchStemmer$; + +DutchStemmer.prototype.r_postlude$ = function () { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, DutchStemmer.a_1, 3); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "y")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 3: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +DutchStemmer.prototype.r_postlude = DutchStemmer.prototype.r_postlude$; + +function DutchStemmer$r_postlude$LDutchStemmer$($this) { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, DutchStemmer.a_1, 3); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "y")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 3: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +DutchStemmer.r_postlude$LDutchStemmer$ = DutchStemmer$r_postlude$LDutchStemmer$; + +DutchStemmer.prototype.r_R1$ = function () { + return (! (this.I_p1 <= this.cursor) ? false : true); +}; + +DutchStemmer.prototype.r_R1 = DutchStemmer.prototype.r_R1$; + +function DutchStemmer$r_R1$LDutchStemmer$($this) { + return (! ($this.I_p1 <= $this.cursor) ? false : true); +}; + +DutchStemmer.r_R1$LDutchStemmer$ = DutchStemmer$r_R1$LDutchStemmer$; + +DutchStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +DutchStemmer.prototype.r_R2 = DutchStemmer.prototype.r_R2$; + +function DutchStemmer$r_R2$LDutchStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +DutchStemmer.r_R2$LDutchStemmer$ = DutchStemmer$r_R2$LDutchStemmer$; + +DutchStemmer.prototype.r_undouble$ = function () { + var v_1; + var cursor$0; + var $__jsx_postinc_t; + v_1 = ((this.limit - this.cursor) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, DutchStemmer.a_2, 3) === 0) { + return false; + } + cursor$0 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$0; + if (cursor$0 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +DutchStemmer.prototype.r_undouble = DutchStemmer.prototype.r_undouble$; + +function DutchStemmer$r_undouble$LDutchStemmer$($this) { + var v_1; + var cursor$0; + var $__jsx_postinc_t; + v_1 = (($this.limit - $this.cursor) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, DutchStemmer.a_2, 3) === 0) { + return false; + } + cursor$0 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$0; + if (cursor$0 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +DutchStemmer.r_undouble$LDutchStemmer$ = DutchStemmer$r_undouble$LDutchStemmer$; + +DutchStemmer.prototype.r_e_ending$ = function () { + var v_1; + var cursor$0; + this.B_e_found = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + v_1 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, DutchStemmer.g_v, 97, 232)) { + return false; + } + this.cursor = ((this.limit - v_1) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.B_e_found = true; + return (! DutchStemmer$r_undouble$LDutchStemmer$(this) ? false : true); +}; + +DutchStemmer.prototype.r_e_ending = DutchStemmer.prototype.r_e_ending$; + +function DutchStemmer$r_e_ending$LDutchStemmer$($this) { + var v_1; + var cursor$0; + $this.B_e_found = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + v_1 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, DutchStemmer.g_v, 97, 232)) { + return false; + } + $this.cursor = (($this.limit - v_1) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.B_e_found = true; + return (! DutchStemmer$r_undouble$LDutchStemmer$($this) ? false : true); +}; + +DutchStemmer.r_e_ending$LDutchStemmer$ = DutchStemmer$r_e_ending$LDutchStemmer$; + +DutchStemmer.prototype.r_en_ending$ = function () { + var v_1; + var v_2; + var lab0; + var limit$0; + var cursor$0; + if (! (! (this.I_p1 <= this.cursor) ? false : true)) { + return false; + } + v_1 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, DutchStemmer.g_v, 97, 232)) { + return false; + } + cursor$0 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 3, "gem")) { + break lab0; + } + return false; + } + this.cursor = ((this.limit - v_2) | 0); + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : ! DutchStemmer$r_undouble$LDutchStemmer$(this) ? false : true); +}; + +DutchStemmer.prototype.r_en_ending = DutchStemmer.prototype.r_en_ending$; + +function DutchStemmer$r_en_ending$LDutchStemmer$($this) { + var v_1; + var v_2; + var lab0; + var limit$0; + var cursor$0; + if (! (! ($this.I_p1 <= $this.cursor) ? false : true)) { + return false; + } + v_1 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, DutchStemmer.g_v, 97, 232)) { + return false; + } + cursor$0 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 3, "gem")) { + break lab0; + } + return false; + } + $this.cursor = (($this.limit - v_2) | 0); + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : ! DutchStemmer$r_undouble$LDutchStemmer$($this) ? false : true); +}; + +DutchStemmer.r_en_ending$LDutchStemmer$ = DutchStemmer$r_en_ending$LDutchStemmer$; + +DutchStemmer.prototype.r_standard_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var limit$0; + var cursor$0; + var cursor$1; + var limit$1; + var cursor$2; + var cursor$3; + var limit$2; + var cursor$4; + var cursor$5; + var limit$3; + var cursor$6; + var $__jsx_postinc_t; + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, DutchStemmer.a_3, 5); + if (among_var === 0) { + break lab0; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + break lab0; + case 1: + if (! (! (this.I_p1 <= this.cursor) ? false : true)) { + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "heid")) { + return false; + } + break; + case 2: + if (! DutchStemmer$r_en_ending$LDutchStemmer$(this)) { + break lab0; + } + break; + case 3: + if (! (! (this.I_p1 <= this.cursor) ? false : true)) { + break lab0; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, DutchStemmer.g_v_j, 97, 232)) { + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + cursor$0 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! DutchStemmer$r_e_ending$LDutchStemmer$(this)) { + break lab1; + } + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_2) | 0); + v_3 = ((limit$1 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 4, "heid")) { + break lab2; + } + this.bra = cursor$1 = this.cursor; + if (! (! (this.I_p2 <= cursor$1) ? false : true)) { + break lab2; + } + v_4 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "c")) { + break lab3; + } + break lab2; + } + this.cursor = ((this.limit - v_4) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "en")) { + break lab2; + } + this.bra = this.cursor; + if (! DutchStemmer$r_en_ending$LDutchStemmer$(this)) { + break lab2; + } + } + cursor$4 = this.cursor = (((limit$2 = this.limit) - v_3) | 0); + v_5 = ((limit$2 - cursor$4) | 0); + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, DutchStemmer.a_4, 6); + if (among_var === 0) { + break lab4; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + break lab4; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + v_6 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ig")) { + break lab6; + } + this.bra = cursor$3 = this.cursor; + if (! (! (this.I_p2 <= cursor$3) ? false : true)) { + break lab6; + } + v_7 = ((this.limit - this.cursor) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + break lab7; + } + break lab6; + } + this.cursor = ((this.limit - v_7) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab5; + } + this.cursor = ((this.limit - v_6) | 0); + if (! DutchStemmer$r_undouble$LDutchStemmer$(this)) { + break lab4; + } + } + break; + case 2: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab4; + } + v_8 = ((this.limit - this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + break lab8; + } + break lab4; + } + this.cursor = ((this.limit - v_8) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 3: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! DutchStemmer$r_e_ending$LDutchStemmer$(this)) { + break lab4; + } + break; + case 4: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 5: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab4; + } + if (! this.B_e_found) { + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + cursor$6 = this.cursor = (((limit$3 = this.limit) - v_5) | 0); + v_9 = ((limit$3 - cursor$6) | 0); + lab9 = true; +lab9: + while (lab9 === true) { + lab9 = false; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, DutchStemmer.g_v_I, 73, 232)) { + break lab9; + } + v_10 = ((this.limit - this.cursor) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, DutchStemmer.a_5, 4) === 0) { + break lab9; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, DutchStemmer.g_v, 97, 232)) { + break lab9; + } + cursor$5 = this.cursor = ((this.limit - v_10) | 0); + this.ket = cursor$5; + if (cursor$5 <= this.limit_backward) { + break lab9; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + this.cursor = ((this.limit - v_9) | 0); + return true; +}; + +DutchStemmer.prototype.r_standard_suffix = DutchStemmer.prototype.r_standard_suffix$; + +function DutchStemmer$r_standard_suffix$LDutchStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var limit$0; + var cursor$0; + var cursor$1; + var limit$1; + var cursor$2; + var cursor$3; + var limit$2; + var cursor$4; + var cursor$5; + var limit$3; + var cursor$6; + var $__jsx_postinc_t; + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, DutchStemmer.a_3, 5); + if (among_var === 0) { + break lab0; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + break lab0; + case 1: + if (! (! ($this.I_p1 <= $this.cursor) ? false : true)) { + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "heid")) { + return false; + } + break; + case 2: + if (! DutchStemmer$r_en_ending$LDutchStemmer$($this)) { + break lab0; + } + break; + case 3: + if (! (! ($this.I_p1 <= $this.cursor) ? false : true)) { + break lab0; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, DutchStemmer.g_v_j, 97, 232)) { + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + cursor$0 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! DutchStemmer$r_e_ending$LDutchStemmer$($this)) { + break lab1; + } + } + cursor$2 = $this.cursor = (((limit$1 = $this.limit) - v_2) | 0); + v_3 = ((limit$1 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 4, "heid")) { + break lab2; + } + $this.bra = cursor$1 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$1) ? false : true)) { + break lab2; + } + v_4 = (($this.limit - $this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "c")) { + break lab3; + } + break lab2; + } + $this.cursor = (($this.limit - v_4) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "en")) { + break lab2; + } + $this.bra = $this.cursor; + if (! DutchStemmer$r_en_ending$LDutchStemmer$($this)) { + break lab2; + } + } + cursor$4 = $this.cursor = (((limit$2 = $this.limit) - v_3) | 0); + v_5 = ((limit$2 - cursor$4) | 0); + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, DutchStemmer.a_4, 6); + if (among_var === 0) { + break lab4; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + break lab4; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + v_6 = (($this.limit - $this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ig")) { + break lab6; + } + $this.bra = cursor$3 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$3) ? false : true)) { + break lab6; + } + v_7 = (($this.limit - $this.cursor) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + break lab7; + } + break lab6; + } + $this.cursor = (($this.limit - v_7) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab5; + } + $this.cursor = (($this.limit - v_6) | 0); + if (! DutchStemmer$r_undouble$LDutchStemmer$($this)) { + break lab4; + } + } + break; + case 2: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab4; + } + v_8 = (($this.limit - $this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + break lab8; + } + break lab4; + } + $this.cursor = (($this.limit - v_8) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 3: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! DutchStemmer$r_e_ending$LDutchStemmer$($this)) { + break lab4; + } + break; + case 4: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 5: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab4; + } + if (! $this.B_e_found) { + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + cursor$6 = $this.cursor = (((limit$3 = $this.limit) - v_5) | 0); + v_9 = ((limit$3 - cursor$6) | 0); + lab9 = true; +lab9: + while (lab9 === true) { + lab9 = false; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, DutchStemmer.g_v_I, 73, 232)) { + break lab9; + } + v_10 = (($this.limit - $this.cursor) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, DutchStemmer.a_5, 4) === 0) { + break lab9; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, DutchStemmer.g_v, 97, 232)) { + break lab9; + } + cursor$5 = $this.cursor = (($this.limit - v_10) | 0); + $this.ket = cursor$5; + if (cursor$5 <= $this.limit_backward) { + break lab9; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + $this.cursor = (($this.limit - v_9) | 0); + return true; +}; + +DutchStemmer.r_standard_suffix$LDutchStemmer$ = DutchStemmer$r_standard_suffix$LDutchStemmer$; + +DutchStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_4; + var lab0; + var lab1; + var lab2; + var lab3; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! DutchStemmer$r_prelude$LDutchStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + v_2 = cursor$0; + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! DutchStemmer$r_mark_regions$LDutchStemmer$(this)) { + break lab1; + } + } + cursor$1 = this.cursor = v_2; + this.limit_backward = cursor$1; + this.cursor = this.limit; + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! DutchStemmer$r_standard_suffix$LDutchStemmer$(this)) { + break lab2; + } + } + cursor$2 = this.cursor = this.limit_backward; + v_4 = cursor$2; + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + if (! DutchStemmer$r_postlude$LDutchStemmer$(this)) { + break lab3; + } + } + this.cursor = v_4; + return true; +}; + +DutchStemmer.prototype.stem = DutchStemmer.prototype.stem$; + +DutchStemmer.prototype.equals$X = function (o) { + return o instanceof DutchStemmer; +}; + +DutchStemmer.prototype.equals = DutchStemmer.prototype.equals$X; + +function DutchStemmer$equals$LDutchStemmer$X($this, o) { + return o instanceof DutchStemmer; +}; + +DutchStemmer.equals$LDutchStemmer$X = DutchStemmer$equals$LDutchStemmer$X; + +DutchStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "DutchStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +DutchStemmer.prototype.hashCode = DutchStemmer.prototype.hashCode$; + +function DutchStemmer$hashCode$LDutchStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "DutchStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +DutchStemmer.hashCode$LDutchStemmer$ = DutchStemmer$hashCode$LDutchStemmer$; + +DutchStemmer.serialVersionUID = 1; +$__jsx_lazy_init(DutchStemmer, "methodObject", function () { + return new DutchStemmer(); +}); +$__jsx_lazy_init(DutchStemmer, "a_0", function () { + return [ new Among("", -1, 6), new Among("\u00E1", 0, 1), new Among("\u00E4", 0, 1), new Among("\u00E9", 0, 2), new Among("\u00EB", 0, 2), new Among("\u00ED", 0, 3), new Among("\u00EF", 0, 3), new Among("\u00F3", 0, 4), new Among("\u00F6", 0, 4), new Among("\u00FA", 0, 5), new Among("\u00FC", 0, 5) ]; +}); +$__jsx_lazy_init(DutchStemmer, "a_1", function () { + return [ new Among("", -1, 3), new Among("I", 0, 2), new Among("Y", 0, 1) ]; +}); +$__jsx_lazy_init(DutchStemmer, "a_2", function () { + return [ new Among("dd", -1, -1), new Among("kk", -1, -1), new Among("tt", -1, -1) ]; +}); +$__jsx_lazy_init(DutchStemmer, "a_3", function () { + return [ new Among("ene", -1, 2), new Among("se", -1, 3), new Among("en", -1, 2), new Among("heden", 2, 1), new Among("s", -1, 3) ]; +}); +$__jsx_lazy_init(DutchStemmer, "a_4", function () { + return [ new Among("end", -1, 1), new Among("ig", -1, 2), new Among("ing", -1, 1), new Among("lijk", -1, 3), new Among("baar", -1, 4), new Among("bar", -1, 5) ]; +}); +$__jsx_lazy_init(DutchStemmer, "a_5", function () { + return [ new Among("aa", -1, -1), new Among("ee", -1, -1), new Among("oo", -1, -1), new Among("uu", -1, -1) ]; +}); +DutchStemmer.g_v = [ 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 ]; +DutchStemmer.g_v_I = [ 1, 0, 0, 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 ]; +DutchStemmer.g_v_j = [ 17, 67, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/dutch-stemmer.jsx": { + DutchStemmer: DutchStemmer, + DutchStemmer$: DutchStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var DutchStemmer = JSX.require("src/dutch-stemmer.jsx").DutchStemmer; diff --git a/sphinx/search/non-minified-js/finnish-stemmer.js b/sphinx/search/non-minified-js/finnish-stemmer.js new file mode 100644 index 000000000..210c3e13d --- /dev/null +++ b/sphinx/search/non-minified-js/finnish-stemmer.js @@ -0,0 +1,2812 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function FinnishStemmer() { + BaseStemmer.call(this); + this.B_ending_removed = false; + this.S_x = ""; + this.I_p2 = 0; + this.I_p1 = 0; +}; + +$__jsx_extend([FinnishStemmer], BaseStemmer); +FinnishStemmer.prototype.copy_from$LFinnishStemmer$ = function (other) { + this.B_ending_removed = other.B_ending_removed; + this.S_x = other.S_x; + this.I_p2 = other.I_p2; + this.I_p1 = other.I_p1; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +FinnishStemmer.prototype.copy_from = FinnishStemmer.prototype.copy_from$LFinnishStemmer$; + +FinnishStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_3; + var lab1; + var lab3; + var lab5; + var lab7; + var cursor$0; + var limit$0; + var cursor$1; + var $__jsx_postinc_t; + this.I_p1 = limit$0 = this.limit; + this.I_p2 = limit$0; +golab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FinnishStemmer.g_V1, 97, 246)) { + break lab1; + } + this.cursor = v_1; + break golab0; + } + cursor$0 = this.cursor = v_1; + if (cursor$0 >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, FinnishStemmer.g_V1, 97, 246)) { + break lab3; + } + break golab2; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; +golab4: + while (true) { + v_3 = this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FinnishStemmer.g_V1, 97, 246)) { + break lab5; + } + this.cursor = v_3; + break golab4; + } + cursor$1 = this.cursor = v_3; + if (cursor$1 >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab6: + while (true) { + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, FinnishStemmer.g_V1, 97, 246)) { + break lab7; + } + break golab6; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + return true; +}; + +FinnishStemmer.prototype.r_mark_regions = FinnishStemmer.prototype.r_mark_regions$; + +function FinnishStemmer$r_mark_regions$LFinnishStemmer$($this) { + var v_1; + var v_3; + var lab1; + var lab3; + var lab5; + var lab7; + var cursor$0; + var limit$0; + var cursor$1; + var $__jsx_postinc_t; + $this.I_p1 = limit$0 = $this.limit; + $this.I_p2 = limit$0; +golab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FinnishStemmer.g_V1, 97, 246)) { + break lab1; + } + $this.cursor = v_1; + break golab0; + } + cursor$0 = $this.cursor = v_1; + if (cursor$0 >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, FinnishStemmer.g_V1, 97, 246)) { + break lab3; + } + break golab2; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; +golab4: + while (true) { + v_3 = $this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FinnishStemmer.g_V1, 97, 246)) { + break lab5; + } + $this.cursor = v_3; + break golab4; + } + cursor$1 = $this.cursor = v_3; + if (cursor$1 >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab6: + while (true) { + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, FinnishStemmer.g_V1, 97, 246)) { + break lab7; + } + break golab6; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p2 = $this.cursor; + return true; +}; + +FinnishStemmer.r_mark_regions$LFinnishStemmer$ = FinnishStemmer$r_mark_regions$LFinnishStemmer$; + +FinnishStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +FinnishStemmer.prototype.r_R2 = FinnishStemmer.prototype.r_R2$; + +function FinnishStemmer$r_R2$LFinnishStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +FinnishStemmer.r_R2$LFinnishStemmer$ = FinnishStemmer$r_R2$LFinnishStemmer$; + +FinnishStemmer.prototype.r_particle_etc$ = function () { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_0, 10); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, FinnishStemmer.g_particle_end, 97, 246)) { + return false; + } + break; + case 2: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +FinnishStemmer.prototype.r_particle_etc = FinnishStemmer.prototype.r_particle_etc$; + +function FinnishStemmer$r_particle_etc$LFinnishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_0, 10); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, FinnishStemmer.g_particle_end, 97, 246)) { + return false; + } + break; + case 2: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +FinnishStemmer.r_particle_etc$LFinnishStemmer$ = FinnishStemmer$r_particle_etc$LFinnishStemmer$; + +FinnishStemmer.prototype.r_possessive$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_4, 9); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + v_3 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "k")) { + break lab0; + } + return false; + } + this.cursor = ((this.limit - v_3) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 3, "kse")) { + return false; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ksi")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 4: + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_1, 6) === 0) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 5: + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_2, 6) === 0) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 6: + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_3, 2) === 0) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +FinnishStemmer.prototype.r_possessive = FinnishStemmer.prototype.r_possessive$; + +function FinnishStemmer$r_possessive$LFinnishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_4, 9); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + v_3 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "k")) { + break lab0; + } + return false; + } + $this.cursor = (($this.limit - v_3) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 3, "kse")) { + return false; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ksi")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 4: + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_1, 6) === 0) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 5: + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_2, 6) === 0) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 6: + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_3, 2) === 0) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +FinnishStemmer.r_possessive$LFinnishStemmer$ = FinnishStemmer$r_possessive$LFinnishStemmer$; + +FinnishStemmer.prototype.r_LONG$ = function () { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_5, 7) === 0 ? false : true); +}; + +FinnishStemmer.prototype.r_LONG = FinnishStemmer.prototype.r_LONG$; + +function FinnishStemmer$r_LONG$LFinnishStemmer$($this) { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_5, 7) === 0 ? false : true); +}; + +FinnishStemmer.r_LONG$LFinnishStemmer$ = FinnishStemmer$r_LONG$LFinnishStemmer$; + +FinnishStemmer.prototype.r_VI$ = function () { + return (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "i") ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, FinnishStemmer.g_V2, 97, 246) ? false : true); +}; + +FinnishStemmer.prototype.r_VI = FinnishStemmer.prototype.r_VI$; + +function FinnishStemmer$r_VI$LFinnishStemmer$($this) { + return (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "i") ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, FinnishStemmer.g_V2, 97, 246) ? false : true); +}; + +FinnishStemmer.r_VI$LFinnishStemmer$ = FinnishStemmer$r_VI$LFinnishStemmer$; + +FinnishStemmer.prototype.r_case_ending$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var lab0; + var lab1; + var lab2; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var $__jsx_postinc_t; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_6, 30); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "i")) { + return false; + } + break; + case 4: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "o")) { + return false; + } + break; + case 5: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u00E4")) { + return false; + } + break; + case 6: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u00F6")) { + return false; + } + break; + case 7: + v_3 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_4 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_5 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_5, 7) === 0 ? false : true)) { + break lab2; + } + break lab1; + } + this.cursor = ((this.limit - v_5) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ie")) { + this.cursor = ((this.limit - v_3) | 0); + break lab0; + } + } + cursor$3 = this.cursor = ((this.limit - v_4) | 0); + if (cursor$3 <= this.limit_backward) { + this.cursor = ((this.limit - v_3) | 0); + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + } + break; + case 8: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, FinnishStemmer.g_V1, 97, 246)) { + return false; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, FinnishStemmer.g_V1, 97, 246)) { + return false; + } + break; + case 9: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + return false; + } + break; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.B_ending_removed = true; + return true; +}; + +FinnishStemmer.prototype.r_case_ending = FinnishStemmer.prototype.r_case_ending$; + +function FinnishStemmer$r_case_ending$LFinnishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var lab0; + var lab1; + var lab2; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var $__jsx_postinc_t; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_6, 30); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "i")) { + return false; + } + break; + case 4: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "o")) { + return false; + } + break; + case 5: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u00E4")) { + return false; + } + break; + case 6: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u00F6")) { + return false; + } + break; + case 7: + v_3 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_4 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_5 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_5, 7) === 0 ? false : true)) { + break lab2; + } + break lab1; + } + $this.cursor = (($this.limit - v_5) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ie")) { + $this.cursor = (($this.limit - v_3) | 0); + break lab0; + } + } + cursor$3 = $this.cursor = (($this.limit - v_4) | 0); + if (cursor$3 <= $this.limit_backward) { + $this.cursor = (($this.limit - v_3) | 0); + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + } + break; + case 8: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, FinnishStemmer.g_V1, 97, 246)) { + return false; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, FinnishStemmer.g_V1, 97, 246)) { + return false; + } + break; + case 9: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + return false; + } + break; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.B_ending_removed = true; + return true; +}; + +FinnishStemmer.r_case_ending$LFinnishStemmer$ = FinnishStemmer$r_case_ending$LFinnishStemmer$; + +FinnishStemmer.prototype.r_other_endings$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p2) { + return false; + } + cursor$1 = this.cursor = this.I_p2; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_7, 14); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + v_3 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "po")) { + break lab0; + } + return false; + } + this.cursor = ((this.limit - v_3) | 0); + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +FinnishStemmer.prototype.r_other_endings = FinnishStemmer.prototype.r_other_endings$; + +function FinnishStemmer$r_other_endings$LFinnishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p2) { + return false; + } + cursor$1 = $this.cursor = $this.I_p2; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_7, 14); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + v_3 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "po")) { + break lab0; + } + return false; + } + $this.cursor = (($this.limit - v_3) | 0); + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +FinnishStemmer.r_other_endings$LFinnishStemmer$ = FinnishStemmer$r_other_endings$LFinnishStemmer$; + +FinnishStemmer.prototype.r_i_plural$ = function () { + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_8, 2) === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +FinnishStemmer.prototype.r_i_plural = FinnishStemmer.prototype.r_i_plural$; + +function FinnishStemmer$r_i_plural$LFinnishStemmer$($this) { + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_8, 2) === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +FinnishStemmer.r_i_plural$LFinnishStemmer$ = FinnishStemmer$r_i_plural$LFinnishStemmer$; + +FinnishStemmer.prototype.r_t_plural$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var cursor$4; + var cursor$5; + var cursor$6; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "t")) { + this.limit_backward = v_2; + return false; + } + this.bra = cursor$3 = this.cursor; + v_3 = ((this.limit - cursor$3) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, FinnishStemmer.g_V1, 97, 246)) { + this.limit_backward = v_2; + return false; + } + this.cursor = ((this.limit - v_3) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.limit_backward = v_2; + v_4 = ((this.limit - (cursor$4 = this.cursor)) | 0); + if (cursor$4 < this.I_p2) { + return false; + } + cursor$5 = this.cursor = this.I_p2; + v_5 = this.limit_backward; + this.limit_backward = cursor$5; + cursor$6 = this.cursor = ((this.limit - v_4) | 0); + this.ket = cursor$6; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_9, 2); + if (among_var === 0) { + this.limit_backward = v_5; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_5; + switch (among_var) { + case 0: + return false; + case 1: + v_6 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "po")) { + break lab0; + } + return false; + } + this.cursor = ((this.limit - v_6) | 0); + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +FinnishStemmer.prototype.r_t_plural = FinnishStemmer.prototype.r_t_plural$; + +function FinnishStemmer$r_t_plural$LFinnishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var cursor$4; + var cursor$5; + var cursor$6; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "t")) { + $this.limit_backward = v_2; + return false; + } + $this.bra = cursor$3 = $this.cursor; + v_3 = (($this.limit - cursor$3) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, FinnishStemmer.g_V1, 97, 246)) { + $this.limit_backward = v_2; + return false; + } + $this.cursor = (($this.limit - v_3) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.limit_backward = v_2; + v_4 = (($this.limit - (cursor$4 = $this.cursor)) | 0); + if (cursor$4 < $this.I_p2) { + return false; + } + cursor$5 = $this.cursor = $this.I_p2; + v_5 = $this.limit_backward; + $this.limit_backward = cursor$5; + cursor$6 = $this.cursor = (($this.limit - v_4) | 0); + $this.ket = cursor$6; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_9, 2); + if (among_var === 0) { + $this.limit_backward = v_5; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_5; + switch (among_var) { + case 0: + return false; + case 1: + v_6 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "po")) { + break lab0; + } + return false; + } + $this.cursor = (($this.limit - v_6) | 0); + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +FinnishStemmer.r_t_plural$LFinnishStemmer$ = FinnishStemmer$r_t_plural$LFinnishStemmer$; + +FinnishStemmer.prototype.r_tidy$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab7; + var s$0; + var cursor$0; + var cursor$1; + var cursor$2; + var limit$0; + var cursor$3; + var limit$1; + var cursor$4; + var limit$2; + var cursor$5; + var limit$3; + var cursor$6; + var cursor$7; + var cursor$8; + var S_x$0; + var $__jsx_postinc_t; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$2 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$2; + cursor$3 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_3 = ((limit$0 - cursor$3) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_4 = ((this.limit - this.cursor) | 0); + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FinnishStemmer.a_5, 7) === 0 ? false : true)) { + break lab0; + } + cursor$1 = this.cursor = ((this.limit - v_4) | 0); + this.ket = cursor$1; + if (cursor$1 <= this.limit_backward) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + cursor$4 = this.cursor = (((limit$1 = this.limit) - v_3) | 0); + v_5 = ((limit$1 - cursor$4) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + this.ket = this.cursor; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, FinnishStemmer.g_AEI, 97, 228)) { + break lab1; + } + this.bra = this.cursor; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, FinnishStemmer.g_V1, 97, 246)) { + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + cursor$5 = this.cursor = (((limit$2 = this.limit) - v_5) | 0); + v_6 = ((limit$2 - cursor$5) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "j")) { + break lab2; + } + this.bra = this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_7 = ((this.limit - this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "o")) { + break lab4; + } + break lab3; + } + this.cursor = ((this.limit - v_7) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "u")) { + break lab2; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + cursor$6 = this.cursor = (((limit$3 = this.limit) - v_6) | 0); + v_8 = ((limit$3 - cursor$6) | 0); + lab5 = true; +lab5: + while (lab5 === true) { + lab5 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "o")) { + break lab5; + } + this.bra = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "j")) { + break lab5; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + this.cursor = ((this.limit - v_8) | 0); + this.limit_backward = v_2; +golab6: + while (true) { + v_9 = ((this.limit - this.cursor) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, FinnishStemmer.g_V1, 97, 246)) { + break lab7; + } + this.cursor = ((this.limit - v_9) | 0); + break golab6; + } + cursor$7 = this.cursor = ((this.limit - v_9) | 0); + if (cursor$7 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + this.ket = cursor$8 = this.cursor; + if (cursor$8 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + S_x$0 = this.S_x = BaseStemmer$slice_to$LBaseStemmer$S(this, this.S_x); + return (S_x$0 === '' ? false : ! (s$0 = this.S_x, BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s$0.length, s$0)) ? false : ! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +FinnishStemmer.prototype.r_tidy = FinnishStemmer.prototype.r_tidy$; + +function FinnishStemmer$r_tidy$LFinnishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab7; + var s$0; + var cursor$0; + var cursor$1; + var cursor$2; + var limit$0; + var cursor$3; + var limit$1; + var cursor$4; + var limit$2; + var cursor$5; + var limit$3; + var cursor$6; + var cursor$7; + var cursor$8; + var S_x$0; + var $__jsx_postinc_t; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$2 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$2; + cursor$3 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_3 = ((limit$0 - cursor$3) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_4 = (($this.limit - $this.cursor) | 0); + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FinnishStemmer.a_5, 7) === 0 ? false : true)) { + break lab0; + } + cursor$1 = $this.cursor = (($this.limit - v_4) | 0); + $this.ket = cursor$1; + if (cursor$1 <= $this.limit_backward) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + cursor$4 = $this.cursor = (((limit$1 = $this.limit) - v_3) | 0); + v_5 = ((limit$1 - cursor$4) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, FinnishStemmer.g_AEI, 97, 228)) { + break lab1; + } + $this.bra = $this.cursor; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, FinnishStemmer.g_V1, 97, 246)) { + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + cursor$5 = $this.cursor = (((limit$2 = $this.limit) - v_5) | 0); + v_6 = ((limit$2 - cursor$5) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "j")) { + break lab2; + } + $this.bra = $this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_7 = (($this.limit - $this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "o")) { + break lab4; + } + break lab3; + } + $this.cursor = (($this.limit - v_7) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "u")) { + break lab2; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + cursor$6 = $this.cursor = (((limit$3 = $this.limit) - v_6) | 0); + v_8 = ((limit$3 - cursor$6) | 0); + lab5 = true; +lab5: + while (lab5 === true) { + lab5 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "o")) { + break lab5; + } + $this.bra = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "j")) { + break lab5; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + $this.cursor = (($this.limit - v_8) | 0); + $this.limit_backward = v_2; +golab6: + while (true) { + v_9 = (($this.limit - $this.cursor) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, FinnishStemmer.g_V1, 97, 246)) { + break lab7; + } + $this.cursor = (($this.limit - v_9) | 0); + break golab6; + } + cursor$7 = $this.cursor = (($this.limit - v_9) | 0); + if (cursor$7 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + $this.ket = cursor$8 = $this.cursor; + if (cursor$8 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + S_x$0 = $this.S_x = BaseStemmer$slice_to$LBaseStemmer$S($this, $this.S_x); + return (S_x$0 === '' ? false : ! (s$0 = $this.S_x, BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s$0.length, s$0)) ? false : ! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +FinnishStemmer.r_tidy$LFinnishStemmer$ = FinnishStemmer$r_tidy$LFinnishStemmer$; + +FinnishStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var limit$2; + var cursor$3; + var limit$3; + var cursor$4; + var limit$4; + var cursor$5; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! FinnishStemmer$r_mark_regions$LFinnishStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + this.B_ending_removed = false; + this.limit_backward = cursor$0; + cursor$1 = this.cursor = limit$0 = this.limit; + v_2 = ((limit$0 - cursor$1) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! FinnishStemmer$r_particle_etc$LFinnishStemmer$(this)) { + break lab1; + } + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_2) | 0); + v_3 = ((limit$1 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! FinnishStemmer$r_possessive$LFinnishStemmer$(this)) { + break lab2; + } + } + cursor$3 = this.cursor = (((limit$2 = this.limit) - v_3) | 0); + v_4 = ((limit$2 - cursor$3) | 0); + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + if (! FinnishStemmer$r_case_ending$LFinnishStemmer$(this)) { + break lab3; + } + } + cursor$4 = this.cursor = (((limit$3 = this.limit) - v_4) | 0); + v_5 = ((limit$3 - cursor$4) | 0); + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! FinnishStemmer$r_other_endings$LFinnishStemmer$(this)) { + break lab4; + } + } + this.cursor = ((this.limit - v_5) | 0); + lab5 = true; +lab5: + while (lab5 === true) { + lab5 = false; + v_6 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! this.B_ending_removed) { + break lab6; + } + v_7 = ((this.limit - this.cursor) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! FinnishStemmer$r_i_plural$LFinnishStemmer$(this)) { + break lab7; + } + } + this.cursor = ((this.limit - v_7) | 0); + break lab5; + } + cursor$5 = this.cursor = (((limit$4 = this.limit) - v_6) | 0); + v_8 = ((limit$4 - cursor$5) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! FinnishStemmer$r_t_plural$LFinnishStemmer$(this)) { + break lab8; + } + } + this.cursor = ((this.limit - v_8) | 0); + } + lab9 = true; +lab9: + while (lab9 === true) { + lab9 = false; + if (! FinnishStemmer$r_tidy$LFinnishStemmer$(this)) { + break lab9; + } + } + this.cursor = this.limit_backward; + return true; +}; + +FinnishStemmer.prototype.stem = FinnishStemmer.prototype.stem$; + +FinnishStemmer.prototype.equals$X = function (o) { + return o instanceof FinnishStemmer; +}; + +FinnishStemmer.prototype.equals = FinnishStemmer.prototype.equals$X; + +function FinnishStemmer$equals$LFinnishStemmer$X($this, o) { + return o instanceof FinnishStemmer; +}; + +FinnishStemmer.equals$LFinnishStemmer$X = FinnishStemmer$equals$LFinnishStemmer$X; + +FinnishStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "FinnishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +FinnishStemmer.prototype.hashCode = FinnishStemmer.prototype.hashCode$; + +function FinnishStemmer$hashCode$LFinnishStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "FinnishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +FinnishStemmer.hashCode$LFinnishStemmer$ = FinnishStemmer$hashCode$LFinnishStemmer$; + +FinnishStemmer.serialVersionUID = 1; +$__jsx_lazy_init(FinnishStemmer, "methodObject", function () { + return new FinnishStemmer(); +}); +$__jsx_lazy_init(FinnishStemmer, "a_0", function () { + return [ new Among("pa", -1, 1), new Among("sti", -1, 2), new Among("kaan", -1, 1), new Among("han", -1, 1), new Among("kin", -1, 1), new Among("h\u00E4n", -1, 1), new Among("k\u00E4\u00E4n", -1, 1), new Among("ko", -1, 1), new Among("p\u00E4", -1, 1), new Among("k\u00F6", -1, 1) ]; +}); +$__jsx_lazy_init(FinnishStemmer, "a_1", function () { + return [ new Among("lla", -1, -1), new Among("na", -1, -1), new Among("ssa", -1, -1), new Among("ta", -1, -1), new Among("lta", 3, -1), new Among("sta", 3, -1) ]; +}); +$__jsx_lazy_init(FinnishStemmer, "a_2", function () { + return [ new Among("ll\u00E4", -1, -1), new Among("n\u00E4", -1, -1), new Among("ss\u00E4", -1, -1), new Among("t\u00E4", -1, -1), new Among("lt\u00E4", 3, -1), new Among("st\u00E4", 3, -1) ]; +}); +$__jsx_lazy_init(FinnishStemmer, "a_3", function () { + return [ new Among("lle", -1, -1), new Among("ine", -1, -1) ]; +}); +$__jsx_lazy_init(FinnishStemmer, "a_4", function () { + return [ new Among("nsa", -1, 3), new Among("mme", -1, 3), new Among("nne", -1, 3), new Among("ni", -1, 2), new Among("si", -1, 1), new Among("an", -1, 4), new Among("en", -1, 6), new Among("\u00E4n", -1, 5), new Among("ns\u00E4", -1, 3) ]; +}); +$__jsx_lazy_init(FinnishStemmer, "a_5", function () { + return [ new Among("aa", -1, -1), new Among("ee", -1, -1), new Among("ii", -1, -1), new Among("oo", -1, -1), new Among("uu", -1, -1), new Among("\u00E4\u00E4", -1, -1), new Among("\u00F6\u00F6", -1, -1) ]; +}); +$__jsx_lazy_init(FinnishStemmer, "a_6", function () { + return [ new Among("a", -1, 8), new Among("lla", 0, -1), new Among("na", 0, -1), new Among("ssa", 0, -1), new Among("ta", 0, -1), new Among("lta", 4, -1), new Among("sta", 4, -1), new Among("tta", 4, 9), new Among("lle", -1, -1), new Among("ine", -1, -1), new Among("ksi", -1, -1), new Among("n", -1, 7), new Among("han", 11, 1), new Among$0("den", 11, -1, (function (instance) { + var this$0; + this$0 = instance; + return (! this$0.eq_s_b$IS(1, "i") ? false : ! this$0.in_grouping_b$AIII(FinnishStemmer.g_V2, 97, 246) ? false : true); + }), FinnishStemmer.methodObject), new Among$0("seen", 11, -1, (function (instance) { + var this$0; + this$0 = instance; + return (this$0.find_among_b$ALAmong$I(FinnishStemmer.a_5, 7) === 0 ? false : true); + }), FinnishStemmer.methodObject), new Among("hen", 11, 2), new Among$0("tten", 11, -1, (function (instance) { + var this$0; + this$0 = instance; + return (! this$0.eq_s_b$IS(1, "i") ? false : ! this$0.in_grouping_b$AIII(FinnishStemmer.g_V2, 97, 246) ? false : true); + }), FinnishStemmer.methodObject), new Among("hin", 11, 3), new Among$0("siin", 11, -1, (function (instance) { + var this$0; + this$0 = instance; + return (! this$0.eq_s_b$IS(1, "i") ? false : ! this$0.in_grouping_b$AIII(FinnishStemmer.g_V2, 97, 246) ? false : true); + }), FinnishStemmer.methodObject), new Among("hon", 11, 4), new Among("h\u00E4n", 11, 5), new Among("h\u00F6n", 11, 6), new Among("\u00E4", -1, 8), new Among("ll\u00E4", 22, -1), new Among("n\u00E4", 22, -1), new Among("ss\u00E4", 22, -1), new Among("t\u00E4", 22, -1), new Among("lt\u00E4", 26, -1), new Among("st\u00E4", 26, -1), new Among("tt\u00E4", 26, 9) ]; +}); +$__jsx_lazy_init(FinnishStemmer, "a_7", function () { + return [ new Among("eja", -1, -1), new Among("mma", -1, 1), new Among("imma", 1, -1), new Among("mpa", -1, 1), new Among("impa", 3, -1), new Among("mmi", -1, 1), new Among("immi", 5, -1), new Among("mpi", -1, 1), new Among("impi", 7, -1), new Among("ej\u00E4", -1, -1), new Among("mm\u00E4", -1, 1), new Among("imm\u00E4", 10, -1), new Among("mp\u00E4", -1, 1), new Among("imp\u00E4", 12, -1) ]; +}); +$__jsx_lazy_init(FinnishStemmer, "a_8", function () { + return [ new Among("i", -1, -1), new Among("j", -1, -1) ]; +}); +$__jsx_lazy_init(FinnishStemmer, "a_9", function () { + return [ new Among("mma", -1, 1), new Among("imma", 0, -1) ]; +}); +FinnishStemmer.g_AEI = [ 17, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8 ]; +FinnishStemmer.g_V1 = [ 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32 ]; +FinnishStemmer.g_V2 = [ 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32 ]; +FinnishStemmer.g_particle_end = [ 17, 97, 24, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/finnish-stemmer.jsx": { + FinnishStemmer: FinnishStemmer, + FinnishStemmer$: FinnishStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var FinnishStemmer = JSX.require("src/finnish-stemmer.jsx").FinnishStemmer; diff --git a/sphinx/search/non-minified-js/french-stemmer.js b/sphinx/search/non-minified-js/french-stemmer.js new file mode 100644 index 000000000..3b3c0607f --- /dev/null +++ b/sphinx/search/non-minified-js/french-stemmer.js @@ -0,0 +1,3667 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function FrenchStemmer() { + BaseStemmer.call(this); + this.I_p2 = 0; + this.I_p1 = 0; + this.I_pV = 0; +}; + +$__jsx_extend([FrenchStemmer], BaseStemmer); +FrenchStemmer.prototype.copy_from$LFrenchStemmer$ = function (other) { + this.I_p2 = other.I_p2; + this.I_p1 = other.I_p1; + this.I_pV = other.I_pV; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +FrenchStemmer.prototype.copy_from = FrenchStemmer.prototype.copy_from$LFrenchStemmer$; + +FrenchStemmer.prototype.r_prelude$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var lab1; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var cursor$0; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + golab2: + while (true) { + v_2 = this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_3 = this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab5; + } + this.bra = this.cursor; + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + v_4 = this.cursor; + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "u")) { + break lab7; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab7; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "U")) { + return false; + } + break lab6; + } + this.cursor = v_4; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "i")) { + break lab8; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab8; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "I")) { + return false; + } + break lab6; + } + this.cursor = v_4; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "y")) { + break lab5; + } + this.ket = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "Y")) { + return false; + } + } + break lab4; + } + this.cursor = v_3; + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + this.bra = this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "y")) { + break lab9; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab9; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "Y")) { + return false; + } + break lab4; + } + this.cursor = v_3; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "q")) { + break lab3; + } + this.bra = this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "u")) { + break lab3; + } + this.ket = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "U")) { + return false; + } + } + this.cursor = v_2; + break golab2; + } + cursor$0 = this.cursor = v_2; + if (cursor$0 >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +FrenchStemmer.prototype.r_prelude = FrenchStemmer.prototype.r_prelude$; + +function FrenchStemmer$r_prelude$LFrenchStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var lab1; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var cursor$0; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + golab2: + while (true) { + v_2 = $this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_3 = $this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab5; + } + $this.bra = $this.cursor; + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + v_4 = $this.cursor; + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "u")) { + break lab7; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab7; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "U")) { + return false; + } + break lab6; + } + $this.cursor = v_4; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "i")) { + break lab8; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab8; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "I")) { + return false; + } + break lab6; + } + $this.cursor = v_4; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "y")) { + break lab5; + } + $this.ket = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "Y")) { + return false; + } + } + break lab4; + } + $this.cursor = v_3; + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + $this.bra = $this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "y")) { + break lab9; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab9; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "Y")) { + return false; + } + break lab4; + } + $this.cursor = v_3; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "q")) { + break lab3; + } + $this.bra = $this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "u")) { + break lab3; + } + $this.ket = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "U")) { + return false; + } + } + $this.cursor = v_2; + break golab2; + } + cursor$0 = $this.cursor = v_2; + if (cursor$0 >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +FrenchStemmer.r_prelude$LFrenchStemmer$ = FrenchStemmer$r_prelude$LFrenchStemmer$; + +FrenchStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_2; + var v_4; + var lab0; + var lab1; + var lab2; + var lab3; + var lab5; + var lab6; + var lab8; + var lab10; + var lab12; + var lab14; + var cursor$0; + var limit$0; + var cursor$1; + var $__jsx_postinc_t; + this.I_pV = limit$0 = this.limit; + this.I_p1 = limit$0; + this.I_p2 = limit$0; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab2; + } + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab2; + } + if (this.cursor >= this.limit) { + break lab2; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break lab1; + } + this.cursor = v_2; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, FrenchStemmer.a_0, 3) === 0) { + break lab3; + } + break lab1; + } + cursor$0 = this.cursor = v_2; + if (cursor$0 >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + golab4: + while (true) { + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab5; + } + break golab4; + } + if (this.cursor >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + this.I_pV = this.cursor; + } + cursor$1 = this.cursor = v_1; + v_4 = cursor$1; + lab6 = true; +lab6: + while (lab6 === true) { + lab6 = false; + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab8; + } + break golab7; + } + if (this.cursor >= this.limit) { + break lab6; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab9: + while (true) { + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab10; + } + break golab9; + } + if (this.cursor >= this.limit) { + break lab6; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab12; + } + break golab11; + } + if (this.cursor >= this.limit) { + break lab6; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab13: + while (true) { + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab14; + } + break golab13; + } + if (this.cursor >= this.limit) { + break lab6; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + } + this.cursor = v_4; + return true; +}; + +FrenchStemmer.prototype.r_mark_regions = FrenchStemmer.prototype.r_mark_regions$; + +function FrenchStemmer$r_mark_regions$LFrenchStemmer$($this) { + var v_1; + var v_2; + var v_4; + var lab0; + var lab1; + var lab2; + var lab3; + var lab5; + var lab6; + var lab8; + var lab10; + var lab12; + var lab14; + var cursor$0; + var limit$0; + var cursor$1; + var $__jsx_postinc_t; + $this.I_pV = limit$0 = $this.limit; + $this.I_p1 = limit$0; + $this.I_p2 = limit$0; + v_1 = $this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = $this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab2; + } + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab2; + } + if ($this.cursor >= $this.limit) { + break lab2; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break lab1; + } + $this.cursor = v_2; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, FrenchStemmer.a_0, 3) === 0) { + break lab3; + } + break lab1; + } + cursor$0 = $this.cursor = v_2; + if (cursor$0 >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + golab4: + while (true) { + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab5; + } + break golab4; + } + if ($this.cursor >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + $this.I_pV = $this.cursor; + } + cursor$1 = $this.cursor = v_1; + v_4 = cursor$1; + lab6 = true; +lab6: + while (lab6 === true) { + lab6 = false; + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab8; + } + break golab7; + } + if ($this.cursor >= $this.limit) { + break lab6; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab9: + while (true) { + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab10; + } + break golab9; + } + if ($this.cursor >= $this.limit) { + break lab6; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab12; + } + break golab11; + } + if ($this.cursor >= $this.limit) { + break lab6; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab13: + while (true) { + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab14; + } + break golab13; + } + if ($this.cursor >= $this.limit) { + break lab6; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p2 = $this.cursor; + } + $this.cursor = v_4; + return true; +}; + +FrenchStemmer.r_mark_regions$LFrenchStemmer$ = FrenchStemmer$r_mark_regions$LFrenchStemmer$; + +FrenchStemmer.prototype.r_postlude$ = function () { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, FrenchStemmer.a_1, 4); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "y")) { + return false; + } + break; + case 4: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +FrenchStemmer.prototype.r_postlude = FrenchStemmer.prototype.r_postlude$; + +function FrenchStemmer$r_postlude$LFrenchStemmer$($this) { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, FrenchStemmer.a_1, 4); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "y")) { + return false; + } + break; + case 4: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +FrenchStemmer.r_postlude$LFrenchStemmer$ = FrenchStemmer$r_postlude$LFrenchStemmer$; + +FrenchStemmer.prototype.r_RV$ = function () { + return (! (this.I_pV <= this.cursor) ? false : true); +}; + +FrenchStemmer.prototype.r_RV = FrenchStemmer.prototype.r_RV$; + +function FrenchStemmer$r_RV$LFrenchStemmer$($this) { + return (! ($this.I_pV <= $this.cursor) ? false : true); +}; + +FrenchStemmer.r_RV$LFrenchStemmer$ = FrenchStemmer$r_RV$LFrenchStemmer$; + +FrenchStemmer.prototype.r_R1$ = function () { + return (! (this.I_p1 <= this.cursor) ? false : true); +}; + +FrenchStemmer.prototype.r_R1 = FrenchStemmer.prototype.r_R1$; + +function FrenchStemmer$r_R1$LFrenchStemmer$($this) { + return (! ($this.I_p1 <= $this.cursor) ? false : true); +}; + +FrenchStemmer.r_R1$LFrenchStemmer$ = FrenchStemmer$r_R1$LFrenchStemmer$; + +FrenchStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +FrenchStemmer.prototype.r_R2 = FrenchStemmer.prototype.r_R2$; + +function FrenchStemmer$r_R2$LFrenchStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +FrenchStemmer.r_R2$LFrenchStemmer$ = FrenchStemmer$r_R2$LFrenchStemmer$; + +FrenchStemmer.prototype.r_standard_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var lab11; + var lab12; + var lab13; + var lab14; + var lab15; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FrenchStemmer.a_4, 43); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ic")) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab2; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab1; + } + this.cursor = ((this.limit - v_2) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "iqU")) { + return false; + } + } + } + break; + case 3: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "log")) { + return false; + } + break; + case 4: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 5: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ent")) { + return false; + } + break; + case 6: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_3 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FrenchStemmer.a_2, 6); + if (among_var === 0) { + this.cursor = ((this.limit - v_3) | 0); + break lab3; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_3) | 0); + break lab3; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "at")) { + this.cursor = ((this.limit - v_3) | 0); + break lab3; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p2 <= cursor$0) ? false : true)) { + this.cursor = ((this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_4 = ((this.limit - this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab5; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab4; + } + cursor$1 = this.cursor = ((this.limit - v_4) | 0); + if (! (! (this.I_p1 <= cursor$1) ? false : true)) { + this.cursor = ((this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "eux")) { + return false; + } + } + break; + case 3: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 4: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + } + } + break; + case 7: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_5 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FrenchStemmer.a_3, 3); + if (among_var === 0) { + this.cursor = ((this.limit - v_5) | 0); + break lab6; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_5) | 0); + break lab6; + case 1: + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + v_6 = ((this.limit - this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab8; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab7; + } + this.cursor = ((this.limit - v_6) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "abl")) { + return false; + } + } + break; + case 2: + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_7 = ((this.limit - this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab10; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab9; + } + this.cursor = ((this.limit - v_7) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "iqU")) { + return false; + } + } + break; + case 3: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_5) | 0); + break lab6; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + case 8: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_8 = ((this.limit - this.cursor) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "at")) { + this.cursor = ((this.limit - v_8) | 0); + break lab11; + } + this.bra = cursor$2 = this.cursor; + if (! (! (this.I_p2 <= cursor$2) ? false : true)) { + this.cursor = ((this.limit - v_8) | 0); + break lab11; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ic")) { + this.cursor = ((this.limit - v_8) | 0); + break lab11; + } + this.bra = this.cursor; + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + v_9 = ((this.limit - this.cursor) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab13; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab12; + } + this.cursor = ((this.limit - v_9) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "iqU")) { + return false; + } + } + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "eau")) { + return false; + } + break; + case 10: + if (! (! (this.I_p1 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "al")) { + return false; + } + break; + case 11: + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + v_10 = ((this.limit - this.cursor) | 0); + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab15; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab14; + } + cursor$3 = this.cursor = ((this.limit - v_10) | 0); + if (! (! (this.I_p1 <= cursor$3) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "eux")) { + return false; + } + } + break; + case 12: + if (! (! (this.I_p1 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 13: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ant")) { + return false; + } + return false; + case 14: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ent")) { + return false; + } + return false; + case 15: + v_11 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + return false; + } + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + this.cursor = ((this.limit - v_11) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + return false; + } + return true; +}; + +FrenchStemmer.prototype.r_standard_suffix = FrenchStemmer.prototype.r_standard_suffix$; + +function FrenchStemmer$r_standard_suffix$LFrenchStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var lab11; + var lab12; + var lab13; + var lab14; + var lab15; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FrenchStemmer.a_4, 43); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ic")) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab2; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab1; + } + $this.cursor = (($this.limit - v_2) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "iqU")) { + return false; + } + } + } + break; + case 3: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "log")) { + return false; + } + break; + case 4: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 5: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ent")) { + return false; + } + break; + case 6: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_3 = (($this.limit - $this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FrenchStemmer.a_2, 6); + if (among_var === 0) { + $this.cursor = (($this.limit - v_3) | 0); + break lab3; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_3) | 0); + break lab3; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "at")) { + $this.cursor = (($this.limit - v_3) | 0); + break lab3; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$0) ? false : true)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_4 = (($this.limit - $this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab5; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab4; + } + cursor$1 = $this.cursor = (($this.limit - v_4) | 0); + if (! (! ($this.I_p1 <= cursor$1) ? false : true)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "eux")) { + return false; + } + } + break; + case 3: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 4: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + } + } + break; + case 7: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_5 = (($this.limit - $this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FrenchStemmer.a_3, 3); + if (among_var === 0) { + $this.cursor = (($this.limit - v_5) | 0); + break lab6; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_5) | 0); + break lab6; + case 1: + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + v_6 = (($this.limit - $this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab8; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab7; + } + $this.cursor = (($this.limit - v_6) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "abl")) { + return false; + } + } + break; + case 2: + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_7 = (($this.limit - $this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab10; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab9; + } + $this.cursor = (($this.limit - v_7) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "iqU")) { + return false; + } + } + break; + case 3: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_5) | 0); + break lab6; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + case 8: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_8 = (($this.limit - $this.cursor) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "at")) { + $this.cursor = (($this.limit - v_8) | 0); + break lab11; + } + $this.bra = cursor$2 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$2) ? false : true)) { + $this.cursor = (($this.limit - v_8) | 0); + break lab11; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ic")) { + $this.cursor = (($this.limit - v_8) | 0); + break lab11; + } + $this.bra = $this.cursor; + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + v_9 = (($this.limit - $this.cursor) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab13; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab12; + } + $this.cursor = (($this.limit - v_9) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "iqU")) { + return false; + } + } + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "eau")) { + return false; + } + break; + case 10: + if (! (! ($this.I_p1 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "al")) { + return false; + } + break; + case 11: + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + v_10 = (($this.limit - $this.cursor) | 0); + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab15; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab14; + } + cursor$3 = $this.cursor = (($this.limit - v_10) | 0); + if (! (! ($this.I_p1 <= cursor$3) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "eux")) { + return false; + } + } + break; + case 12: + if (! (! ($this.I_p1 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 13: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ant")) { + return false; + } + return false; + case 14: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ent")) { + return false; + } + return false; + case 15: + v_11 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + return false; + } + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + $this.cursor = (($this.limit - v_11) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + return false; + } + return true; +}; + +FrenchStemmer.r_standard_suffix$LFrenchStemmer$ = FrenchStemmer$r_standard_suffix$LFrenchStemmer$; + +FrenchStemmer.prototype.r_i_verb_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_pV) { + return false; + } + cursor$1 = this.cursor = this.I_pV; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FrenchStemmer.a_5, 35); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.limit_backward = v_2; + return false; + case 1: + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + this.limit_backward = v_2; + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + this.limit_backward = v_2; + return true; +}; + +FrenchStemmer.prototype.r_i_verb_suffix = FrenchStemmer.prototype.r_i_verb_suffix$; + +function FrenchStemmer$r_i_verb_suffix$LFrenchStemmer$($this) { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_pV) { + return false; + } + cursor$1 = $this.cursor = $this.I_pV; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FrenchStemmer.a_5, 35); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.limit_backward = v_2; + return false; + case 1: + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + $this.limit_backward = v_2; + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + $this.limit_backward = v_2; + return true; +}; + +FrenchStemmer.r_i_verb_suffix$LFrenchStemmer$ = FrenchStemmer$r_i_verb_suffix$LFrenchStemmer$; + +FrenchStemmer.prototype.r_verb_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_pV) { + return false; + } + cursor$1 = this.cursor = this.I_pV; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FrenchStemmer.a_6, 38); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.limit_backward = v_2; + return false; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.limit_backward = v_2; + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_3 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + this.cursor = ((this.limit - v_3) | 0); + break lab0; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + } + this.limit_backward = v_2; + return true; +}; + +FrenchStemmer.prototype.r_verb_suffix = FrenchStemmer.prototype.r_verb_suffix$; + +function FrenchStemmer$r_verb_suffix$LFrenchStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_pV) { + return false; + } + cursor$1 = $this.cursor = $this.I_pV; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FrenchStemmer.a_6, 38); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.limit_backward = v_2; + return false; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.limit_backward = v_2; + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_3 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + $this.cursor = (($this.limit - v_3) | 0); + break lab0; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + } + $this.limit_backward = v_2; + return true; +}; + +FrenchStemmer.r_verb_suffix$LFrenchStemmer$ = FrenchStemmer$r_verb_suffix$LFrenchStemmer$; + +FrenchStemmer.prototype.r_residual_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var lab0; + var lab1; + var lab2; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "s")) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = cursor$0 = this.cursor; + v_2 = ((this.limit - cursor$0) | 0); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, FrenchStemmer.g_keep_with_s, 97, 232)) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.cursor = ((this.limit - v_2) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + v_3 = ((this.limit - (cursor$1 = this.cursor)) | 0); + if (cursor$1 < this.I_pV) { + return false; + } + cursor$2 = this.cursor = this.I_pV; + v_4 = this.limit_backward; + this.limit_backward = cursor$2; + cursor$3 = this.cursor = ((this.limit - v_3) | 0); + this.ket = cursor$3; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FrenchStemmer.a_7, 7); + if (among_var === 0) { + this.limit_backward = v_4; + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.limit_backward = v_4; + return false; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.limit_backward = v_4; + return false; + } + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_5 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "s")) { + break lab2; + } + break lab1; + } + this.cursor = ((this.limit - v_5) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "t")) { + this.limit_backward = v_4; + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 4: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "gu")) { + this.limit_backward = v_4; + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + this.limit_backward = v_4; + return true; +}; + +FrenchStemmer.prototype.r_residual_suffix = FrenchStemmer.prototype.r_residual_suffix$; + +function FrenchStemmer$r_residual_suffix$LFrenchStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var lab0; + var lab1; + var lab2; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "s")) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = cursor$0 = $this.cursor; + v_2 = (($this.limit - cursor$0) | 0); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, FrenchStemmer.g_keep_with_s, 97, 232)) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.cursor = (($this.limit - v_2) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + v_3 = (($this.limit - (cursor$1 = $this.cursor)) | 0); + if (cursor$1 < $this.I_pV) { + return false; + } + cursor$2 = $this.cursor = $this.I_pV; + v_4 = $this.limit_backward; + $this.limit_backward = cursor$2; + cursor$3 = $this.cursor = (($this.limit - v_3) | 0); + $this.ket = cursor$3; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FrenchStemmer.a_7, 7); + if (among_var === 0) { + $this.limit_backward = v_4; + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.limit_backward = v_4; + return false; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.limit_backward = v_4; + return false; + } + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_5 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "s")) { + break lab2; + } + break lab1; + } + $this.cursor = (($this.limit - v_5) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "t")) { + $this.limit_backward = v_4; + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 4: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "gu")) { + $this.limit_backward = v_4; + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + $this.limit_backward = v_4; + return true; +}; + +FrenchStemmer.r_residual_suffix$LFrenchStemmer$ = FrenchStemmer$r_residual_suffix$LFrenchStemmer$; + +FrenchStemmer.prototype.r_un_double$ = function () { + var v_1; + var cursor$0; + var $__jsx_postinc_t; + v_1 = ((this.limit - this.cursor) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, FrenchStemmer.a_8, 5) === 0) { + return false; + } + cursor$0 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$0; + if (cursor$0 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +FrenchStemmer.prototype.r_un_double = FrenchStemmer.prototype.r_un_double$; + +function FrenchStemmer$r_un_double$LFrenchStemmer$($this) { + var v_1; + var cursor$0; + var $__jsx_postinc_t; + v_1 = (($this.limit - $this.cursor) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, FrenchStemmer.a_8, 5) === 0) { + return false; + } + cursor$0 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$0; + if (cursor$0 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +FrenchStemmer.r_un_double$LFrenchStemmer$ = FrenchStemmer$r_un_double$LFrenchStemmer$; + +FrenchStemmer.prototype.r_un_accent$ = function () { + var v_3; + var v_1; + var lab1; + var lab2; + var lab3; + v_1 = 1; +replab0: + while (true) { + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, FrenchStemmer.g_v, 97, 251)) { + break lab1; + } + v_1--; + continue replab0; + } + break replab0; + } + if (v_1 > 0) { + return false; + } + this.ket = this.cursor; + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + v_3 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u00E9")) { + break lab3; + } + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u00E8")) { + return false; + } + } + this.bra = this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e") ? false : true); +}; + +FrenchStemmer.prototype.r_un_accent = FrenchStemmer.prototype.r_un_accent$; + +function FrenchStemmer$r_un_accent$LFrenchStemmer$($this) { + var v_3; + var v_1; + var lab1; + var lab2; + var lab3; + v_1 = 1; +replab0: + while (true) { + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, FrenchStemmer.g_v, 97, 251)) { + break lab1; + } + v_1--; + continue replab0; + } + break replab0; + } + if (v_1 > 0) { + return false; + } + $this.ket = $this.cursor; + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + v_3 = (($this.limit - $this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u00E9")) { + break lab3; + } + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u00E8")) { + return false; + } + } + $this.bra = $this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e") ? false : true); +}; + +FrenchStemmer.r_un_accent$LFrenchStemmer$ = FrenchStemmer$r_un_accent$LFrenchStemmer$; + +FrenchStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_11; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var lab11; + var lab12; + var lab13; + var cursor$0; + var limit$0; + var cursor$1; + var cursor$2; + var limit$1; + var cursor$3; + var limit$2; + var cursor$4; + var cursor$5; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! FrenchStemmer$r_prelude$LFrenchStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + v_2 = cursor$0; + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! FrenchStemmer$r_mark_regions$LFrenchStemmer$(this)) { + break lab1; + } + } + cursor$2 = this.cursor = v_2; + this.limit_backward = cursor$2; + cursor$3 = this.cursor = limit$1 = this.limit; + v_3 = ((limit$1 - cursor$3) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_4 = ((this.limit - this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_5 = ((this.limit - this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + v_6 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! FrenchStemmer$r_standard_suffix$LFrenchStemmer$(this)) { + break lab6; + } + break lab5; + } + this.cursor = ((this.limit - v_6) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! FrenchStemmer$r_i_verb_suffix$LFrenchStemmer$(this)) { + break lab7; + } + break lab5; + } + this.cursor = ((this.limit - v_6) | 0); + if (! FrenchStemmer$r_verb_suffix$LFrenchStemmer$(this)) { + break lab4; + } + } + cursor$1 = this.cursor = (((limit$0 = this.limit) - v_5) | 0); + v_7 = ((limit$0 - cursor$1) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + this.ket = this.cursor; + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_8 = ((this.limit - this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "Y")) { + break lab10; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break lab9; + } + this.cursor = ((this.limit - v_8) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u00E7")) { + this.cursor = ((this.limit - v_7) | 0); + break lab8; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "c")) { + return false; + } + } + } + break lab3; + } + this.cursor = ((this.limit - v_4) | 0); + if (! FrenchStemmer$r_residual_suffix$LFrenchStemmer$(this)) { + break lab2; + } + } + } + cursor$4 = this.cursor = (((limit$2 = this.limit) - v_3) | 0); + v_9 = ((limit$2 - cursor$4) | 0); + lab11 = true; +lab11: + while (lab11 === true) { + lab11 = false; + if (! FrenchStemmer$r_un_double$LFrenchStemmer$(this)) { + break lab11; + } + } + this.cursor = ((this.limit - v_9) | 0); + lab12 = true; +lab12: + while (lab12 === true) { + lab12 = false; + if (! FrenchStemmer$r_un_accent$LFrenchStemmer$(this)) { + break lab12; + } + } + cursor$5 = this.cursor = this.limit_backward; + v_11 = cursor$5; + lab13 = true; +lab13: + while (lab13 === true) { + lab13 = false; + if (! FrenchStemmer$r_postlude$LFrenchStemmer$(this)) { + break lab13; + } + } + this.cursor = v_11; + return true; +}; + +FrenchStemmer.prototype.stem = FrenchStemmer.prototype.stem$; + +FrenchStemmer.prototype.equals$X = function (o) { + return o instanceof FrenchStemmer; +}; + +FrenchStemmer.prototype.equals = FrenchStemmer.prototype.equals$X; + +function FrenchStemmer$equals$LFrenchStemmer$X($this, o) { + return o instanceof FrenchStemmer; +}; + +FrenchStemmer.equals$LFrenchStemmer$X = FrenchStemmer$equals$LFrenchStemmer$X; + +FrenchStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "FrenchStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +FrenchStemmer.prototype.hashCode = FrenchStemmer.prototype.hashCode$; + +function FrenchStemmer$hashCode$LFrenchStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "FrenchStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +FrenchStemmer.hashCode$LFrenchStemmer$ = FrenchStemmer$hashCode$LFrenchStemmer$; + +FrenchStemmer.serialVersionUID = 1; +$__jsx_lazy_init(FrenchStemmer, "methodObject", function () { + return new FrenchStemmer(); +}); +$__jsx_lazy_init(FrenchStemmer, "a_0", function () { + return [ new Among("col", -1, -1), new Among("par", -1, -1), new Among("tap", -1, -1) ]; +}); +$__jsx_lazy_init(FrenchStemmer, "a_1", function () { + return [ new Among("", -1, 4), new Among("I", 0, 1), new Among("U", 0, 2), new Among("Y", 0, 3) ]; +}); +$__jsx_lazy_init(FrenchStemmer, "a_2", function () { + return [ new Among("iqU", -1, 3), new Among("abl", -1, 3), new Among("I\u00E8r", -1, 4), new Among("i\u00E8r", -1, 4), new Among("eus", -1, 2), new Among("iv", -1, 1) ]; +}); +$__jsx_lazy_init(FrenchStemmer, "a_3", function () { + return [ new Among("ic", -1, 2), new Among("abil", -1, 1), new Among("iv", -1, 3) ]; +}); +$__jsx_lazy_init(FrenchStemmer, "a_4", function () { + return [ new Among("iqUe", -1, 1), new Among("atrice", -1, 2), new Among("ance", -1, 1), new Among("ence", -1, 5), new Among("logie", -1, 3), new Among("able", -1, 1), new Among("isme", -1, 1), new Among("euse", -1, 11), new Among("iste", -1, 1), new Among("ive", -1, 8), new Among("if", -1, 8), new Among("usion", -1, 4), new Among("ation", -1, 2), new Among("ution", -1, 4), new Among("ateur", -1, 2), new Among("iqUes", -1, 1), new Among("atrices", -1, 2), new Among("ances", -1, 1), new Among("ences", -1, 5), new Among("logies", -1, 3), new Among("ables", -1, 1), new Among("ismes", -1, 1), new Among("euses", -1, 11), new Among("istes", -1, 1), new Among("ives", -1, 8), new Among("ifs", -1, 8), new Among("usions", -1, 4), new Among("ations", -1, 2), new Among("utions", -1, 4), new Among("ateurs", -1, 2), new Among("ments", -1, 15), new Among("ements", 30, 6), new Among("issements", 31, 12), new Among("it\u00E9s", -1, 7), new Among("ment", -1, 15), new Among("ement", 34, 6), new Among("issement", 35, 12), new Among("amment", 34, 13), new Among("emment", 34, 14), new Among("aux", -1, 10), new Among("eaux", 39, 9), new Among("eux", -1, 1), new Among("it\u00E9", -1, 7) ]; +}); +$__jsx_lazy_init(FrenchStemmer, "a_5", function () { + return [ new Among("ira", -1, 1), new Among("ie", -1, 1), new Among("isse", -1, 1), new Among("issante", -1, 1), new Among("i", -1, 1), new Among("irai", 4, 1), new Among("ir", -1, 1), new Among("iras", -1, 1), new Among("ies", -1, 1), new Among("\u00EEmes", -1, 1), new Among("isses", -1, 1), new Among("issantes", -1, 1), new Among("\u00EEtes", -1, 1), new Among("is", -1, 1), new Among("irais", 13, 1), new Among("issais", 13, 1), new Among("irions", -1, 1), new Among("issions", -1, 1), new Among("irons", -1, 1), new Among("issons", -1, 1), new Among("issants", -1, 1), new Among("it", -1, 1), new Among("irait", 21, 1), new Among("issait", 21, 1), new Among("issant", -1, 1), new Among("iraIent", -1, 1), new Among("issaIent", -1, 1), new Among("irent", -1, 1), new Among("issent", -1, 1), new Among("iront", -1, 1), new Among("\u00EEt", -1, 1), new Among("iriez", -1, 1), new Among("issiez", -1, 1), new Among("irez", -1, 1), new Among("issez", -1, 1) ]; +}); +$__jsx_lazy_init(FrenchStemmer, "a_6", function () { + return [ new Among("a", -1, 3), new Among("era", 0, 2), new Among("asse", -1, 3), new Among("ante", -1, 3), new Among("\u00E9e", -1, 2), new Among("ai", -1, 3), new Among("erai", 5, 2), new Among("er", -1, 2), new Among("as", -1, 3), new Among("eras", 8, 2), new Among("\u00E2mes", -1, 3), new Among("asses", -1, 3), new Among("antes", -1, 3), new Among("\u00E2tes", -1, 3), new Among("\u00E9es", -1, 2), new Among("ais", -1, 3), new Among("erais", 15, 2), new Among("ions", -1, 1), new Among("erions", 17, 2), new Among("assions", 17, 3), new Among("erons", -1, 2), new Among("ants", -1, 3), new Among("\u00E9s", -1, 2), new Among("ait", -1, 3), new Among("erait", 23, 2), new Among("ant", -1, 3), new Among("aIent", -1, 3), new Among("eraIent", 26, 2), new Among("\u00E8rent", -1, 2), new Among("assent", -1, 3), new Among("eront", -1, 2), new Among("\u00E2t", -1, 3), new Among("ez", -1, 2), new Among("iez", 32, 2), new Among("eriez", 33, 2), new Among("assiez", 33, 3), new Among("erez", 32, 2), new Among("\u00E9", -1, 2) ]; +}); +$__jsx_lazy_init(FrenchStemmer, "a_7", function () { + return [ new Among("e", -1, 3), new Among("I\u00E8re", 0, 2), new Among("i\u00E8re", 0, 2), new Among("ion", -1, 1), new Among("Ier", -1, 2), new Among("ier", -1, 2), new Among("\u00EB", -1, 4) ]; +}); +$__jsx_lazy_init(FrenchStemmer, "a_8", function () { + return [ new Among("ell", -1, -1), new Among("eill", -1, -1), new Among("enn", -1, -1), new Among("onn", -1, -1), new Among("ett", -1, -1) ]; +}); +FrenchStemmer.g_v = [ 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 130, 103, 8, 5 ]; +FrenchStemmer.g_keep_with_s = [ 1, 65, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/french-stemmer.jsx": { + FrenchStemmer: FrenchStemmer, + FrenchStemmer$: FrenchStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var FrenchStemmer = JSX.require("src/french-stemmer.jsx").FrenchStemmer; diff --git a/sphinx/search/non-minified-js/german-stemmer.js b/sphinx/search/non-minified-js/german-stemmer.js new file mode 100644 index 000000000..4f1dc1cf3 --- /dev/null +++ b/sphinx/search/non-minified-js/german-stemmer.js @@ -0,0 +1,2506 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function GermanStemmer() { + BaseStemmer.call(this); + this.I_x = 0; + this.I_p2 = 0; + this.I_p1 = 0; +}; + +$__jsx_extend([GermanStemmer], BaseStemmer); +GermanStemmer.prototype.copy_from$LGermanStemmer$ = function (other) { + this.I_x = other.I_x; + this.I_p2 = other.I_p2; + this.I_p1 = other.I_p1; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +GermanStemmer.prototype.copy_from = GermanStemmer.prototype.copy_from$LGermanStemmer$; + +GermanStemmer.prototype.r_prelude$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab1; + var lab2; + var lab3; + var lab5; + var lab7; + var lab8; + var lab9; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + v_1 = this.cursor; +replab0: + while (true) { + v_2 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_3 = this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + this.bra = this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "\u00DF")) { + break lab3; + } + this.ket = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ss")) { + return false; + } + break lab2; + } + cursor$0 = this.cursor = v_3; + if (cursor$0 >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab0; + } + this.cursor = v_2; + break replab0; + } + this.cursor = v_1; +replab4: + while (true) { + v_4 = this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + golab6: + while (true) { + v_5 = this.cursor; + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, GermanStemmer.g_v, 97, 252)) { + break lab7; + } + this.bra = this.cursor; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + v_6 = this.cursor; + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "u")) { + break lab9; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, GermanStemmer.g_v, 97, 252)) { + break lab9; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "U")) { + return false; + } + break lab8; + } + this.cursor = v_6; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "y")) { + break lab7; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, GermanStemmer.g_v, 97, 252)) { + break lab7; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "Y")) { + return false; + } + } + this.cursor = v_5; + break golab6; + } + cursor$1 = this.cursor = v_5; + if (cursor$1 >= this.limit) { + break lab5; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab4; + } + this.cursor = v_4; + break replab4; + } + return true; +}; + +GermanStemmer.prototype.r_prelude = GermanStemmer.prototype.r_prelude$; + +function GermanStemmer$r_prelude$LGermanStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab1; + var lab2; + var lab3; + var lab5; + var lab7; + var lab8; + var lab9; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + v_1 = $this.cursor; +replab0: + while (true) { + v_2 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_3 = $this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + $this.bra = $this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "\u00DF")) { + break lab3; + } + $this.ket = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ss")) { + return false; + } + break lab2; + } + cursor$0 = $this.cursor = v_3; + if (cursor$0 >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab0; + } + $this.cursor = v_2; + break replab0; + } + $this.cursor = v_1; +replab4: + while (true) { + v_4 = $this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + golab6: + while (true) { + v_5 = $this.cursor; + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, GermanStemmer.g_v, 97, 252)) { + break lab7; + } + $this.bra = $this.cursor; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + v_6 = $this.cursor; + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "u")) { + break lab9; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, GermanStemmer.g_v, 97, 252)) { + break lab9; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "U")) { + return false; + } + break lab8; + } + $this.cursor = v_6; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "y")) { + break lab7; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, GermanStemmer.g_v, 97, 252)) { + break lab7; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "Y")) { + return false; + } + } + $this.cursor = v_5; + break golab6; + } + cursor$1 = $this.cursor = v_5; + if (cursor$1 >= $this.limit) { + break lab5; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab4; + } + $this.cursor = v_4; + break replab4; + } + return true; +}; + +GermanStemmer.r_prelude$LGermanStemmer$ = GermanStemmer$r_prelude$LGermanStemmer$; + +GermanStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var c; + var lab1; + var lab3; + var lab4; + var lab6; + var lab8; + var limit$0; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + this.I_p1 = limit$0 = this.limit; + this.I_p2 = limit$0; + v_1 = cursor$0 = this.cursor; + c = (cursor$0 + 3 | 0); + if (0 > c || c > limit$0) { + return false; + } + cursor$1 = this.cursor = c; + this.I_x = cursor$1; + this.cursor = v_1; +golab0: + while (true) { + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, GermanStemmer.g_v, 97, 252)) { + break lab1; + } + break golab0; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, GermanStemmer.g_v, 97, 252)) { + break lab3; + } + break golab2; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! (this.I_p1 < this.I_x)) { + break lab4; + } + this.I_p1 = this.I_x; + } +golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, GermanStemmer.g_v, 97, 252)) { + break lab6; + } + break golab5; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, GermanStemmer.g_v, 97, 252)) { + break lab8; + } + break golab7; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + return true; +}; + +GermanStemmer.prototype.r_mark_regions = GermanStemmer.prototype.r_mark_regions$; + +function GermanStemmer$r_mark_regions$LGermanStemmer$($this) { + var v_1; + var c; + var lab1; + var lab3; + var lab4; + var lab6; + var lab8; + var limit$0; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + $this.I_p1 = limit$0 = $this.limit; + $this.I_p2 = limit$0; + v_1 = cursor$0 = $this.cursor; + c = (cursor$0 + 3 | 0); + if (0 > c || c > limit$0) { + return false; + } + cursor$1 = $this.cursor = c; + $this.I_x = cursor$1; + $this.cursor = v_1; +golab0: + while (true) { + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, GermanStemmer.g_v, 97, 252)) { + break lab1; + } + break golab0; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, GermanStemmer.g_v, 97, 252)) { + break lab3; + } + break golab2; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! ($this.I_p1 < $this.I_x)) { + break lab4; + } + $this.I_p1 = $this.I_x; + } +golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, GermanStemmer.g_v, 97, 252)) { + break lab6; + } + break golab5; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, GermanStemmer.g_v, 97, 252)) { + break lab8; + } + break golab7; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p2 = $this.cursor; + return true; +}; + +GermanStemmer.r_mark_regions$LGermanStemmer$ = GermanStemmer$r_mark_regions$LGermanStemmer$; + +GermanStemmer.prototype.r_postlude$ = function () { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, GermanStemmer.a_0, 6); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "y")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "o")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 6: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +GermanStemmer.prototype.r_postlude = GermanStemmer.prototype.r_postlude$; + +function GermanStemmer$r_postlude$LGermanStemmer$($this) { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, GermanStemmer.a_0, 6); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "y")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "o")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 6: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +GermanStemmer.r_postlude$LGermanStemmer$ = GermanStemmer$r_postlude$LGermanStemmer$; + +GermanStemmer.prototype.r_R1$ = function () { + return (! (this.I_p1 <= this.cursor) ? false : true); +}; + +GermanStemmer.prototype.r_R1 = GermanStemmer.prototype.r_R1$; + +function GermanStemmer$r_R1$LGermanStemmer$($this) { + return (! ($this.I_p1 <= $this.cursor) ? false : true); +}; + +GermanStemmer.r_R1$LGermanStemmer$ = GermanStemmer$r_R1$LGermanStemmer$; + +GermanStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +GermanStemmer.prototype.r_R2 = GermanStemmer.prototype.r_R2$; + +function GermanStemmer$r_R2$LGermanStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +GermanStemmer.r_R2$LGermanStemmer$ = GermanStemmer$r_R2$LGermanStemmer$; + +GermanStemmer.prototype.r_standard_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var lab0; + var lab1; + var lab2; + var c; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var cursor$0; + var cursor$1; + var limit$0; + var cursor$2; + var cursor$3; + var cursor$4; + var cursor$5; + var cursor$6; + var cursor$7; + var limit$1; + var cursor$8; + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, GermanStemmer.a_1, 7); + if (among_var === 0) { + break lab0; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + break lab0; + } + switch (among_var) { + case 0: + break lab0; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_2 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "s")) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + this.bra = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 3, "nis")) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + case 3: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, GermanStemmer.g_s_ending, 98, 116)) { + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + cursor$2 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_3 = ((limit$0 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, GermanStemmer.a_2, 4); + if (among_var === 0) { + break lab2; + } + this.bra = cursor$1 = this.cursor; + if (! (! (this.I_p1 <= cursor$1) ? false : true)) { + break lab2; + } + switch (among_var) { + case 0: + break lab2; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, GermanStemmer.g_st_ending, 98, 116)) { + break lab2; + } + c = (this.cursor - 3 | 0); + if (this.limit_backward > c || c > this.limit) { + break lab2; + } + this.cursor = c; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + cursor$8 = this.cursor = (((limit$1 = this.limit) - v_3) | 0); + v_4 = ((limit$1 - cursor$8) | 0); + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, GermanStemmer.a_4, 8); + if (among_var === 0) { + break lab3; + } + this.bra = cursor$3 = this.cursor; + if (! (! (this.I_p2 <= cursor$3) ? false : true)) { + break lab3; + } + switch (among_var) { + case 0: + break lab3; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_5 = ((this.limit - this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ig")) { + this.cursor = ((this.limit - v_5) | 0); + break lab4; + } + this.bra = cursor$4 = this.cursor; + v_6 = ((this.limit - cursor$4) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + break lab5; + } + this.cursor = ((this.limit - v_5) | 0); + break lab4; + } + cursor$5 = this.cursor = ((this.limit - v_6) | 0); + if (! (! (this.I_p2 <= cursor$5) ? false : true)) { + this.cursor = ((this.limit - v_5) | 0); + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + case 2: + v_7 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + break lab6; + } + break lab3; + } + this.cursor = ((this.limit - v_7) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_8 = ((this.limit - this.cursor) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + this.ket = this.cursor; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + v_9 = ((this.limit - this.cursor) | 0); + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "er")) { + break lab9; + } + break lab8; + } + this.cursor = ((this.limit - v_9) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "en")) { + this.cursor = ((this.limit - v_8) | 0); + break lab7; + } + } + this.bra = cursor$6 = this.cursor; + if (! (! (this.I_p1 <= cursor$6) ? false : true)) { + this.cursor = ((this.limit - v_8) | 0); + break lab7; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_10 = ((this.limit - this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, GermanStemmer.a_3, 2); + if (among_var === 0) { + this.cursor = ((this.limit - v_10) | 0); + break lab10; + } + this.bra = cursor$7 = this.cursor; + if (! (! (this.I_p2 <= cursor$7) ? false : true)) { + this.cursor = ((this.limit - v_10) | 0); + break lab10; + } + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_10) | 0); + break lab10; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + } + } + this.cursor = ((this.limit - v_4) | 0); + return true; +}; + +GermanStemmer.prototype.r_standard_suffix = GermanStemmer.prototype.r_standard_suffix$; + +function GermanStemmer$r_standard_suffix$LGermanStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var lab0; + var lab1; + var lab2; + var c; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var cursor$0; + var cursor$1; + var limit$0; + var cursor$2; + var cursor$3; + var cursor$4; + var cursor$5; + var cursor$6; + var cursor$7; + var limit$1; + var cursor$8; + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, GermanStemmer.a_1, 7); + if (among_var === 0) { + break lab0; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + break lab0; + } + switch (among_var) { + case 0: + break lab0; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_2 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "s")) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + $this.bra = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 3, "nis")) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + case 3: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, GermanStemmer.g_s_ending, 98, 116)) { + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + cursor$2 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_3 = ((limit$0 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, GermanStemmer.a_2, 4); + if (among_var === 0) { + break lab2; + } + $this.bra = cursor$1 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$1) ? false : true)) { + break lab2; + } + switch (among_var) { + case 0: + break lab2; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, GermanStemmer.g_st_ending, 98, 116)) { + break lab2; + } + c = ($this.cursor - 3 | 0); + if ($this.limit_backward > c || c > $this.limit) { + break lab2; + } + $this.cursor = c; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + cursor$8 = $this.cursor = (((limit$1 = $this.limit) - v_3) | 0); + v_4 = ((limit$1 - cursor$8) | 0); + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, GermanStemmer.a_4, 8); + if (among_var === 0) { + break lab3; + } + $this.bra = cursor$3 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$3) ? false : true)) { + break lab3; + } + switch (among_var) { + case 0: + break lab3; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_5 = (($this.limit - $this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ig")) { + $this.cursor = (($this.limit - v_5) | 0); + break lab4; + } + $this.bra = cursor$4 = $this.cursor; + v_6 = (($this.limit - cursor$4) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + break lab5; + } + $this.cursor = (($this.limit - v_5) | 0); + break lab4; + } + cursor$5 = $this.cursor = (($this.limit - v_6) | 0); + if (! (! ($this.I_p2 <= cursor$5) ? false : true)) { + $this.cursor = (($this.limit - v_5) | 0); + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + case 2: + v_7 = (($this.limit - $this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + break lab6; + } + break lab3; + } + $this.cursor = (($this.limit - v_7) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_8 = (($this.limit - $this.cursor) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + $this.ket = $this.cursor; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + v_9 = (($this.limit - $this.cursor) | 0); + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "er")) { + break lab9; + } + break lab8; + } + $this.cursor = (($this.limit - v_9) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "en")) { + $this.cursor = (($this.limit - v_8) | 0); + break lab7; + } + } + $this.bra = cursor$6 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$6) ? false : true)) { + $this.cursor = (($this.limit - v_8) | 0); + break lab7; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_10 = (($this.limit - $this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, GermanStemmer.a_3, 2); + if (among_var === 0) { + $this.cursor = (($this.limit - v_10) | 0); + break lab10; + } + $this.bra = cursor$7 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$7) ? false : true)) { + $this.cursor = (($this.limit - v_10) | 0); + break lab10; + } + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_10) | 0); + break lab10; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + } + } + $this.cursor = (($this.limit - v_4) | 0); + return true; +}; + +GermanStemmer.r_standard_suffix$LGermanStemmer$ = GermanStemmer$r_standard_suffix$LGermanStemmer$; + +GermanStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_4; + var lab0; + var lab1; + var lab2; + var lab3; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! GermanStemmer$r_prelude$LGermanStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + v_2 = cursor$0; + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! GermanStemmer$r_mark_regions$LGermanStemmer$(this)) { + break lab1; + } + } + cursor$1 = this.cursor = v_2; + this.limit_backward = cursor$1; + this.cursor = this.limit; + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! GermanStemmer$r_standard_suffix$LGermanStemmer$(this)) { + break lab2; + } + } + cursor$2 = this.cursor = this.limit_backward; + v_4 = cursor$2; + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + if (! GermanStemmer$r_postlude$LGermanStemmer$(this)) { + break lab3; + } + } + this.cursor = v_4; + return true; +}; + +GermanStemmer.prototype.stem = GermanStemmer.prototype.stem$; + +GermanStemmer.prototype.equals$X = function (o) { + return o instanceof GermanStemmer; +}; + +GermanStemmer.prototype.equals = GermanStemmer.prototype.equals$X; + +function GermanStemmer$equals$LGermanStemmer$X($this, o) { + return o instanceof GermanStemmer; +}; + +GermanStemmer.equals$LGermanStemmer$X = GermanStemmer$equals$LGermanStemmer$X; + +GermanStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "GermanStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +GermanStemmer.prototype.hashCode = GermanStemmer.prototype.hashCode$; + +function GermanStemmer$hashCode$LGermanStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "GermanStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +GermanStemmer.hashCode$LGermanStemmer$ = GermanStemmer$hashCode$LGermanStemmer$; + +GermanStemmer.serialVersionUID = 1; +$__jsx_lazy_init(GermanStemmer, "methodObject", function () { + return new GermanStemmer(); +}); +$__jsx_lazy_init(GermanStemmer, "a_0", function () { + return [ new Among("", -1, 6), new Among("U", 0, 2), new Among("Y", 0, 1), new Among("\u00E4", 0, 3), new Among("\u00F6", 0, 4), new Among("\u00FC", 0, 5) ]; +}); +$__jsx_lazy_init(GermanStemmer, "a_1", function () { + return [ new Among("e", -1, 2), new Among("em", -1, 1), new Among("en", -1, 2), new Among("ern", -1, 1), new Among("er", -1, 1), new Among("s", -1, 3), new Among("es", 5, 2) ]; +}); +$__jsx_lazy_init(GermanStemmer, "a_2", function () { + return [ new Among("en", -1, 1), new Among("er", -1, 1), new Among("st", -1, 2), new Among("est", 2, 1) ]; +}); +$__jsx_lazy_init(GermanStemmer, "a_3", function () { + return [ new Among("ig", -1, 1), new Among("lich", -1, 1) ]; +}); +$__jsx_lazy_init(GermanStemmer, "a_4", function () { + return [ new Among("end", -1, 1), new Among("ig", -1, 2), new Among("ung", -1, 1), new Among("lich", -1, 3), new Among("isch", -1, 2), new Among("ik", -1, 2), new Among("heit", -1, 3), new Among("keit", -1, 4) ]; +}); +GermanStemmer.g_v = [ 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32, 8 ]; +GermanStemmer.g_s_ending = [ 117, 30, 5 ]; +GermanStemmer.g_st_ending = [ 117, 30, 4 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/german-stemmer.jsx": { + GermanStemmer: GermanStemmer, + GermanStemmer$: GermanStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var GermanStemmer = JSX.require("src/german-stemmer.jsx").GermanStemmer; diff --git a/sphinx/search/non-minified-js/hungarian-stemmer.js b/sphinx/search/non-minified-js/hungarian-stemmer.js new file mode 100644 index 000000000..c9a6347c6 --- /dev/null +++ b/sphinx/search/non-minified-js/hungarian-stemmer.js @@ -0,0 +1,2893 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function HungarianStemmer() { + BaseStemmer.call(this); + this.I_p1 = 0; +}; + +$__jsx_extend([HungarianStemmer], BaseStemmer); +HungarianStemmer.prototype.copy_from$LHungarianStemmer$ = function (other) { + this.I_p1 = other.I_p1; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +HungarianStemmer.prototype.copy_from = HungarianStemmer.prototype.copy_from$LHungarianStemmer$; + +HungarianStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var lab3; + var lab4; + var lab5; + var lab7; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + this.I_p1 = this.limit; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, HungarianStemmer.g_v, 97, 252)) { + break lab1; + } + golab2: + while (true) { + v_2 = this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, HungarianStemmer.g_v, 97, 252)) { + break lab3; + } + this.cursor = v_2; + break golab2; + } + cursor$0 = this.cursor = v_2; + if (cursor$0 >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_3 = this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_0, 8) === 0) { + break lab5; + } + break lab4; + } + cursor$1 = this.cursor = v_3; + if (cursor$1 >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + break lab0; + } + this.cursor = v_1; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, HungarianStemmer.g_v, 97, 252)) { + return false; + } + golab6: + while (true) { + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, HungarianStemmer.g_v, 97, 252)) { + break lab7; + } + break golab6; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + } + return true; +}; + +HungarianStemmer.prototype.r_mark_regions = HungarianStemmer.prototype.r_mark_regions$; + +function HungarianStemmer$r_mark_regions$LHungarianStemmer$($this) { + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var lab3; + var lab4; + var lab5; + var lab7; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + $this.I_p1 = $this.limit; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, HungarianStemmer.g_v, 97, 252)) { + break lab1; + } + golab2: + while (true) { + v_2 = $this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, HungarianStemmer.g_v, 97, 252)) { + break lab3; + } + $this.cursor = v_2; + break golab2; + } + cursor$0 = $this.cursor = v_2; + if (cursor$0 >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_3 = $this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_0, 8) === 0) { + break lab5; + } + break lab4; + } + cursor$1 = $this.cursor = v_3; + if (cursor$1 >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + break lab0; + } + $this.cursor = v_1; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, HungarianStemmer.g_v, 97, 252)) { + return false; + } + golab6: + while (true) { + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, HungarianStemmer.g_v, 97, 252)) { + break lab7; + } + break golab6; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + } + return true; +}; + +HungarianStemmer.r_mark_regions$LHungarianStemmer$ = HungarianStemmer$r_mark_regions$LHungarianStemmer$; + +HungarianStemmer.prototype.r_R1$ = function () { + return (! (this.I_p1 <= this.cursor) ? false : true); +}; + +HungarianStemmer.prototype.r_R1 = HungarianStemmer.prototype.r_R1$; + +function HungarianStemmer$r_R1$LHungarianStemmer$($this) { + return (! ($this.I_p1 <= $this.cursor) ? false : true); +}; + +HungarianStemmer.r_R1$LHungarianStemmer$ = HungarianStemmer$r_R1$LHungarianStemmer$; + +HungarianStemmer.prototype.r_v_ending$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_1, 2); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.prototype.r_v_ending = HungarianStemmer.prototype.r_v_ending$; + +function HungarianStemmer$r_v_ending$LHungarianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_1, 2); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.r_v_ending$LHungarianStemmer$ = HungarianStemmer$r_v_ending$LHungarianStemmer$; + +HungarianStemmer.prototype.r_double$ = function () { + var v_1; + v_1 = ((this.limit - this.cursor) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_2, 23) === 0) { + return false; + } + this.cursor = ((this.limit - v_1) | 0); + return true; +}; + +HungarianStemmer.prototype.r_double = HungarianStemmer.prototype.r_double$; + +function HungarianStemmer$r_double$LHungarianStemmer$($this) { + var v_1; + v_1 = (($this.limit - $this.cursor) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_2, 23) === 0) { + return false; + } + $this.cursor = (($this.limit - v_1) | 0); + return true; +}; + +HungarianStemmer.r_double$LHungarianStemmer$ = HungarianStemmer$r_double$LHungarianStemmer$; + +HungarianStemmer.prototype.r_undouble$ = function () { + var c; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.ket = cursor$0 = this.cursor; + c = (cursor$0 - 1 | 0); + if (this.limit_backward > c || c > this.limit) { + return false; + } + cursor$1 = this.cursor = c; + this.bra = cursor$1; + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +HungarianStemmer.prototype.r_undouble = HungarianStemmer.prototype.r_undouble$; + +function HungarianStemmer$r_undouble$LHungarianStemmer$($this) { + var c; + var cursor$0; + var cursor$1; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.ket = cursor$0 = $this.cursor; + c = (cursor$0 - 1 | 0); + if ($this.limit_backward > c || c > $this.limit) { + return false; + } + cursor$1 = $this.cursor = c; + $this.bra = cursor$1; + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +HungarianStemmer.r_undouble$LHungarianStemmer$ = HungarianStemmer$r_undouble$LHungarianStemmer$; + +HungarianStemmer.prototype.r_instrum$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_3, 2); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! HungarianStemmer$r_double$LHungarianStemmer$(this)) { + return false; + } + break; + case 2: + if (! HungarianStemmer$r_double$LHungarianStemmer$(this)) { + return false; + } + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : ! HungarianStemmer$r_undouble$LHungarianStemmer$(this) ? false : true); +}; + +HungarianStemmer.prototype.r_instrum = HungarianStemmer.prototype.r_instrum$; + +function HungarianStemmer$r_instrum$LHungarianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_3, 2); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! HungarianStemmer$r_double$LHungarianStemmer$($this)) { + return false; + } + break; + case 2: + if (! HungarianStemmer$r_double$LHungarianStemmer$($this)) { + return false; + } + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : ! HungarianStemmer$r_undouble$LHungarianStemmer$($this) ? false : true); +}; + +HungarianStemmer.r_instrum$LHungarianStemmer$ = HungarianStemmer$r_instrum$LHungarianStemmer$; + +HungarianStemmer.prototype.r_case$ = function () { + var cursor$0; + this.ket = this.cursor; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_4, 44) === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + return (! (! (this.I_p1 <= cursor$0) ? false : true) ? false : ! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : ! HungarianStemmer$r_v_ending$LHungarianStemmer$(this) ? false : true); +}; + +HungarianStemmer.prototype.r_case = HungarianStemmer.prototype.r_case$; + +function HungarianStemmer$r_case$LHungarianStemmer$($this) { + var cursor$0; + $this.ket = $this.cursor; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_4, 44) === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + return (! (! ($this.I_p1 <= cursor$0) ? false : true) ? false : ! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : ! HungarianStemmer$r_v_ending$LHungarianStemmer$($this) ? false : true); +}; + +HungarianStemmer.r_case$LHungarianStemmer$ = HungarianStemmer$r_case$LHungarianStemmer$; + +HungarianStemmer.prototype.r_case_special$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_5, 3); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.prototype.r_case_special = HungarianStemmer.prototype.r_case_special$; + +function HungarianStemmer$r_case_special$LHungarianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_5, 3); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.r_case_special$LHungarianStemmer$ = HungarianStemmer$r_case_special$LHungarianStemmer$; + +HungarianStemmer.prototype.r_case_other$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_6, 6); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.prototype.r_case_other = HungarianStemmer.prototype.r_case_other$; + +function HungarianStemmer$r_case_other$LHungarianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_6, 6); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.r_case_other$LHungarianStemmer$ = HungarianStemmer$r_case_other$LHungarianStemmer$; + +HungarianStemmer.prototype.r_factive$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_7, 2); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! HungarianStemmer$r_double$LHungarianStemmer$(this)) { + return false; + } + break; + case 2: + if (! HungarianStemmer$r_double$LHungarianStemmer$(this)) { + return false; + } + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : ! HungarianStemmer$r_undouble$LHungarianStemmer$(this) ? false : true); +}; + +HungarianStemmer.prototype.r_factive = HungarianStemmer.prototype.r_factive$; + +function HungarianStemmer$r_factive$LHungarianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_7, 2); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! HungarianStemmer$r_double$LHungarianStemmer$($this)) { + return false; + } + break; + case 2: + if (! HungarianStemmer$r_double$LHungarianStemmer$($this)) { + return false; + } + break; + } + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : ! HungarianStemmer$r_undouble$LHungarianStemmer$($this) ? false : true); +}; + +HungarianStemmer.r_factive$LHungarianStemmer$ = HungarianStemmer$r_factive$LHungarianStemmer$; + +HungarianStemmer.prototype.r_plural$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_8, 7); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.prototype.r_plural = HungarianStemmer.prototype.r_plural$; + +function HungarianStemmer$r_plural$LHungarianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_8, 7); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.r_plural$LHungarianStemmer$ = HungarianStemmer$r_plural$LHungarianStemmer$; + +HungarianStemmer.prototype.r_owned$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_9, 12); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 8: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.prototype.r_owned = HungarianStemmer.prototype.r_owned$; + +function HungarianStemmer$r_owned$LHungarianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_9, 12); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 8: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.r_owned$LHungarianStemmer$ = HungarianStemmer$r_owned$LHungarianStemmer$; + +HungarianStemmer.prototype.r_sing_owner$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_10, 31); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 8: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 10: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 11: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 12: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 13: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 14: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 15: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 16: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 17: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 18: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 19: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 20: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.prototype.r_sing_owner = HungarianStemmer.prototype.r_sing_owner$; + +function HungarianStemmer$r_sing_owner$LHungarianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_10, 31); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 8: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 10: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 11: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 12: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 13: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 14: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 15: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 16: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 17: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 18: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 19: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 20: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.r_sing_owner$LHungarianStemmer$ = HungarianStemmer$r_sing_owner$LHungarianStemmer$; + +HungarianStemmer.prototype.r_plur_owner$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, HungarianStemmer.a_11, 42); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 8: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 10: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 11: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 12: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 13: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 14: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 15: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 16: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 17: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 18: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 19: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 20: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 21: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 22: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 23: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 24: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 25: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 26: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 27: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 28: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 29: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.prototype.r_plur_owner = HungarianStemmer.prototype.r_plur_owner$; + +function HungarianStemmer$r_plur_owner$LHungarianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, HungarianStemmer.a_11, 42); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 8: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 10: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 11: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 12: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 13: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 14: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 15: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 16: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 17: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 18: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 19: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 20: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 21: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 22: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 23: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 24: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 25: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 26: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 27: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 28: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 29: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +HungarianStemmer.r_plur_owner$LHungarianStemmer$ = HungarianStemmer$r_plur_owner$LHungarianStemmer$; + +HungarianStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var limit$2; + var cursor$3; + var limit$3; + var cursor$4; + var limit$4; + var cursor$5; + var limit$5; + var cursor$6; + var limit$6; + var cursor$7; + var limit$7; + var cursor$8; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! HungarianStemmer$r_mark_regions$LHungarianStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + this.limit_backward = cursor$0; + cursor$1 = this.cursor = limit$0 = this.limit; + v_2 = ((limit$0 - cursor$1) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! HungarianStemmer$r_instrum$LHungarianStemmer$(this)) { + break lab1; + } + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_2) | 0); + v_3 = ((limit$1 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! HungarianStemmer$r_case$LHungarianStemmer$(this)) { + break lab2; + } + } + cursor$3 = this.cursor = (((limit$2 = this.limit) - v_3) | 0); + v_4 = ((limit$2 - cursor$3) | 0); + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + if (! HungarianStemmer$r_case_special$LHungarianStemmer$(this)) { + break lab3; + } + } + cursor$4 = this.cursor = (((limit$3 = this.limit) - v_4) | 0); + v_5 = ((limit$3 - cursor$4) | 0); + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! HungarianStemmer$r_case_other$LHungarianStemmer$(this)) { + break lab4; + } + } + cursor$5 = this.cursor = (((limit$4 = this.limit) - v_5) | 0); + v_6 = ((limit$4 - cursor$5) | 0); + lab5 = true; +lab5: + while (lab5 === true) { + lab5 = false; + if (! HungarianStemmer$r_factive$LHungarianStemmer$(this)) { + break lab5; + } + } + cursor$6 = this.cursor = (((limit$5 = this.limit) - v_6) | 0); + v_7 = ((limit$5 - cursor$6) | 0); + lab6 = true; +lab6: + while (lab6 === true) { + lab6 = false; + if (! HungarianStemmer$r_owned$LHungarianStemmer$(this)) { + break lab6; + } + } + cursor$7 = this.cursor = (((limit$6 = this.limit) - v_7) | 0); + v_8 = ((limit$6 - cursor$7) | 0); + lab7 = true; +lab7: + while (lab7 === true) { + lab7 = false; + if (! HungarianStemmer$r_sing_owner$LHungarianStemmer$(this)) { + break lab7; + } + } + cursor$8 = this.cursor = (((limit$7 = this.limit) - v_8) | 0); + v_9 = ((limit$7 - cursor$8) | 0); + lab8 = true; +lab8: + while (lab8 === true) { + lab8 = false; + if (! HungarianStemmer$r_plur_owner$LHungarianStemmer$(this)) { + break lab8; + } + } + this.cursor = ((this.limit - v_9) | 0); + lab9 = true; +lab9: + while (lab9 === true) { + lab9 = false; + if (! HungarianStemmer$r_plural$LHungarianStemmer$(this)) { + break lab9; + } + } + this.cursor = this.limit_backward; + return true; +}; + +HungarianStemmer.prototype.stem = HungarianStemmer.prototype.stem$; + +HungarianStemmer.prototype.equals$X = function (o) { + return o instanceof HungarianStemmer; +}; + +HungarianStemmer.prototype.equals = HungarianStemmer.prototype.equals$X; + +function HungarianStemmer$equals$LHungarianStemmer$X($this, o) { + return o instanceof HungarianStemmer; +}; + +HungarianStemmer.equals$LHungarianStemmer$X = HungarianStemmer$equals$LHungarianStemmer$X; + +HungarianStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "HungarianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +HungarianStemmer.prototype.hashCode = HungarianStemmer.prototype.hashCode$; + +function HungarianStemmer$hashCode$LHungarianStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "HungarianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +HungarianStemmer.hashCode$LHungarianStemmer$ = HungarianStemmer$hashCode$LHungarianStemmer$; + +HungarianStemmer.serialVersionUID = 1; +$__jsx_lazy_init(HungarianStemmer, "methodObject", function () { + return new HungarianStemmer(); +}); +$__jsx_lazy_init(HungarianStemmer, "a_0", function () { + return [ new Among("cs", -1, -1), new Among("dzs", -1, -1), new Among("gy", -1, -1), new Among("ly", -1, -1), new Among("ny", -1, -1), new Among("sz", -1, -1), new Among("ty", -1, -1), new Among("zs", -1, -1) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_1", function () { + return [ new Among("\u00E1", -1, 1), new Among("\u00E9", -1, 2) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_2", function () { + return [ new Among("bb", -1, -1), new Among("cc", -1, -1), new Among("dd", -1, -1), new Among("ff", -1, -1), new Among("gg", -1, -1), new Among("jj", -1, -1), new Among("kk", -1, -1), new Among("ll", -1, -1), new Among("mm", -1, -1), new Among("nn", -1, -1), new Among("pp", -1, -1), new Among("rr", -1, -1), new Among("ccs", -1, -1), new Among("ss", -1, -1), new Among("zzs", -1, -1), new Among("tt", -1, -1), new Among("vv", -1, -1), new Among("ggy", -1, -1), new Among("lly", -1, -1), new Among("nny", -1, -1), new Among("tty", -1, -1), new Among("ssz", -1, -1), new Among("zz", -1, -1) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_3", function () { + return [ new Among("al", -1, 1), new Among("el", -1, 2) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_4", function () { + return [ new Among("ba", -1, -1), new Among("ra", -1, -1), new Among("be", -1, -1), new Among("re", -1, -1), new Among("ig", -1, -1), new Among("nak", -1, -1), new Among("nek", -1, -1), new Among("val", -1, -1), new Among("vel", -1, -1), new Among("ul", -1, -1), new Among("n\u00E1l", -1, -1), new Among("n\u00E9l", -1, -1), new Among("b\u00F3l", -1, -1), new Among("r\u00F3l", -1, -1), new Among("t\u00F3l", -1, -1), new Among("b\u00F5l", -1, -1), new Among("r\u00F5l", -1, -1), new Among("t\u00F5l", -1, -1), new Among("\u00FCl", -1, -1), new Among("n", -1, -1), new Among("an", 19, -1), new Among("ban", 20, -1), new Among("en", 19, -1), new Among("ben", 22, -1), new Among("k\u00E9ppen", 22, -1), new Among("on", 19, -1), new Among("\u00F6n", 19, -1), new Among("k\u00E9pp", -1, -1), new Among("kor", -1, -1), new Among("t", -1, -1), new Among("at", 29, -1), new Among("et", 29, -1), new Among("k\u00E9nt", 29, -1), new Among("ank\u00E9nt", 32, -1), new Among("enk\u00E9nt", 32, -1), new Among("onk\u00E9nt", 32, -1), new Among("ot", 29, -1), new Among("\u00E9rt", 29, -1), new Among("\u00F6t", 29, -1), new Among("hez", -1, -1), new Among("hoz", -1, -1), new Among("h\u00F6z", -1, -1), new Among("v\u00E1", -1, -1), new Among("v\u00E9", -1, -1) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_5", function () { + return [ new Among("\u00E1n", -1, 2), new Among("\u00E9n", -1, 1), new Among("\u00E1nk\u00E9nt", -1, 3) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_6", function () { + return [ new Among("stul", -1, 2), new Among("astul", 0, 1), new Among("\u00E1stul", 0, 3), new Among("st\u00FCl", -1, 2), new Among("est\u00FCl", 3, 1), new Among("\u00E9st\u00FCl", 3, 4) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_7", function () { + return [ new Among("\u00E1", -1, 1), new Among("\u00E9", -1, 2) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_8", function () { + return [ new Among("k", -1, 7), new Among("ak", 0, 4), new Among("ek", 0, 6), new Among("ok", 0, 5), new Among("\u00E1k", 0, 1), new Among("\u00E9k", 0, 2), new Among("\u00F6k", 0, 3) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_9", function () { + return [ new Among("\u00E9i", -1, 7), new Among("\u00E1\u00E9i", 0, 6), new Among("\u00E9\u00E9i", 0, 5), new Among("\u00E9", -1, 9), new Among("k\u00E9", 3, 4), new Among("ak\u00E9", 4, 1), new Among("ek\u00E9", 4, 1), new Among("ok\u00E9", 4, 1), new Among("\u00E1k\u00E9", 4, 3), new Among("\u00E9k\u00E9", 4, 2), new Among("\u00F6k\u00E9", 4, 1), new Among("\u00E9\u00E9", 3, 8) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_10", function () { + return [ new Among("a", -1, 18), new Among("ja", 0, 17), new Among("d", -1, 16), new Among("ad", 2, 13), new Among("ed", 2, 13), new Among("od", 2, 13), new Among("\u00E1d", 2, 14), new Among("\u00E9d", 2, 15), new Among("\u00F6d", 2, 13), new Among("e", -1, 18), new Among("je", 9, 17), new Among("nk", -1, 4), new Among("unk", 11, 1), new Among("\u00E1nk", 11, 2), new Among("\u00E9nk", 11, 3), new Among("\u00FCnk", 11, 1), new Among("uk", -1, 8), new Among("juk", 16, 7), new Among("\u00E1juk", 17, 5), new Among("\u00FCk", -1, 8), new Among("j\u00FCk", 19, 7), new Among("\u00E9j\u00FCk", 20, 6), new Among("m", -1, 12), new Among("am", 22, 9), new Among("em", 22, 9), new Among("om", 22, 9), new Among("\u00E1m", 22, 10), new Among("\u00E9m", 22, 11), new Among("o", -1, 18), new Among("\u00E1", -1, 19), new Among("\u00E9", -1, 20) ]; +}); +$__jsx_lazy_init(HungarianStemmer, "a_11", function () { + return [ new Among("id", -1, 10), new Among("aid", 0, 9), new Among("jaid", 1, 6), new Among("eid", 0, 9), new Among("jeid", 3, 6), new Among("\u00E1id", 0, 7), new Among("\u00E9id", 0, 8), new Among("i", -1, 15), new Among("ai", 7, 14), new Among("jai", 8, 11), new Among("ei", 7, 14), new Among("jei", 10, 11), new Among("\u00E1i", 7, 12), new Among("\u00E9i", 7, 13), new Among("itek", -1, 24), new Among("eitek", 14, 21), new Among("jeitek", 15, 20), new Among("\u00E9itek", 14, 23), new Among("ik", -1, 29), new Among("aik", 18, 26), new Among("jaik", 19, 25), new Among("eik", 18, 26), new Among("jeik", 21, 25), new Among("\u00E1ik", 18, 27), new Among("\u00E9ik", 18, 28), new Among("ink", -1, 20), new Among("aink", 25, 17), new Among("jaink", 26, 16), new Among("eink", 25, 17), new Among("jeink", 28, 16), new Among("\u00E1ink", 25, 18), new Among("\u00E9ink", 25, 19), new Among("aitok", -1, 21), new Among("jaitok", 32, 20), new Among("\u00E1itok", -1, 22), new Among("im", -1, 5), new Among("aim", 35, 4), new Among("jaim", 36, 1), new Among("eim", 35, 4), new Among("jeim", 38, 1), new Among("\u00E1im", 35, 2), new Among("\u00E9im", 35, 3) ]; +}); +HungarianStemmer.g_v = [ 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 52, 14 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/hungarian-stemmer.jsx": { + HungarianStemmer: HungarianStemmer, + HungarianStemmer$: HungarianStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var HungarianStemmer = JSX.require("src/hungarian-stemmer.jsx").HungarianStemmer; diff --git a/sphinx/search/non-minified-js/italian-stemmer.js b/sphinx/search/non-minified-js/italian-stemmer.js new file mode 100644 index 000000000..ca16ff24c --- /dev/null +++ b/sphinx/search/non-minified-js/italian-stemmer.js @@ -0,0 +1,2978 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function ItalianStemmer() { + BaseStemmer.call(this); + this.I_p2 = 0; + this.I_p1 = 0; + this.I_pV = 0; +}; + +$__jsx_extend([ItalianStemmer], BaseStemmer); +ItalianStemmer.prototype.copy_from$LItalianStemmer$ = function (other) { + this.I_p2 = other.I_p2; + this.I_p1 = other.I_p1; + this.I_pV = other.I_pV; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +ItalianStemmer.prototype.copy_from = ItalianStemmer.prototype.copy_from$LItalianStemmer$; + +ItalianStemmer.prototype.r_prelude$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var lab1; + var lab3; + var lab5; + var lab6; + var lab7; + var cursor$0; + var $__jsx_postinc_t; + v_1 = this.cursor; +replab0: + while (true) { + v_2 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, ItalianStemmer.a_0, 7); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "\u00E0")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "\u00E8")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "\u00EC")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "\u00F2")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "\u00F9")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "qU")) { + return false; + } + break; + case 7: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_2; + break replab0; + } + this.cursor = v_1; +replab2: + while (true) { + v_3 = this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + golab4: + while (true) { + v_4 = this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab5; + } + this.bra = this.cursor; + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + v_5 = this.cursor; + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "u")) { + break lab7; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab7; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "U")) { + return false; + } + break lab6; + } + this.cursor = v_5; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "i")) { + break lab5; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab5; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "I")) { + return false; + } + } + this.cursor = v_4; + break golab4; + } + cursor$0 = this.cursor = v_4; + if (cursor$0 >= this.limit) { + break lab3; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab2; + } + this.cursor = v_3; + break replab2; + } + return true; +}; + +ItalianStemmer.prototype.r_prelude = ItalianStemmer.prototype.r_prelude$; + +function ItalianStemmer$r_prelude$LItalianStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var lab1; + var lab3; + var lab5; + var lab6; + var lab7; + var cursor$0; + var $__jsx_postinc_t; + v_1 = $this.cursor; +replab0: + while (true) { + v_2 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, ItalianStemmer.a_0, 7); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "\u00E0")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "\u00E8")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "\u00EC")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "\u00F2")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "\u00F9")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "qU")) { + return false; + } + break; + case 7: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_2; + break replab0; + } + $this.cursor = v_1; +replab2: + while (true) { + v_3 = $this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + golab4: + while (true) { + v_4 = $this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab5; + } + $this.bra = $this.cursor; + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + v_5 = $this.cursor; + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "u")) { + break lab7; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab7; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "U")) { + return false; + } + break lab6; + } + $this.cursor = v_5; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "i")) { + break lab5; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab5; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "I")) { + return false; + } + } + $this.cursor = v_4; + break golab4; + } + cursor$0 = $this.cursor = v_4; + if (cursor$0 >= $this.limit) { + break lab3; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab2; + } + $this.cursor = v_3; + break replab2; + } + return true; +}; + +ItalianStemmer.r_prelude$LItalianStemmer$ = ItalianStemmer$r_prelude$LItalianStemmer$; + +ItalianStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_2; + var v_3; + var v_6; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab6; + var lab8; + var lab9; + var lab10; + var lab12; + var lab13; + var lab15; + var lab17; + var lab19; + var lab21; + var limit$0; + var cursor$0; + var $__jsx_postinc_t; + this.I_pV = limit$0 = this.limit; + this.I_p1 = limit$0; + this.I_p2 = limit$0; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab2; + } + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab4; + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab6; + } + break golab5; + } + if (this.cursor >= this.limit) { + break lab4; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab3; + } + this.cursor = v_3; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab2; + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab8; + } + break golab7; + } + if (this.cursor >= this.limit) { + break lab2; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + break lab1; + } + this.cursor = v_2; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab0; + } + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_6 = this.cursor; + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab10; + } + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab12; + } + break golab11; + } + if (this.cursor >= this.limit) { + break lab10; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab9; + } + this.cursor = v_6; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab0; + } + if (this.cursor >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + this.I_pV = this.cursor; + } + cursor$0 = this.cursor = v_1; + v_8 = cursor$0; + lab13 = true; +lab13: + while (lab13 === true) { + lab13 = false; + golab14: + while (true) { + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab15; + } + break golab14; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab16: + while (true) { + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab17; + } + break golab16; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + golab18: + while (true) { + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab19; + } + break golab18; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab20: + while (true) { + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, ItalianStemmer.g_v, 97, 249)) { + break lab21; + } + break golab20; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + } + this.cursor = v_8; + return true; +}; + +ItalianStemmer.prototype.r_mark_regions = ItalianStemmer.prototype.r_mark_regions$; + +function ItalianStemmer$r_mark_regions$LItalianStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_6; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab6; + var lab8; + var lab9; + var lab10; + var lab12; + var lab13; + var lab15; + var lab17; + var lab19; + var lab21; + var limit$0; + var cursor$0; + var $__jsx_postinc_t; + $this.I_pV = limit$0 = $this.limit; + $this.I_p1 = limit$0; + $this.I_p2 = limit$0; + v_1 = $this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = $this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab2; + } + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = $this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab4; + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab6; + } + break golab5; + } + if ($this.cursor >= $this.limit) { + break lab4; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab3; + } + $this.cursor = v_3; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab2; + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab8; + } + break golab7; + } + if ($this.cursor >= $this.limit) { + break lab2; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + break lab1; + } + $this.cursor = v_2; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab0; + } + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_6 = $this.cursor; + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab10; + } + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab12; + } + break golab11; + } + if ($this.cursor >= $this.limit) { + break lab10; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab9; + } + $this.cursor = v_6; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab0; + } + if ($this.cursor >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + $this.I_pV = $this.cursor; + } + cursor$0 = $this.cursor = v_1; + v_8 = cursor$0; + lab13 = true; +lab13: + while (lab13 === true) { + lab13 = false; + golab14: + while (true) { + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab15; + } + break golab14; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab16: + while (true) { + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab17; + } + break golab16; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + golab18: + while (true) { + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab19; + } + break golab18; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab20: + while (true) { + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, ItalianStemmer.g_v, 97, 249)) { + break lab21; + } + break golab20; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p2 = $this.cursor; + } + $this.cursor = v_8; + return true; +}; + +ItalianStemmer.r_mark_regions$LItalianStemmer$ = ItalianStemmer$r_mark_regions$LItalianStemmer$; + +ItalianStemmer.prototype.r_postlude$ = function () { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, ItalianStemmer.a_1, 3); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 3: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +ItalianStemmer.prototype.r_postlude = ItalianStemmer.prototype.r_postlude$; + +function ItalianStemmer$r_postlude$LItalianStemmer$($this) { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, ItalianStemmer.a_1, 3); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 3: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +ItalianStemmer.r_postlude$LItalianStemmer$ = ItalianStemmer$r_postlude$LItalianStemmer$; + +ItalianStemmer.prototype.r_RV$ = function () { + return (! (this.I_pV <= this.cursor) ? false : true); +}; + +ItalianStemmer.prototype.r_RV = ItalianStemmer.prototype.r_RV$; + +function ItalianStemmer$r_RV$LItalianStemmer$($this) { + return (! ($this.I_pV <= $this.cursor) ? false : true); +}; + +ItalianStemmer.r_RV$LItalianStemmer$ = ItalianStemmer$r_RV$LItalianStemmer$; + +ItalianStemmer.prototype.r_R1$ = function () { + return (! (this.I_p1 <= this.cursor) ? false : true); +}; + +ItalianStemmer.prototype.r_R1 = ItalianStemmer.prototype.r_R1$; + +function ItalianStemmer$r_R1$LItalianStemmer$($this) { + return (! ($this.I_p1 <= $this.cursor) ? false : true); +}; + +ItalianStemmer.r_R1$LItalianStemmer$ = ItalianStemmer$r_R1$LItalianStemmer$; + +ItalianStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +ItalianStemmer.prototype.r_R2 = ItalianStemmer.prototype.r_R2$; + +function ItalianStemmer$r_R2$LItalianStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +ItalianStemmer.r_R2$LItalianStemmer$ = ItalianStemmer$r_R2$LItalianStemmer$; + +ItalianStemmer.prototype.r_attached_pronoun$ = function () { + var among_var; + this.ket = this.cursor; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, ItalianStemmer.a_2, 37) === 0) { + return false; + } + this.bra = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, ItalianStemmer.a_3, 5); + if (among_var === 0) { + return false; + } + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + } + return true; +}; + +ItalianStemmer.prototype.r_attached_pronoun = ItalianStemmer.prototype.r_attached_pronoun$; + +function ItalianStemmer$r_attached_pronoun$LItalianStemmer$($this) { + var among_var; + $this.ket = $this.cursor; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, ItalianStemmer.a_2, 37) === 0) { + return false; + } + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, ItalianStemmer.a_3, 5); + if (among_var === 0) { + return false; + } + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + } + return true; +}; + +ItalianStemmer.r_attached_pronoun$LItalianStemmer$ = ItalianStemmer$r_attached_pronoun$LItalianStemmer$; + +ItalianStemmer.prototype.r_standard_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var lab0; + var lab1; + var lab2; + var lab3; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var cursor$4; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, ItalianStemmer.a_6, 51); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ic")) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p2 <= cursor$0) ? false : true)) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + case 3: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "log")) { + return false; + } + break; + case 4: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 5: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ente")) { + return false; + } + break; + case 6: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 7: + if (! (! (this.I_p1 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_2 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, ItalianStemmer.a_4, 4); + if (among_var === 0) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + this.bra = cursor$1 = this.cursor; + if (! (! (this.I_p2 <= cursor$1) ? false : true)) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_2) | 0); + break lab1; + case 1: + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "at")) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + this.bra = cursor$2 = this.cursor; + if (! (! (this.I_p2 <= cursor$2) ? false : true)) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + case 8: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_3 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, ItalianStemmer.a_5, 3); + if (among_var === 0) { + this.cursor = ((this.limit - v_3) | 0); + break lab2; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_3) | 0); + break lab2; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_3) | 0); + break lab2; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + case 9: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_4 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "at")) { + this.cursor = ((this.limit - v_4) | 0); + break lab3; + } + this.bra = cursor$3 = this.cursor; + if (! (! (this.I_p2 <= cursor$3) ? false : true)) { + this.cursor = ((this.limit - v_4) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ic")) { + this.cursor = ((this.limit - v_4) | 0); + break lab3; + } + this.bra = cursor$4 = this.cursor; + if (! (! (this.I_p2 <= cursor$4) ? false : true)) { + this.cursor = ((this.limit - v_4) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + } + return true; +}; + +ItalianStemmer.prototype.r_standard_suffix = ItalianStemmer.prototype.r_standard_suffix$; + +function ItalianStemmer$r_standard_suffix$LItalianStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var lab0; + var lab1; + var lab2; + var lab3; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var cursor$4; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, ItalianStemmer.a_6, 51); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ic")) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$0) ? false : true)) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + case 3: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "log")) { + return false; + } + break; + case 4: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 5: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ente")) { + return false; + } + break; + case 6: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 7: + if (! (! ($this.I_p1 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_2 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, ItalianStemmer.a_4, 4); + if (among_var === 0) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + $this.bra = cursor$1 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$1) ? false : true)) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + case 1: + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "at")) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + $this.bra = cursor$2 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$2) ? false : true)) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + case 8: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_3 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, ItalianStemmer.a_5, 3); + if (among_var === 0) { + $this.cursor = (($this.limit - v_3) | 0); + break lab2; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_3) | 0); + break lab2; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab2; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + case 9: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_4 = (($this.limit - $this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "at")) { + $this.cursor = (($this.limit - v_4) | 0); + break lab3; + } + $this.bra = cursor$3 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$3) ? false : true)) { + $this.cursor = (($this.limit - v_4) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ic")) { + $this.cursor = (($this.limit - v_4) | 0); + break lab3; + } + $this.bra = cursor$4 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$4) ? false : true)) { + $this.cursor = (($this.limit - v_4) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + } + return true; +}; + +ItalianStemmer.r_standard_suffix$LItalianStemmer$ = ItalianStemmer$r_standard_suffix$LItalianStemmer$; + +ItalianStemmer.prototype.r_verb_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_pV) { + return false; + } + cursor$1 = this.cursor = this.I_pV; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, ItalianStemmer.a_7, 87); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.limit_backward = v_2; + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + this.limit_backward = v_2; + return true; +}; + +ItalianStemmer.prototype.r_verb_suffix = ItalianStemmer.prototype.r_verb_suffix$; + +function ItalianStemmer$r_verb_suffix$LItalianStemmer$($this) { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_pV) { + return false; + } + cursor$1 = $this.cursor = $this.I_pV; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, ItalianStemmer.a_7, 87); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.limit_backward = v_2; + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + $this.limit_backward = v_2; + return true; +}; + +ItalianStemmer.r_verb_suffix$LItalianStemmer$ = ItalianStemmer$r_verb_suffix$LItalianStemmer$; + +ItalianStemmer.prototype.r_vowel_suffix$ = function () { + var v_1; + var v_2; + var lab0; + var lab1; + var cursor$0; + var cursor$1; + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, ItalianStemmer.g_AEIO, 97, 242)) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_pV <= cursor$0) ? false : true)) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "i")) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = cursor$1 = this.cursor; + if (! (! (this.I_pV <= cursor$1) ? false : true)) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + v_2 = ((this.limit - this.cursor) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "h")) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + this.bra = this.cursor; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, ItalianStemmer.g_CG, 99, 103)) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + return true; +}; + +ItalianStemmer.prototype.r_vowel_suffix = ItalianStemmer.prototype.r_vowel_suffix$; + +function ItalianStemmer$r_vowel_suffix$LItalianStemmer$($this) { + var v_1; + var v_2; + var lab0; + var lab1; + var cursor$0; + var cursor$1; + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, ItalianStemmer.g_AEIO, 97, 242)) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_pV <= cursor$0) ? false : true)) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "i")) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = cursor$1 = $this.cursor; + if (! (! ($this.I_pV <= cursor$1) ? false : true)) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + v_2 = (($this.limit - $this.cursor) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "h")) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + $this.bra = $this.cursor; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, ItalianStemmer.g_CG, 99, 103)) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + return true; +}; + +ItalianStemmer.r_vowel_suffix$LItalianStemmer$ = ItalianStemmer$r_vowel_suffix$LItalianStemmer$; + +ItalianStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_7; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var cursor$0; + var cursor$1; + var limit$0; + var cursor$2; + var limit$1; + var cursor$3; + var cursor$4; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! ItalianStemmer$r_prelude$LItalianStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + v_2 = cursor$0; + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! ItalianStemmer$r_mark_regions$LItalianStemmer$(this)) { + break lab1; + } + } + cursor$1 = this.cursor = v_2; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = limit$0 = this.limit; + v_3 = ((limit$0 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! ItalianStemmer$r_attached_pronoun$LItalianStemmer$(this)) { + break lab2; + } + } + cursor$3 = this.cursor = (((limit$1 = this.limit) - v_3) | 0); + v_4 = ((limit$1 - cursor$3) | 0); + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_5 = ((this.limit - this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! ItalianStemmer$r_standard_suffix$LItalianStemmer$(this)) { + break lab5; + } + break lab4; + } + this.cursor = ((this.limit - v_5) | 0); + if (! ItalianStemmer$r_verb_suffix$LItalianStemmer$(this)) { + break lab3; + } + } + } + this.cursor = ((this.limit - v_4) | 0); + lab6 = true; +lab6: + while (lab6 === true) { + lab6 = false; + if (! ItalianStemmer$r_vowel_suffix$LItalianStemmer$(this)) { + break lab6; + } + } + cursor$4 = this.cursor = this.limit_backward; + v_7 = cursor$4; + lab7 = true; +lab7: + while (lab7 === true) { + lab7 = false; + if (! ItalianStemmer$r_postlude$LItalianStemmer$(this)) { + break lab7; + } + } + this.cursor = v_7; + return true; +}; + +ItalianStemmer.prototype.stem = ItalianStemmer.prototype.stem$; + +ItalianStemmer.prototype.equals$X = function (o) { + return o instanceof ItalianStemmer; +}; + +ItalianStemmer.prototype.equals = ItalianStemmer.prototype.equals$X; + +function ItalianStemmer$equals$LItalianStemmer$X($this, o) { + return o instanceof ItalianStemmer; +}; + +ItalianStemmer.equals$LItalianStemmer$X = ItalianStemmer$equals$LItalianStemmer$X; + +ItalianStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "ItalianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +ItalianStemmer.prototype.hashCode = ItalianStemmer.prototype.hashCode$; + +function ItalianStemmer$hashCode$LItalianStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "ItalianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +ItalianStemmer.hashCode$LItalianStemmer$ = ItalianStemmer$hashCode$LItalianStemmer$; + +ItalianStemmer.serialVersionUID = 1; +$__jsx_lazy_init(ItalianStemmer, "methodObject", function () { + return new ItalianStemmer(); +}); +$__jsx_lazy_init(ItalianStemmer, "a_0", function () { + return [ new Among("", -1, 7), new Among("qu", 0, 6), new Among("\u00E1", 0, 1), new Among("\u00E9", 0, 2), new Among("\u00ED", 0, 3), new Among("\u00F3", 0, 4), new Among("\u00FA", 0, 5) ]; +}); +$__jsx_lazy_init(ItalianStemmer, "a_1", function () { + return [ new Among("", -1, 3), new Among("I", 0, 1), new Among("U", 0, 2) ]; +}); +$__jsx_lazy_init(ItalianStemmer, "a_2", function () { + return [ new Among("la", -1, -1), new Among("cela", 0, -1), new Among("gliela", 0, -1), new Among("mela", 0, -1), new Among("tela", 0, -1), new Among("vela", 0, -1), new Among("le", -1, -1), new Among("cele", 6, -1), new Among("gliele", 6, -1), new Among("mele", 6, -1), new Among("tele", 6, -1), new Among("vele", 6, -1), new Among("ne", -1, -1), new Among("cene", 12, -1), new Among("gliene", 12, -1), new Among("mene", 12, -1), new Among("sene", 12, -1), new Among("tene", 12, -1), new Among("vene", 12, -1), new Among("ci", -1, -1), new Among("li", -1, -1), new Among("celi", 20, -1), new Among("glieli", 20, -1), new Among("meli", 20, -1), new Among("teli", 20, -1), new Among("veli", 20, -1), new Among("gli", 20, -1), new Among("mi", -1, -1), new Among("si", -1, -1), new Among("ti", -1, -1), new Among("vi", -1, -1), new Among("lo", -1, -1), new Among("celo", 31, -1), new Among("glielo", 31, -1), new Among("melo", 31, -1), new Among("telo", 31, -1), new Among("velo", 31, -1) ]; +}); +$__jsx_lazy_init(ItalianStemmer, "a_3", function () { + return [ new Among("ando", -1, 1), new Among("endo", -1, 1), new Among("ar", -1, 2), new Among("er", -1, 2), new Among("ir", -1, 2) ]; +}); +$__jsx_lazy_init(ItalianStemmer, "a_4", function () { + return [ new Among("ic", -1, -1), new Among("abil", -1, -1), new Among("os", -1, -1), new Among("iv", -1, 1) ]; +}); +$__jsx_lazy_init(ItalianStemmer, "a_5", function () { + return [ new Among("ic", -1, 1), new Among("abil", -1, 1), new Among("iv", -1, 1) ]; +}); +$__jsx_lazy_init(ItalianStemmer, "a_6", function () { + return [ new Among("ica", -1, 1), new Among("logia", -1, 3), new Among("osa", -1, 1), new Among("ista", -1, 1), new Among("iva", -1, 9), new Among("anza", -1, 1), new Among("enza", -1, 5), new Among("ice", -1, 1), new Among("atrice", 7, 1), new Among("iche", -1, 1), new Among("logie", -1, 3), new Among("abile", -1, 1), new Among("ibile", -1, 1), new Among("usione", -1, 4), new Among("azione", -1, 2), new Among("uzione", -1, 4), new Among("atore", -1, 2), new Among("ose", -1, 1), new Among("ante", -1, 1), new Among("mente", -1, 1), new Among("amente", 19, 7), new Among("iste", -1, 1), new Among("ive", -1, 9), new Among("anze", -1, 1), new Among("enze", -1, 5), new Among("ici", -1, 1), new Among("atrici", 25, 1), new Among("ichi", -1, 1), new Among("abili", -1, 1), new Among("ibili", -1, 1), new Among("ismi", -1, 1), new Among("usioni", -1, 4), new Among("azioni", -1, 2), new Among("uzioni", -1, 4), new Among("atori", -1, 2), new Among("osi", -1, 1), new Among("anti", -1, 1), new Among("amenti", -1, 6), new Among("imenti", -1, 6), new Among("isti", -1, 1), new Among("ivi", -1, 9), new Among("ico", -1, 1), new Among("ismo", -1, 1), new Among("oso", -1, 1), new Among("amento", -1, 6), new Among("imento", -1, 6), new Among("ivo", -1, 9), new Among("it\u00E0", -1, 8), new Among("ist\u00E0", -1, 1), new Among("ist\u00E8", -1, 1), new Among("ist\u00EC", -1, 1) ]; +}); +$__jsx_lazy_init(ItalianStemmer, "a_7", function () { + return [ new Among("isca", -1, 1), new Among("enda", -1, 1), new Among("ata", -1, 1), new Among("ita", -1, 1), new Among("uta", -1, 1), new Among("ava", -1, 1), new Among("eva", -1, 1), new Among("iva", -1, 1), new Among("erebbe", -1, 1), new Among("irebbe", -1, 1), new Among("isce", -1, 1), new Among("ende", -1, 1), new Among("are", -1, 1), new Among("ere", -1, 1), new Among("ire", -1, 1), new Among("asse", -1, 1), new Among("ate", -1, 1), new Among("avate", 16, 1), new Among("evate", 16, 1), new Among("ivate", 16, 1), new Among("ete", -1, 1), new Among("erete", 20, 1), new Among("irete", 20, 1), new Among("ite", -1, 1), new Among("ereste", -1, 1), new Among("ireste", -1, 1), new Among("ute", -1, 1), new Among("erai", -1, 1), new Among("irai", -1, 1), new Among("isci", -1, 1), new Among("endi", -1, 1), new Among("erei", -1, 1), new Among("irei", -1, 1), new Among("assi", -1, 1), new Among("ati", -1, 1), new Among("iti", -1, 1), new Among("eresti", -1, 1), new Among("iresti", -1, 1), new Among("uti", -1, 1), new Among("avi", -1, 1), new Among("evi", -1, 1), new Among("ivi", -1, 1), new Among("isco", -1, 1), new Among("ando", -1, 1), new Among("endo", -1, 1), new Among("Yamo", -1, 1), new Among("iamo", -1, 1), new Among("avamo", -1, 1), new Among("evamo", -1, 1), new Among("ivamo", -1, 1), new Among("eremo", -1, 1), new Among("iremo", -1, 1), new Among("assimo", -1, 1), new Among("ammo", -1, 1), new Among("emmo", -1, 1), new Among("eremmo", 54, 1), new Among("iremmo", 54, 1), new Among("immo", -1, 1), new Among("ano", -1, 1), new Among("iscano", 58, 1), new Among("avano", 58, 1), new Among("evano", 58, 1), new Among("ivano", 58, 1), new Among("eranno", -1, 1), new Among("iranno", -1, 1), new Among("ono", -1, 1), new Among("iscono", 65, 1), new Among("arono", 65, 1), new Among("erono", 65, 1), new Among("irono", 65, 1), new Among("erebbero", -1, 1), new Among("irebbero", -1, 1), new Among("assero", -1, 1), new Among("essero", -1, 1), new Among("issero", -1, 1), new Among("ato", -1, 1), new Among("ito", -1, 1), new Among("uto", -1, 1), new Among("avo", -1, 1), new Among("evo", -1, 1), new Among("ivo", -1, 1), new Among("ar", -1, 1), new Among("ir", -1, 1), new Among("er\u00E0", -1, 1), new Among("ir\u00E0", -1, 1), new Among("er\u00F2", -1, 1), new Among("ir\u00F2", -1, 1) ]; +}); +ItalianStemmer.g_v = [ 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 8, 2, 1 ]; +ItalianStemmer.g_AEIO = [ 17, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 8, 2 ]; +ItalianStemmer.g_CG = [ 17 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/italian-stemmer.jsx": { + ItalianStemmer: ItalianStemmer, + ItalianStemmer$: ItalianStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var ItalianStemmer = JSX.require("src/italian-stemmer.jsx").ItalianStemmer; diff --git a/sphinx/search/non-minified-js/norwegian-stemmer.js b/sphinx/search/non-minified-js/norwegian-stemmer.js new file mode 100644 index 000000000..38b64c5a8 --- /dev/null +++ b/sphinx/search/non-minified-js/norwegian-stemmer.js @@ -0,0 +1,1771 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function NorwegianStemmer() { + BaseStemmer.call(this); + this.I_x = 0; + this.I_p1 = 0; +}; + +$__jsx_extend([NorwegianStemmer], BaseStemmer); +NorwegianStemmer.prototype.copy_from$LNorwegianStemmer$ = function (other) { + this.I_x = other.I_x; + this.I_p1 = other.I_p1; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +NorwegianStemmer.prototype.copy_from = NorwegianStemmer.prototype.copy_from$LNorwegianStemmer$; + +NorwegianStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_2; + var c; + var lab1; + var lab3; + var lab4; + var cursor$0; + var limit$0; + var cursor$1; + var cursor$2; + var $__jsx_postinc_t; + this.I_p1 = limit$0 = this.limit; + v_1 = cursor$0 = this.cursor; + c = (cursor$0 + 3 | 0); + if (0 > c || c > limit$0) { + return false; + } + cursor$2 = this.cursor = c; + this.I_x = cursor$2; + this.cursor = v_1; +golab0: + while (true) { + v_2 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, NorwegianStemmer.g_v, 97, 248)) { + break lab1; + } + this.cursor = v_2; + break golab0; + } + cursor$1 = this.cursor = v_2; + if (cursor$1 >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, NorwegianStemmer.g_v, 97, 248)) { + break lab3; + } + break golab2; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! (this.I_p1 < this.I_x)) { + break lab4; + } + this.I_p1 = this.I_x; + } + return true; +}; + +NorwegianStemmer.prototype.r_mark_regions = NorwegianStemmer.prototype.r_mark_regions$; + +function NorwegianStemmer$r_mark_regions$LNorwegianStemmer$($this) { + var v_1; + var v_2; + var c; + var lab1; + var lab3; + var lab4; + var cursor$0; + var limit$0; + var cursor$1; + var cursor$2; + var $__jsx_postinc_t; + $this.I_p1 = limit$0 = $this.limit; + v_1 = cursor$0 = $this.cursor; + c = (cursor$0 + 3 | 0); + if (0 > c || c > limit$0) { + return false; + } + cursor$2 = $this.cursor = c; + $this.I_x = cursor$2; + $this.cursor = v_1; +golab0: + while (true) { + v_2 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, NorwegianStemmer.g_v, 97, 248)) { + break lab1; + } + $this.cursor = v_2; + break golab0; + } + cursor$1 = $this.cursor = v_2; + if (cursor$1 >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, NorwegianStemmer.g_v, 97, 248)) { + break lab3; + } + break golab2; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! ($this.I_p1 < $this.I_x)) { + break lab4; + } + $this.I_p1 = $this.I_x; + } + return true; +}; + +NorwegianStemmer.r_mark_regions$LNorwegianStemmer$ = NorwegianStemmer$r_mark_regions$LNorwegianStemmer$; + +NorwegianStemmer.prototype.r_main_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, NorwegianStemmer.a_0, 29); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_3 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, NorwegianStemmer.g_s_ending, 98, 122)) { + break lab1; + } + break lab0; + } + this.cursor = ((this.limit - v_3) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "k")) { + return false; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, NorwegianStemmer.g_v, 97, 248)) { + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "er")) { + return false; + } + break; + } + return true; +}; + +NorwegianStemmer.prototype.r_main_suffix = NorwegianStemmer.prototype.r_main_suffix$; + +function NorwegianStemmer$r_main_suffix$LNorwegianStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, NorwegianStemmer.a_0, 29); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_3 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, NorwegianStemmer.g_s_ending, 98, 122)) { + break lab1; + } + break lab0; + } + $this.cursor = (($this.limit - v_3) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "k")) { + return false; + } + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, NorwegianStemmer.g_v, 97, 248)) { + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "er")) { + return false; + } + break; + } + return true; +}; + +NorwegianStemmer.r_main_suffix$LNorwegianStemmer$ = NorwegianStemmer$r_main_suffix$LNorwegianStemmer$; + +NorwegianStemmer.prototype.r_consonant_pair$ = function () { + var v_1; + var v_2; + var v_3; + var limit$0; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var limit_backward$0; + var $__jsx_postinc_t; + v_1 = (((limit$0 = this.limit) - (cursor$0 = this.cursor)) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_3 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_2) | 0); + this.ket = cursor$2; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, NorwegianStemmer.a_1, 2) === 0) { + this.limit_backward = v_3; + return false; + } + this.bra = this.cursor; + limit_backward$0 = this.limit_backward = v_3; + cursor$3 = this.cursor = ((this.limit - v_1) | 0); + if (cursor$3 <= limit_backward$0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +NorwegianStemmer.prototype.r_consonant_pair = NorwegianStemmer.prototype.r_consonant_pair$; + +function NorwegianStemmer$r_consonant_pair$LNorwegianStemmer$($this) { + var v_1; + var v_2; + var v_3; + var limit$0; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var limit_backward$0; + var $__jsx_postinc_t; + v_1 = (((limit$0 = $this.limit) - (cursor$0 = $this.cursor)) | 0); + v_2 = ((limit$0 - cursor$0) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_3 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_2) | 0); + $this.ket = cursor$2; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, NorwegianStemmer.a_1, 2) === 0) { + $this.limit_backward = v_3; + return false; + } + $this.bra = $this.cursor; + limit_backward$0 = $this.limit_backward = v_3; + cursor$3 = $this.cursor = (($this.limit - v_1) | 0); + if (cursor$3 <= limit_backward$0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +NorwegianStemmer.r_consonant_pair$LNorwegianStemmer$ = NorwegianStemmer$r_consonant_pair$LNorwegianStemmer$; + +NorwegianStemmer.prototype.r_other_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, NorwegianStemmer.a_2, 11); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +NorwegianStemmer.prototype.r_other_suffix = NorwegianStemmer.prototype.r_other_suffix$; + +function NorwegianStemmer$r_other_suffix$LNorwegianStemmer$($this) { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, NorwegianStemmer.a_2, 11); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +NorwegianStemmer.r_other_suffix$LNorwegianStemmer$ = NorwegianStemmer$r_other_suffix$LNorwegianStemmer$; + +NorwegianStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var lab2; + var lab3; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! NorwegianStemmer$r_mark_regions$LNorwegianStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + this.limit_backward = cursor$0; + cursor$1 = this.cursor = limit$0 = this.limit; + v_2 = ((limit$0 - cursor$1) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! NorwegianStemmer$r_main_suffix$LNorwegianStemmer$(this)) { + break lab1; + } + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_2) | 0); + v_3 = ((limit$1 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! NorwegianStemmer$r_consonant_pair$LNorwegianStemmer$(this)) { + break lab2; + } + } + this.cursor = ((this.limit - v_3) | 0); + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + if (! NorwegianStemmer$r_other_suffix$LNorwegianStemmer$(this)) { + break lab3; + } + } + this.cursor = this.limit_backward; + return true; +}; + +NorwegianStemmer.prototype.stem = NorwegianStemmer.prototype.stem$; + +NorwegianStemmer.prototype.equals$X = function (o) { + return o instanceof NorwegianStemmer; +}; + +NorwegianStemmer.prototype.equals = NorwegianStemmer.prototype.equals$X; + +function NorwegianStemmer$equals$LNorwegianStemmer$X($this, o) { + return o instanceof NorwegianStemmer; +}; + +NorwegianStemmer.equals$LNorwegianStemmer$X = NorwegianStemmer$equals$LNorwegianStemmer$X; + +NorwegianStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "NorwegianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +NorwegianStemmer.prototype.hashCode = NorwegianStemmer.prototype.hashCode$; + +function NorwegianStemmer$hashCode$LNorwegianStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "NorwegianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +NorwegianStemmer.hashCode$LNorwegianStemmer$ = NorwegianStemmer$hashCode$LNorwegianStemmer$; + +NorwegianStemmer.serialVersionUID = 1; +$__jsx_lazy_init(NorwegianStemmer, "methodObject", function () { + return new NorwegianStemmer(); +}); +$__jsx_lazy_init(NorwegianStemmer, "a_0", function () { + return [ new Among("a", -1, 1), new Among("e", -1, 1), new Among("ede", 1, 1), new Among("ande", 1, 1), new Among("ende", 1, 1), new Among("ane", 1, 1), new Among("ene", 1, 1), new Among("hetene", 6, 1), new Among("erte", 1, 3), new Among("en", -1, 1), new Among("heten", 9, 1), new Among("ar", -1, 1), new Among("er", -1, 1), new Among("heter", 12, 1), new Among("s", -1, 2), new Among("as", 14, 1), new Among("es", 14, 1), new Among("edes", 16, 1), new Among("endes", 16, 1), new Among("enes", 16, 1), new Among("hetenes", 19, 1), new Among("ens", 14, 1), new Among("hetens", 21, 1), new Among("ers", 14, 1), new Among("ets", 14, 1), new Among("et", -1, 1), new Among("het", 25, 1), new Among("ert", -1, 3), new Among("ast", -1, 1) ]; +}); +$__jsx_lazy_init(NorwegianStemmer, "a_1", function () { + return [ new Among("dt", -1, -1), new Among("vt", -1, -1) ]; +}); +$__jsx_lazy_init(NorwegianStemmer, "a_2", function () { + return [ new Among("leg", -1, 1), new Among("eleg", 0, 1), new Among("ig", -1, 1), new Among("eig", 2, 1), new Among("lig", 2, 1), new Among("elig", 4, 1), new Among("els", -1, 1), new Among("lov", -1, 1), new Among("elov", 7, 1), new Among("slov", 7, 1), new Among("hetslov", 9, 1) ]; +}); +NorwegianStemmer.g_v = [ 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 128 ]; +NorwegianStemmer.g_s_ending = [ 119, 125, 149, 1 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/norwegian-stemmer.jsx": { + NorwegianStemmer: NorwegianStemmer, + NorwegianStemmer$: NorwegianStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var NorwegianStemmer = JSX.require("src/norwegian-stemmer.jsx").NorwegianStemmer; diff --git a/sphinx/search/non-minified-js/porter-stemmer.js b/sphinx/search/non-minified-js/porter-stemmer.js new file mode 100644 index 000000000..7a0f4558a --- /dev/null +++ b/sphinx/search/non-minified-js/porter-stemmer.js @@ -0,0 +1,2518 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function PorterStemmer() { + BaseStemmer.call(this); + this.B_Y_found = false; + this.I_p2 = 0; + this.I_p1 = 0; +}; + +$__jsx_extend([PorterStemmer], BaseStemmer); +PorterStemmer.prototype.copy_from$LPorterStemmer$ = function (other) { + this.B_Y_found = other.B_Y_found; + this.I_p2 = other.I_p2; + this.I_p1 = other.I_p1; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +PorterStemmer.prototype.copy_from = PorterStemmer.prototype.copy_from$LPorterStemmer$; + +PorterStemmer.prototype.r_shortv$ = function () { + return (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, PorterStemmer.g_v_WXY, 89, 121) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, PorterStemmer.g_v, 97, 121) ? false : ! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, PorterStemmer.g_v, 97, 121) ? false : true); +}; + +PorterStemmer.prototype.r_shortv = PorterStemmer.prototype.r_shortv$; + +function PorterStemmer$r_shortv$LPorterStemmer$($this) { + return (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, PorterStemmer.g_v_WXY, 89, 121) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, PorterStemmer.g_v, 97, 121) ? false : ! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, PorterStemmer.g_v, 97, 121) ? false : true); +}; + +PorterStemmer.r_shortv$LPorterStemmer$ = PorterStemmer$r_shortv$LPorterStemmer$; + +PorterStemmer.prototype.r_R1$ = function () { + return (! (this.I_p1 <= this.cursor) ? false : true); +}; + +PorterStemmer.prototype.r_R1 = PorterStemmer.prototype.r_R1$; + +function PorterStemmer$r_R1$LPorterStemmer$($this) { + return (! ($this.I_p1 <= $this.cursor) ? false : true); +}; + +PorterStemmer.r_R1$LPorterStemmer$ = PorterStemmer$r_R1$LPorterStemmer$; + +PorterStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +PorterStemmer.prototype.r_R2 = PorterStemmer.prototype.r_R2$; + +function PorterStemmer$r_R2$LPorterStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +PorterStemmer.r_R2$LPorterStemmer$ = PorterStemmer$r_R2$LPorterStemmer$; + +PorterStemmer.prototype.r_Step_1a$ = function () { + var among_var; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PorterStemmer.a_0, 4); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ss")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +PorterStemmer.prototype.r_Step_1a = PorterStemmer.prototype.r_Step_1a$; + +function PorterStemmer$r_Step_1a$LPorterStemmer$($this) { + var among_var; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PorterStemmer.a_0, 4); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ss")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +PorterStemmer.r_Step_1a$LPorterStemmer$ = PorterStemmer$r_Step_1a$LPorterStemmer$; + +PorterStemmer.prototype.r_Step_1b$ = function () { + var among_var; + var v_1; + var v_3; + var v_4; + var lab1; + var c; + var c_bra$0; + var adjustment$0; + var c_bra$1; + var adjustment$1; + var cursor$0; + var cursor$1; + var cursor$2; + var $__jsx_postinc_t; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PorterStemmer.a_2, 3); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! (this.I_p1 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ee")) { + return false; + } + break; + case 2: + v_1 = ((this.limit - this.cursor) | 0); + golab0: + while (true) { + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, PorterStemmer.g_v, 97, 121)) { + break lab1; + } + break golab0; + } + if (this.cursor <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + this.cursor = ((this.limit - v_1) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_3 = ((this.limit - this.cursor) | 0); + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PorterStemmer.a_1, 13); + if (among_var === 0) { + return false; + } + this.cursor = ((this.limit - v_3) | 0); + switch (among_var) { + case 0: + return false; + case 1: + c = cursor$0 = this.cursor; + c_bra$0 = cursor$0; + adjustment$0 = BaseStemmer$replace_s$LBaseStemmer$IIS(this, cursor$0, cursor$0, "e"); + if (cursor$0 <= this.bra) { + this.bra = (this.bra + adjustment$0) | 0; + } + if (c_bra$0 <= this.ket) { + this.ket = (this.ket + adjustment$0) | 0; + } + this.cursor = c; + break; + case 2: + this.ket = cursor$1 = this.cursor; + if (cursor$1 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 3: + if (this.cursor !== this.I_p1) { + return false; + } + v_4 = ((this.limit - this.cursor) | 0); + if (! PorterStemmer$r_shortv$LPorterStemmer$(this)) { + return false; + } + cursor$2 = this.cursor = ((this.limit - v_4) | 0); + c = cursor$2; + c_bra$1 = cursor$2; + adjustment$1 = BaseStemmer$replace_s$LBaseStemmer$IIS(this, cursor$2, cursor$2, "e"); + if (cursor$2 <= this.bra) { + this.bra = (this.bra + adjustment$1) | 0; + } + if (c_bra$1 <= this.ket) { + this.ket = (this.ket + adjustment$1) | 0; + } + this.cursor = c; + break; + } + break; + } + return true; +}; + +PorterStemmer.prototype.r_Step_1b = PorterStemmer.prototype.r_Step_1b$; + +function PorterStemmer$r_Step_1b$LPorterStemmer$($this) { + var among_var; + var v_1; + var v_3; + var v_4; + var lab1; + var c; + var c_bra$0; + var adjustment$0; + var c_bra$1; + var adjustment$1; + var cursor$0; + var cursor$1; + var cursor$2; + var $__jsx_postinc_t; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PorterStemmer.a_2, 3); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! ($this.I_p1 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ee")) { + return false; + } + break; + case 2: + v_1 = (($this.limit - $this.cursor) | 0); + golab0: + while (true) { + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, PorterStemmer.g_v, 97, 121)) { + break lab1; + } + break golab0; + } + if ($this.cursor <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + $this.cursor = (($this.limit - v_1) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_3 = (($this.limit - $this.cursor) | 0); + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PorterStemmer.a_1, 13); + if (among_var === 0) { + return false; + } + $this.cursor = (($this.limit - v_3) | 0); + switch (among_var) { + case 0: + return false; + case 1: + c = cursor$0 = $this.cursor; + c_bra$0 = cursor$0; + adjustment$0 = BaseStemmer$replace_s$LBaseStemmer$IIS($this, cursor$0, cursor$0, "e"); + if (cursor$0 <= $this.bra) { + $this.bra = ($this.bra + adjustment$0) | 0; + } + if (c_bra$0 <= $this.ket) { + $this.ket = ($this.ket + adjustment$0) | 0; + } + $this.cursor = c; + break; + case 2: + $this.ket = cursor$1 = $this.cursor; + if (cursor$1 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 3: + if ($this.cursor !== $this.I_p1) { + return false; + } + v_4 = (($this.limit - $this.cursor) | 0); + if (! PorterStemmer$r_shortv$LPorterStemmer$($this)) { + return false; + } + cursor$2 = $this.cursor = (($this.limit - v_4) | 0); + c = cursor$2; + c_bra$1 = cursor$2; + adjustment$1 = BaseStemmer$replace_s$LBaseStemmer$IIS($this, cursor$2, cursor$2, "e"); + if (cursor$2 <= $this.bra) { + $this.bra = ($this.bra + adjustment$1) | 0; + } + if (c_bra$1 <= $this.ket) { + $this.ket = ($this.ket + adjustment$1) | 0; + } + $this.cursor = c; + break; + } + break; + } + return true; +}; + +PorterStemmer.r_Step_1b$LPorterStemmer$ = PorterStemmer$r_Step_1b$LPorterStemmer$; + +PorterStemmer.prototype.r_Step_1c$ = function () { + var v_1; + var lab0; + var lab1; + var lab3; + var $__jsx_postinc_t; + this.ket = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "y")) { + break lab1; + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "Y")) { + return false; + } + } + this.bra = this.cursor; +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, PorterStemmer.g_v, 97, 121)) { + break lab3; + } + break golab2; + } + if (this.cursor <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i") ? false : true); +}; + +PorterStemmer.prototype.r_Step_1c = PorterStemmer.prototype.r_Step_1c$; + +function PorterStemmer$r_Step_1c$LPorterStemmer$($this) { + var v_1; + var lab0; + var lab1; + var lab3; + var $__jsx_postinc_t; + $this.ket = $this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "y")) { + break lab1; + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "Y")) { + return false; + } + } + $this.bra = $this.cursor; +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, PorterStemmer.g_v, 97, 121)) { + break lab3; + } + break golab2; + } + if ($this.cursor <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i") ? false : true); +}; + +PorterStemmer.r_Step_1c$LPorterStemmer$ = PorterStemmer$r_Step_1c$LPorterStemmer$; + +PorterStemmer.prototype.r_Step_2$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PorterStemmer.a_3, 20); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "tion")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ence")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ance")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "able")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ent")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ize")) { + return false; + } + break; + case 8: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ate")) { + return false; + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "al")) { + return false; + } + break; + case 10: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "al")) { + return false; + } + break; + case 11: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ful")) { + return false; + } + break; + case 12: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ous")) { + return false; + } + break; + case 13: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ive")) { + return false; + } + break; + case 14: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ble")) { + return false; + } + break; + } + return true; +}; + +PorterStemmer.prototype.r_Step_2 = PorterStemmer.prototype.r_Step_2$; + +function PorterStemmer$r_Step_2$LPorterStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PorterStemmer.a_3, 20); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "tion")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ence")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ance")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "able")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ent")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ize")) { + return false; + } + break; + case 8: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ate")) { + return false; + } + break; + case 9: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "al")) { + return false; + } + break; + case 10: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "al")) { + return false; + } + break; + case 11: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ful")) { + return false; + } + break; + case 12: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ous")) { + return false; + } + break; + case 13: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ive")) { + return false; + } + break; + case 14: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ble")) { + return false; + } + break; + } + return true; +}; + +PorterStemmer.r_Step_2$LPorterStemmer$ = PorterStemmer$r_Step_2$LPorterStemmer$; + +PorterStemmer.prototype.r_Step_3$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PorterStemmer.a_4, 7); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "al")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ic")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +PorterStemmer.prototype.r_Step_3 = PorterStemmer.prototype.r_Step_3$; + +function PorterStemmer$r_Step_3$LPorterStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PorterStemmer.a_4, 7); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "al")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ic")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +PorterStemmer.r_Step_3$LPorterStemmer$ = PorterStemmer$r_Step_3$LPorterStemmer$; + +PorterStemmer.prototype.r_Step_4$ = function () { + var among_var; + var v_1; + var lab0; + var lab1; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PorterStemmer.a_5, 19); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p2 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "s")) { + break lab1; + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "t")) { + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +PorterStemmer.prototype.r_Step_4 = PorterStemmer.prototype.r_Step_4$; + +function PorterStemmer$r_Step_4$LPorterStemmer$($this) { + var among_var; + var v_1; + var lab0; + var lab1; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PorterStemmer.a_5, 19); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "s")) { + break lab1; + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "t")) { + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +PorterStemmer.r_Step_4$LPorterStemmer$ = PorterStemmer$r_Step_4$LPorterStemmer$; + +PorterStemmer.prototype.r_Step_5a$ = function () { + var v_1; + var v_2; + var lab0; + var lab1; + var lab2; + var cursor$0; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + return false; + } + this.bra = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + break lab1; + } + break lab0; + } + cursor$0 = this.cursor = ((this.limit - v_1) | 0); + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + v_2 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! PorterStemmer$r_shortv$LPorterStemmer$(this)) { + break lab2; + } + return false; + } + this.cursor = ((this.limit - v_2) | 0); + } + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +PorterStemmer.prototype.r_Step_5a = PorterStemmer.prototype.r_Step_5a$; + +function PorterStemmer$r_Step_5a$LPorterStemmer$($this) { + var v_1; + var v_2; + var lab0; + var lab1; + var lab2; + var cursor$0; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + return false; + } + $this.bra = $this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + break lab1; + } + break lab0; + } + cursor$0 = $this.cursor = (($this.limit - v_1) | 0); + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + v_2 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! PorterStemmer$r_shortv$LPorterStemmer$($this)) { + break lab2; + } + return false; + } + $this.cursor = (($this.limit - v_2) | 0); + } + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +PorterStemmer.r_Step_5a$LPorterStemmer$ = PorterStemmer$r_Step_5a$LPorterStemmer$; + +PorterStemmer.prototype.r_Step_5b$ = function () { + var cursor$0; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "l")) { + return false; + } + this.bra = cursor$0 = this.cursor; + return (! (! (this.I_p2 <= cursor$0) ? false : true) ? false : ! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "l") ? false : ! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +PorterStemmer.prototype.r_Step_5b = PorterStemmer.prototype.r_Step_5b$; + +function PorterStemmer$r_Step_5b$LPorterStemmer$($this) { + var cursor$0; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "l")) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + return (! (! ($this.I_p2 <= cursor$0) ? false : true) ? false : ! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "l") ? false : ! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +PorterStemmer.r_Step_5b$LPorterStemmer$ = PorterStemmer$r_Step_5b$LPorterStemmer$; + +PorterStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_10; + var v_11; + var v_12; + var v_13; + var v_14; + var v_15; + var v_16; + var v_18; + var v_19; + var v_20; + var lab0; + var lab1; + var lab3; + var lab5; + var lab6; + var lab8; + var lab10; + var lab12; + var lab14; + var lab15; + var lab16; + var lab17; + var lab18; + var lab19; + var lab20; + var lab21; + var lab22; + var lab23; + var lab25; + var lab27; + var cursor$0; + var cursor$1; + var limit$0; + var cursor$2; + var cursor$3; + var limit$1; + var cursor$4; + var limit$2; + var cursor$5; + var limit$3; + var cursor$6; + var limit$4; + var cursor$7; + var limit$5; + var cursor$8; + var limit$6; + var cursor$9; + var limit$7; + var cursor$10; + var cursor$11; + var cursor$12; + var $__jsx_postinc_t; + this.B_Y_found = false; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + this.bra = this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "y")) { + break lab0; + } + this.ket = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "Y")) { + return false; + } + this.B_Y_found = true; + } + cursor$1 = this.cursor = v_1; + v_2 = cursor$1; + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + replab2: + while (true) { + v_3 = this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + golab4: + while (true) { + v_4 = this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PorterStemmer.g_v, 97, 121)) { + break lab5; + } + this.bra = this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "y")) { + break lab5; + } + this.ket = this.cursor; + this.cursor = v_4; + break golab4; + } + cursor$0 = this.cursor = v_4; + if (cursor$0 >= this.limit) { + break lab3; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "Y")) { + return false; + } + this.B_Y_found = true; + continue replab2; + } + this.cursor = v_3; + break replab2; + } + } + cursor$2 = this.cursor = v_2; + this.I_p1 = limit$0 = this.limit; + this.I_p2 = limit$0; + v_5 = cursor$2; + lab6 = true; +lab6: + while (lab6 === true) { + lab6 = false; + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PorterStemmer.g_v, 97, 121)) { + break lab8; + } + break golab7; + } + if (this.cursor >= this.limit) { + break lab6; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab9: + while (true) { + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, PorterStemmer.g_v, 97, 121)) { + break lab10; + } + break golab9; + } + if (this.cursor >= this.limit) { + break lab6; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PorterStemmer.g_v, 97, 121)) { + break lab12; + } + break golab11; + } + if (this.cursor >= this.limit) { + break lab6; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab13: + while (true) { + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, PorterStemmer.g_v, 97, 121)) { + break lab14; + } + break golab13; + } + if (this.cursor >= this.limit) { + break lab6; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + } + cursor$3 = this.cursor = v_5; + this.limit_backward = cursor$3; + cursor$4 = this.cursor = limit$1 = this.limit; + v_10 = ((limit$1 - cursor$4) | 0); + lab15 = true; +lab15: + while (lab15 === true) { + lab15 = false; + if (! PorterStemmer$r_Step_1a$LPorterStemmer$(this)) { + break lab15; + } + } + cursor$5 = this.cursor = (((limit$2 = this.limit) - v_10) | 0); + v_11 = ((limit$2 - cursor$5) | 0); + lab16 = true; +lab16: + while (lab16 === true) { + lab16 = false; + if (! PorterStemmer$r_Step_1b$LPorterStemmer$(this)) { + break lab16; + } + } + cursor$6 = this.cursor = (((limit$3 = this.limit) - v_11) | 0); + v_12 = ((limit$3 - cursor$6) | 0); + lab17 = true; +lab17: + while (lab17 === true) { + lab17 = false; + if (! PorterStemmer$r_Step_1c$LPorterStemmer$(this)) { + break lab17; + } + } + cursor$7 = this.cursor = (((limit$4 = this.limit) - v_12) | 0); + v_13 = ((limit$4 - cursor$7) | 0); + lab18 = true; +lab18: + while (lab18 === true) { + lab18 = false; + if (! PorterStemmer$r_Step_2$LPorterStemmer$(this)) { + break lab18; + } + } + cursor$8 = this.cursor = (((limit$5 = this.limit) - v_13) | 0); + v_14 = ((limit$5 - cursor$8) | 0); + lab19 = true; +lab19: + while (lab19 === true) { + lab19 = false; + if (! PorterStemmer$r_Step_3$LPorterStemmer$(this)) { + break lab19; + } + } + cursor$9 = this.cursor = (((limit$6 = this.limit) - v_14) | 0); + v_15 = ((limit$6 - cursor$9) | 0); + lab20 = true; +lab20: + while (lab20 === true) { + lab20 = false; + if (! PorterStemmer$r_Step_4$LPorterStemmer$(this)) { + break lab20; + } + } + cursor$10 = this.cursor = (((limit$7 = this.limit) - v_15) | 0); + v_16 = ((limit$7 - cursor$10) | 0); + lab21 = true; +lab21: + while (lab21 === true) { + lab21 = false; + if (! PorterStemmer$r_Step_5a$LPorterStemmer$(this)) { + break lab21; + } + } + this.cursor = ((this.limit - v_16) | 0); + lab22 = true; +lab22: + while (lab22 === true) { + lab22 = false; + if (! PorterStemmer$r_Step_5b$LPorterStemmer$(this)) { + break lab22; + } + } + cursor$12 = this.cursor = this.limit_backward; + v_18 = cursor$12; + lab23 = true; +lab23: + while (lab23 === true) { + lab23 = false; + if (! this.B_Y_found) { + break lab23; + } + replab24: + while (true) { + v_19 = this.cursor; + lab25 = true; + lab25: + while (lab25 === true) { + lab25 = false; + golab26: + while (true) { + v_20 = this.cursor; + lab27 = true; + lab27: + while (lab27 === true) { + lab27 = false; + this.bra = this.cursor; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "Y")) { + break lab27; + } + this.ket = this.cursor; + this.cursor = v_20; + break golab26; + } + cursor$11 = this.cursor = v_20; + if (cursor$11 >= this.limit) { + break lab25; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "y")) { + return false; + } + continue replab24; + } + this.cursor = v_19; + break replab24; + } + } + this.cursor = v_18; + return true; +}; + +PorterStemmer.prototype.stem = PorterStemmer.prototype.stem$; + +PorterStemmer.prototype.equals$X = function (o) { + return o instanceof PorterStemmer; +}; + +PorterStemmer.prototype.equals = PorterStemmer.prototype.equals$X; + +function PorterStemmer$equals$LPorterStemmer$X($this, o) { + return o instanceof PorterStemmer; +}; + +PorterStemmer.equals$LPorterStemmer$X = PorterStemmer$equals$LPorterStemmer$X; + +PorterStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "PorterStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +PorterStemmer.prototype.hashCode = PorterStemmer.prototype.hashCode$; + +function PorterStemmer$hashCode$LPorterStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "PorterStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +PorterStemmer.hashCode$LPorterStemmer$ = PorterStemmer$hashCode$LPorterStemmer$; + +PorterStemmer.serialVersionUID = 1; +$__jsx_lazy_init(PorterStemmer, "methodObject", function () { + return new PorterStemmer(); +}); +$__jsx_lazy_init(PorterStemmer, "a_0", function () { + return [ new Among("s", -1, 3), new Among("ies", 0, 2), new Among("sses", 0, 1), new Among("ss", 0, -1) ]; +}); +$__jsx_lazy_init(PorterStemmer, "a_1", function () { + return [ new Among("", -1, 3), new Among("bb", 0, 2), new Among("dd", 0, 2), new Among("ff", 0, 2), new Among("gg", 0, 2), new Among("bl", 0, 1), new Among("mm", 0, 2), new Among("nn", 0, 2), new Among("pp", 0, 2), new Among("rr", 0, 2), new Among("at", 0, 1), new Among("tt", 0, 2), new Among("iz", 0, 1) ]; +}); +$__jsx_lazy_init(PorterStemmer, "a_2", function () { + return [ new Among("ed", -1, 2), new Among("eed", 0, 1), new Among("ing", -1, 2) ]; +}); +$__jsx_lazy_init(PorterStemmer, "a_3", function () { + return [ new Among("anci", -1, 3), new Among("enci", -1, 2), new Among("abli", -1, 4), new Among("eli", -1, 6), new Among("alli", -1, 9), new Among("ousli", -1, 12), new Among("entli", -1, 5), new Among("aliti", -1, 10), new Among("biliti", -1, 14), new Among("iviti", -1, 13), new Among("tional", -1, 1), new Among("ational", 10, 8), new Among("alism", -1, 10), new Among("ation", -1, 8), new Among("ization", 13, 7), new Among("izer", -1, 7), new Among("ator", -1, 8), new Among("iveness", -1, 13), new Among("fulness", -1, 11), new Among("ousness", -1, 12) ]; +}); +$__jsx_lazy_init(PorterStemmer, "a_4", function () { + return [ new Among("icate", -1, 2), new Among("ative", -1, 3), new Among("alize", -1, 1), new Among("iciti", -1, 2), new Among("ical", -1, 2), new Among("ful", -1, 3), new Among("ness", -1, 3) ]; +}); +$__jsx_lazy_init(PorterStemmer, "a_5", function () { + return [ new Among("ic", -1, 1), new Among("ance", -1, 1), new Among("ence", -1, 1), new Among("able", -1, 1), new Among("ible", -1, 1), new Among("ate", -1, 1), new Among("ive", -1, 1), new Among("ize", -1, 1), new Among("iti", -1, 1), new Among("al", -1, 1), new Among("ism", -1, 1), new Among("ion", -1, 2), new Among("er", -1, 1), new Among("ous", -1, 1), new Among("ant", -1, 1), new Among("ent", -1, 1), new Among("ment", 15, 1), new Among("ement", 16, 1), new Among("ou", -1, 1) ]; +}); +PorterStemmer.g_v = [ 17, 65, 16, 1 ]; +PorterStemmer.g_v_WXY = [ 1, 17, 65, 208, 1 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/porter-stemmer.jsx": { + PorterStemmer: PorterStemmer, + PorterStemmer$: PorterStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var PorterStemmer = JSX.require("src/porter-stemmer.jsx").PorterStemmer; diff --git a/sphinx/search/non-minified-js/portuguese-stemmer.js b/sphinx/search/non-minified-js/portuguese-stemmer.js new file mode 100644 index 000000000..35f21aa8f --- /dev/null +++ b/sphinx/search/non-minified-js/portuguese-stemmer.js @@ -0,0 +1,2817 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function PortugueseStemmer() { + BaseStemmer.call(this); + this.I_p2 = 0; + this.I_p1 = 0; + this.I_pV = 0; +}; + +$__jsx_extend([PortugueseStemmer], BaseStemmer); +PortugueseStemmer.prototype.copy_from$LPortugueseStemmer$ = function (other) { + this.I_p2 = other.I_p2; + this.I_p1 = other.I_p1; + this.I_pV = other.I_pV; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +PortugueseStemmer.prototype.copy_from = PortugueseStemmer.prototype.copy_from$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_prelude$ = function () { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, PortugueseStemmer.a_0, 3); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a~")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "o~")) { + return false; + } + break; + case 3: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +PortugueseStemmer.prototype.r_prelude = PortugueseStemmer.prototype.r_prelude$; + +function PortugueseStemmer$r_prelude$LPortugueseStemmer$($this) { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, PortugueseStemmer.a_0, 3); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a~")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "o~")) { + return false; + } + break; + case 3: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +PortugueseStemmer.r_prelude$LPortugueseStemmer$ = PortugueseStemmer$r_prelude$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_2; + var v_3; + var v_6; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab6; + var lab8; + var lab9; + var lab10; + var lab12; + var lab13; + var lab15; + var lab17; + var lab19; + var lab21; + var limit$0; + var cursor$0; + var $__jsx_postinc_t; + this.I_pV = limit$0 = this.limit; + this.I_p1 = limit$0; + this.I_p2 = limit$0; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab2; + } + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab4; + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab6; + } + break golab5; + } + if (this.cursor >= this.limit) { + break lab4; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab3; + } + this.cursor = v_3; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab2; + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab8; + } + break golab7; + } + if (this.cursor >= this.limit) { + break lab2; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + break lab1; + } + this.cursor = v_2; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab0; + } + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_6 = this.cursor; + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab10; + } + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab12; + } + break golab11; + } + if (this.cursor >= this.limit) { + break lab10; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab9; + } + this.cursor = v_6; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab0; + } + if (this.cursor >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + this.I_pV = this.cursor; + } + cursor$0 = this.cursor = v_1; + v_8 = cursor$0; + lab13 = true; +lab13: + while (lab13 === true) { + lab13 = false; + golab14: + while (true) { + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab15; + } + break golab14; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab16: + while (true) { + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab17; + } + break golab16; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + golab18: + while (true) { + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab19; + } + break golab18; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab20: + while (true) { + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, PortugueseStemmer.g_v, 97, 250)) { + break lab21; + } + break golab20; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + } + this.cursor = v_8; + return true; +}; + +PortugueseStemmer.prototype.r_mark_regions = PortugueseStemmer.prototype.r_mark_regions$; + +function PortugueseStemmer$r_mark_regions$LPortugueseStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_6; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab6; + var lab8; + var lab9; + var lab10; + var lab12; + var lab13; + var lab15; + var lab17; + var lab19; + var lab21; + var limit$0; + var cursor$0; + var $__jsx_postinc_t; + $this.I_pV = limit$0 = $this.limit; + $this.I_p1 = limit$0; + $this.I_p2 = limit$0; + v_1 = $this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = $this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab2; + } + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = $this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab4; + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab6; + } + break golab5; + } + if ($this.cursor >= $this.limit) { + break lab4; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab3; + } + $this.cursor = v_3; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab2; + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab8; + } + break golab7; + } + if ($this.cursor >= $this.limit) { + break lab2; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + break lab1; + } + $this.cursor = v_2; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab0; + } + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_6 = $this.cursor; + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab10; + } + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab12; + } + break golab11; + } + if ($this.cursor >= $this.limit) { + break lab10; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab9; + } + $this.cursor = v_6; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab0; + } + if ($this.cursor >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + $this.I_pV = $this.cursor; + } + cursor$0 = $this.cursor = v_1; + v_8 = cursor$0; + lab13 = true; +lab13: + while (lab13 === true) { + lab13 = false; + golab14: + while (true) { + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab15; + } + break golab14; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab16: + while (true) { + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab17; + } + break golab16; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + golab18: + while (true) { + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab19; + } + break golab18; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab20: + while (true) { + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, PortugueseStemmer.g_v, 97, 250)) { + break lab21; + } + break golab20; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p2 = $this.cursor; + } + $this.cursor = v_8; + return true; +}; + +PortugueseStemmer.r_mark_regions$LPortugueseStemmer$ = PortugueseStemmer$r_mark_regions$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_postlude$ = function () { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, PortugueseStemmer.a_1, 3); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "\u00E3")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "\u00F5")) { + return false; + } + break; + case 3: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +PortugueseStemmer.prototype.r_postlude = PortugueseStemmer.prototype.r_postlude$; + +function PortugueseStemmer$r_postlude$LPortugueseStemmer$($this) { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, PortugueseStemmer.a_1, 3); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "\u00E3")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "\u00F5")) { + return false; + } + break; + case 3: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +PortugueseStemmer.r_postlude$LPortugueseStemmer$ = PortugueseStemmer$r_postlude$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_RV$ = function () { + return (! (this.I_pV <= this.cursor) ? false : true); +}; + +PortugueseStemmer.prototype.r_RV = PortugueseStemmer.prototype.r_RV$; + +function PortugueseStemmer$r_RV$LPortugueseStemmer$($this) { + return (! ($this.I_pV <= $this.cursor) ? false : true); +}; + +PortugueseStemmer.r_RV$LPortugueseStemmer$ = PortugueseStemmer$r_RV$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_R1$ = function () { + return (! (this.I_p1 <= this.cursor) ? false : true); +}; + +PortugueseStemmer.prototype.r_R1 = PortugueseStemmer.prototype.r_R1$; + +function PortugueseStemmer$r_R1$LPortugueseStemmer$($this) { + return (! ($this.I_p1 <= $this.cursor) ? false : true); +}; + +PortugueseStemmer.r_R1$LPortugueseStemmer$ = PortugueseStemmer$r_R1$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +PortugueseStemmer.prototype.r_R2 = PortugueseStemmer.prototype.r_R2$; + +function PortugueseStemmer$r_R2$LPortugueseStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +PortugueseStemmer.r_R2$LPortugueseStemmer$ = PortugueseStemmer$r_R2$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_standard_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var lab0; + var lab1; + var lab2; + var lab3; + var cursor$0; + var cursor$1; + var cursor$2; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PortugueseStemmer.a_5, 45); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "log")) { + return false; + } + break; + case 3: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 4: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ente")) { + return false; + } + break; + case 5: + if (! (! (this.I_p1 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PortugueseStemmer.a_2, 4); + if (among_var === 0) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p2 <= cursor$0) ? false : true)) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_1) | 0); + break lab0; + case 1: + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "at")) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = cursor$1 = this.cursor; + if (! (! (this.I_p2 <= cursor$1) ? false : true)) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + case 6: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_2 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PortugueseStemmer.a_3, 3); + if (among_var === 0) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_2) | 0); + break lab1; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + case 7: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_3 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PortugueseStemmer.a_4, 3); + if (among_var === 0) { + this.cursor = ((this.limit - v_3) | 0); + break lab2; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_3) | 0); + break lab2; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_3) | 0); + break lab2; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + case 8: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_4 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "at")) { + this.cursor = ((this.limit - v_4) | 0); + break lab3; + } + this.bra = cursor$2 = this.cursor; + if (! (! (this.I_p2 <= cursor$2) ? false : true)) { + this.cursor = ((this.limit - v_4) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + case 9: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ir")) { + return false; + } + break; + } + return true; +}; + +PortugueseStemmer.prototype.r_standard_suffix = PortugueseStemmer.prototype.r_standard_suffix$; + +function PortugueseStemmer$r_standard_suffix$LPortugueseStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var lab0; + var lab1; + var lab2; + var lab3; + var cursor$0; + var cursor$1; + var cursor$2; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PortugueseStemmer.a_5, 45); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "log")) { + return false; + } + break; + case 3: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 4: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ente")) { + return false; + } + break; + case 5: + if (! (! ($this.I_p1 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PortugueseStemmer.a_2, 4); + if (among_var === 0) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$0) ? false : true)) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + case 1: + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "at")) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = cursor$1 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$1) ? false : true)) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + case 6: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_2 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PortugueseStemmer.a_3, 3); + if (among_var === 0) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + case 7: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_3 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PortugueseStemmer.a_4, 3); + if (among_var === 0) { + $this.cursor = (($this.limit - v_3) | 0); + break lab2; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_3) | 0); + break lab2; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab2; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + case 8: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_4 = (($this.limit - $this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "at")) { + $this.cursor = (($this.limit - v_4) | 0); + break lab3; + } + $this.bra = cursor$2 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$2) ? false : true)) { + $this.cursor = (($this.limit - v_4) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + case 9: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ir")) { + return false; + } + break; + } + return true; +}; + +PortugueseStemmer.r_standard_suffix$LPortugueseStemmer$ = PortugueseStemmer$r_standard_suffix$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_verb_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_pV) { + return false; + } + cursor$1 = this.cursor = this.I_pV; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PortugueseStemmer.a_6, 120); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.limit_backward = v_2; + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + this.limit_backward = v_2; + return true; +}; + +PortugueseStemmer.prototype.r_verb_suffix = PortugueseStemmer.prototype.r_verb_suffix$; + +function PortugueseStemmer$r_verb_suffix$LPortugueseStemmer$($this) { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_pV) { + return false; + } + cursor$1 = $this.cursor = $this.I_pV; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PortugueseStemmer.a_6, 120); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.limit_backward = v_2; + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + $this.limit_backward = v_2; + return true; +}; + +PortugueseStemmer.r_verb_suffix$LPortugueseStemmer$ = PortugueseStemmer$r_verb_suffix$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_residual_suffix$ = function () { + var among_var; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PortugueseStemmer.a_7, 7); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +PortugueseStemmer.prototype.r_residual_suffix = PortugueseStemmer.prototype.r_residual_suffix$; + +function PortugueseStemmer$r_residual_suffix$LPortugueseStemmer$($this) { + var among_var; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PortugueseStemmer.a_7, 7); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +PortugueseStemmer.r_residual_suffix$LPortugueseStemmer$ = PortugueseStemmer$r_residual_suffix$LPortugueseStemmer$; + +PortugueseStemmer.prototype.r_residual_form$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var cursor$0; + var cursor$1; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, PortugueseStemmer.a_8, 4); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.ket = this.cursor; + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "u")) { + break lab1; + } + this.bra = cursor$0 = this.cursor; + v_2 = ((this.limit - cursor$0) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "g")) { + break lab1; + } + this.cursor = ((this.limit - v_2) | 0); + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "i")) { + return false; + } + this.bra = cursor$1 = this.cursor; + v_3 = ((this.limit - cursor$1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "c")) { + return false; + } + this.cursor = ((this.limit - v_3) | 0); + } + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "c")) { + return false; + } + break; + } + return true; +}; + +PortugueseStemmer.prototype.r_residual_form = PortugueseStemmer.prototype.r_residual_form$; + +function PortugueseStemmer$r_residual_form$LPortugueseStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var cursor$0; + var cursor$1; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, PortugueseStemmer.a_8, 4); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.ket = $this.cursor; + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "u")) { + break lab1; + } + $this.bra = cursor$0 = $this.cursor; + v_2 = (($this.limit - cursor$0) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "g")) { + break lab1; + } + $this.cursor = (($this.limit - v_2) | 0); + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "i")) { + return false; + } + $this.bra = cursor$1 = $this.cursor; + v_3 = (($this.limit - cursor$1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "c")) { + return false; + } + $this.cursor = (($this.limit - v_3) | 0); + } + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "c")) { + return false; + } + break; + } + return true; +}; + +PortugueseStemmer.r_residual_form$LPortugueseStemmer$ = PortugueseStemmer$r_residual_form$LPortugueseStemmer$; + +PortugueseStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_10; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var cursor$0; + var cursor$1; + var cursor$2; + var limit$0; + var cursor$3; + var cursor$4; + var limit$1; + var cursor$5; + var cursor$6; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! PortugueseStemmer$r_prelude$LPortugueseStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + v_2 = cursor$0; + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! PortugueseStemmer$r_mark_regions$LPortugueseStemmer$(this)) { + break lab1; + } + } + cursor$4 = this.cursor = v_2; + this.limit_backward = cursor$4; + cursor$5 = this.cursor = limit$1 = this.limit; + v_3 = ((limit$1 - cursor$5) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_4 = ((this.limit - this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_5 = ((this.limit - this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + v_6 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! PortugueseStemmer$r_standard_suffix$LPortugueseStemmer$(this)) { + break lab6; + } + break lab5; + } + this.cursor = ((this.limit - v_6) | 0); + if (! PortugueseStemmer$r_verb_suffix$LPortugueseStemmer$(this)) { + break lab4; + } + } + cursor$3 = this.cursor = (((limit$0 = this.limit) - v_5) | 0); + v_7 = ((limit$0 - cursor$3) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "i")) { + break lab7; + } + this.bra = cursor$1 = this.cursor; + v_8 = ((this.limit - cursor$1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "c")) { + break lab7; + } + cursor$2 = this.cursor = ((this.limit - v_8) | 0); + if (! (! (this.I_pV <= cursor$2) ? false : true)) { + break lab7; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + this.cursor = ((this.limit - v_7) | 0); + break lab3; + } + this.cursor = ((this.limit - v_4) | 0); + if (! PortugueseStemmer$r_residual_suffix$LPortugueseStemmer$(this)) { + break lab2; + } + } + } + this.cursor = ((this.limit - v_3) | 0); + lab8 = true; +lab8: + while (lab8 === true) { + lab8 = false; + if (! PortugueseStemmer$r_residual_form$LPortugueseStemmer$(this)) { + break lab8; + } + } + cursor$6 = this.cursor = this.limit_backward; + v_10 = cursor$6; + lab9 = true; +lab9: + while (lab9 === true) { + lab9 = false; + if (! PortugueseStemmer$r_postlude$LPortugueseStemmer$(this)) { + break lab9; + } + } + this.cursor = v_10; + return true; +}; + +PortugueseStemmer.prototype.stem = PortugueseStemmer.prototype.stem$; + +PortugueseStemmer.prototype.equals$X = function (o) { + return o instanceof PortugueseStemmer; +}; + +PortugueseStemmer.prototype.equals = PortugueseStemmer.prototype.equals$X; + +function PortugueseStemmer$equals$LPortugueseStemmer$X($this, o) { + return o instanceof PortugueseStemmer; +}; + +PortugueseStemmer.equals$LPortugueseStemmer$X = PortugueseStemmer$equals$LPortugueseStemmer$X; + +PortugueseStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "PortugueseStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +PortugueseStemmer.prototype.hashCode = PortugueseStemmer.prototype.hashCode$; + +function PortugueseStemmer$hashCode$LPortugueseStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "PortugueseStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +PortugueseStemmer.hashCode$LPortugueseStemmer$ = PortugueseStemmer$hashCode$LPortugueseStemmer$; + +PortugueseStemmer.serialVersionUID = 1; +$__jsx_lazy_init(PortugueseStemmer, "methodObject", function () { + return new PortugueseStemmer(); +}); +$__jsx_lazy_init(PortugueseStemmer, "a_0", function () { + return [ new Among("", -1, 3), new Among("\u00E3", 0, 1), new Among("\u00F5", 0, 2) ]; +}); +$__jsx_lazy_init(PortugueseStemmer, "a_1", function () { + return [ new Among("", -1, 3), new Among("a~", 0, 1), new Among("o~", 0, 2) ]; +}); +$__jsx_lazy_init(PortugueseStemmer, "a_2", function () { + return [ new Among("ic", -1, -1), new Among("ad", -1, -1), new Among("os", -1, -1), new Among("iv", -1, 1) ]; +}); +$__jsx_lazy_init(PortugueseStemmer, "a_3", function () { + return [ new Among("ante", -1, 1), new Among("avel", -1, 1), new Among("\u00EDvel", -1, 1) ]; +}); +$__jsx_lazy_init(PortugueseStemmer, "a_4", function () { + return [ new Among("ic", -1, 1), new Among("abil", -1, 1), new Among("iv", -1, 1) ]; +}); +$__jsx_lazy_init(PortugueseStemmer, "a_5", function () { + return [ new Among("ica", -1, 1), new Among("\u00E2ncia", -1, 1), new Among("\u00EAncia", -1, 4), new Among("ira", -1, 9), new Among("adora", -1, 1), new Among("osa", -1, 1), new Among("ista", -1, 1), new Among("iva", -1, 8), new Among("eza", -1, 1), new Among("log\u00EDa", -1, 2), new Among("idade", -1, 7), new Among("ante", -1, 1), new Among("mente", -1, 6), new Among("amente", 12, 5), new Among("\u00E1vel", -1, 1), new Among("\u00EDvel", -1, 1), new Among("uci\u00F3n", -1, 3), new Among("ico", -1, 1), new Among("ismo", -1, 1), new Among("oso", -1, 1), new Among("amento", -1, 1), new Among("imento", -1, 1), new Among("ivo", -1, 8), new Among("a\u00E7a~o", -1, 1), new Among("ador", -1, 1), new Among("icas", -1, 1), new Among("\u00EAncias", -1, 4), new Among("iras", -1, 9), new Among("adoras", -1, 1), new Among("osas", -1, 1), new Among("istas", -1, 1), new Among("ivas", -1, 8), new Among("ezas", -1, 1), new Among("log\u00EDas", -1, 2), new Among("idades", -1, 7), new Among("uciones", -1, 3), new Among("adores", -1, 1), new Among("antes", -1, 1), new Among("a\u00E7o~es", -1, 1), new Among("icos", -1, 1), new Among("ismos", -1, 1), new Among("osos", -1, 1), new Among("amentos", -1, 1), new Among("imentos", -1, 1), new Among("ivos", -1, 8) ]; +}); +$__jsx_lazy_init(PortugueseStemmer, "a_6", function () { + return [ new Among("ada", -1, 1), new Among("ida", -1, 1), new Among("ia", -1, 1), new Among("aria", 2, 1), new Among("eria", 2, 1), new Among("iria", 2, 1), new Among("ara", -1, 1), new Among("era", -1, 1), new Among("ira", -1, 1), new Among("ava", -1, 1), new Among("asse", -1, 1), new Among("esse", -1, 1), new Among("isse", -1, 1), new Among("aste", -1, 1), new Among("este", -1, 1), new Among("iste", -1, 1), new Among("ei", -1, 1), new Among("arei", 16, 1), new Among("erei", 16, 1), new Among("irei", 16, 1), new Among("am", -1, 1), new Among("iam", 20, 1), new Among("ariam", 21, 1), new Among("eriam", 21, 1), new Among("iriam", 21, 1), new Among("aram", 20, 1), new Among("eram", 20, 1), new Among("iram", 20, 1), new Among("avam", 20, 1), new Among("em", -1, 1), new Among("arem", 29, 1), new Among("erem", 29, 1), new Among("irem", 29, 1), new Among("assem", 29, 1), new Among("essem", 29, 1), new Among("issem", 29, 1), new Among("ado", -1, 1), new Among("ido", -1, 1), new Among("ando", -1, 1), new Among("endo", -1, 1), new Among("indo", -1, 1), new Among("ara~o", -1, 1), new Among("era~o", -1, 1), new Among("ira~o", -1, 1), new Among("ar", -1, 1), new Among("er", -1, 1), new Among("ir", -1, 1), new Among("as", -1, 1), new Among("adas", 47, 1), new Among("idas", 47, 1), new Among("ias", 47, 1), new Among("arias", 50, 1), new Among("erias", 50, 1), new Among("irias", 50, 1), new Among("aras", 47, 1), new Among("eras", 47, 1), new Among("iras", 47, 1), new Among("avas", 47, 1), new Among("es", -1, 1), new Among("ardes", 58, 1), new Among("erdes", 58, 1), new Among("irdes", 58, 1), new Among("ares", 58, 1), new Among("eres", 58, 1), new Among("ires", 58, 1), new Among("asses", 58, 1), new Among("esses", 58, 1), new Among("isses", 58, 1), new Among("astes", 58, 1), new Among("estes", 58, 1), new Among("istes", 58, 1), new Among("is", -1, 1), new Among("ais", 71, 1), new Among("eis", 71, 1), new Among("areis", 73, 1), new Among("ereis", 73, 1), new Among("ireis", 73, 1), new Among("\u00E1reis", 73, 1), new Among("\u00E9reis", 73, 1), new Among("\u00EDreis", 73, 1), new Among("\u00E1sseis", 73, 1), new Among("\u00E9sseis", 73, 1), new Among("\u00EDsseis", 73, 1), new Among("\u00E1veis", 73, 1), new Among("\u00EDeis", 73, 1), new Among("ar\u00EDeis", 84, 1), new Among("er\u00EDeis", 84, 1), new Among("ir\u00EDeis", 84, 1), new Among("ados", -1, 1), new Among("idos", -1, 1), new Among("amos", -1, 1), new Among("\u00E1ramos", 90, 1), new Among("\u00E9ramos", 90, 1), new Among("\u00EDramos", 90, 1), new Among("\u00E1vamos", 90, 1), new Among("\u00EDamos", 90, 1), new Among("ar\u00EDamos", 95, 1), new Among("er\u00EDamos", 95, 1), new Among("ir\u00EDamos", 95, 1), new Among("emos", -1, 1), new Among("aremos", 99, 1), new Among("eremos", 99, 1), new Among("iremos", 99, 1), new Among("\u00E1ssemos", 99, 1), new Among("\u00EAssemos", 99, 1), new Among("\u00EDssemos", 99, 1), new Among("imos", -1, 1), new Among("armos", -1, 1), new Among("ermos", -1, 1), new Among("irmos", -1, 1), new Among("\u00E1mos", -1, 1), new Among("ar\u00E1s", -1, 1), new Among("er\u00E1s", -1, 1), new Among("ir\u00E1s", -1, 1), new Among("eu", -1, 1), new Among("iu", -1, 1), new Among("ou", -1, 1), new Among("ar\u00E1", -1, 1), new Among("er\u00E1", -1, 1), new Among("ir\u00E1", -1, 1) ]; +}); +$__jsx_lazy_init(PortugueseStemmer, "a_7", function () { + return [ new Among("a", -1, 1), new Among("i", -1, 1), new Among("o", -1, 1), new Among("os", -1, 1), new Among("\u00E1", -1, 1), new Among("\u00ED", -1, 1), new Among("\u00F3", -1, 1) ]; +}); +$__jsx_lazy_init(PortugueseStemmer, "a_8", function () { + return [ new Among("e", -1, 1), new Among("\u00E7", -1, 2), new Among("\u00E9", -1, 1), new Among("\u00EA", -1, 1) ]; +}); +PortugueseStemmer.g_v = [ 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 19, 12, 2 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/portuguese-stemmer.jsx": { + PortugueseStemmer: PortugueseStemmer, + PortugueseStemmer$: PortugueseStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var PortugueseStemmer = JSX.require("src/portuguese-stemmer.jsx").PortugueseStemmer; diff --git a/sphinx/search/non-minified-js/romanian-stemmer.js b/sphinx/search/non-minified-js/romanian-stemmer.js new file mode 100644 index 000000000..f71f44a68 --- /dev/null +++ b/sphinx/search/non-minified-js/romanian-stemmer.js @@ -0,0 +1,2694 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function RomanianStemmer() { + BaseStemmer.call(this); + this.B_standard_suffix_removed = false; + this.I_p2 = 0; + this.I_p1 = 0; + this.I_pV = 0; +}; + +$__jsx_extend([RomanianStemmer], BaseStemmer); +RomanianStemmer.prototype.copy_from$LRomanianStemmer$ = function (other) { + this.B_standard_suffix_removed = other.B_standard_suffix_removed; + this.I_p2 = other.I_p2; + this.I_p1 = other.I_p1; + this.I_pV = other.I_pV; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +RomanianStemmer.prototype.copy_from = RomanianStemmer.prototype.copy_from$LRomanianStemmer$; + +RomanianStemmer.prototype.r_prelude$ = function () { + var v_1; + var v_2; + var v_3; + var lab1; + var lab3; + var lab4; + var lab5; + var cursor$0; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + golab2: + while (true) { + v_2 = this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab3; + } + this.bra = this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_3 = this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "u")) { + break lab5; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab5; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "U")) { + return false; + } + break lab4; + } + this.cursor = v_3; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 1, "i")) { + break lab3; + } + this.ket = this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "I")) { + return false; + } + } + this.cursor = v_2; + break golab2; + } + cursor$0 = this.cursor = v_2; + if (cursor$0 >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +RomanianStemmer.prototype.r_prelude = RomanianStemmer.prototype.r_prelude$; + +function RomanianStemmer$r_prelude$LRomanianStemmer$($this) { + var v_1; + var v_2; + var v_3; + var lab1; + var lab3; + var lab4; + var lab5; + var cursor$0; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + golab2: + while (true) { + v_2 = $this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab3; + } + $this.bra = $this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + v_3 = $this.cursor; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "u")) { + break lab5; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab5; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "U")) { + return false; + } + break lab4; + } + $this.cursor = v_3; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 1, "i")) { + break lab3; + } + $this.ket = $this.cursor; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "I")) { + return false; + } + } + $this.cursor = v_2; + break golab2; + } + cursor$0 = $this.cursor = v_2; + if (cursor$0 >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +RomanianStemmer.r_prelude$LRomanianStemmer$ = RomanianStemmer$r_prelude$LRomanianStemmer$; + +RomanianStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_2; + var v_3; + var v_6; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab6; + var lab8; + var lab9; + var lab10; + var lab12; + var lab13; + var lab15; + var lab17; + var lab19; + var lab21; + var limit$0; + var cursor$0; + var $__jsx_postinc_t; + this.I_pV = limit$0 = this.limit; + this.I_p1 = limit$0; + this.I_p2 = limit$0; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab2; + } + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab4; + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab6; + } + break golab5; + } + if (this.cursor >= this.limit) { + break lab4; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab3; + } + this.cursor = v_3; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab2; + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab8; + } + break golab7; + } + if (this.cursor >= this.limit) { + break lab2; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + break lab1; + } + this.cursor = v_2; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab0; + } + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_6 = this.cursor; + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab10; + } + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab12; + } + break golab11; + } + if (this.cursor >= this.limit) { + break lab10; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab9; + } + this.cursor = v_6; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab0; + } + if (this.cursor >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + this.I_pV = this.cursor; + } + cursor$0 = this.cursor = v_1; + v_8 = cursor$0; + lab13 = true; +lab13: + while (lab13 === true) { + lab13 = false; + golab14: + while (true) { + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab15; + } + break golab14; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab16: + while (true) { + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab17; + } + break golab16; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + golab18: + while (true) { + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab19; + } + break golab18; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab20: + while (true) { + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab21; + } + break golab20; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + } + this.cursor = v_8; + return true; +}; + +RomanianStemmer.prototype.r_mark_regions = RomanianStemmer.prototype.r_mark_regions$; + +function RomanianStemmer$r_mark_regions$LRomanianStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_6; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab6; + var lab8; + var lab9; + var lab10; + var lab12; + var lab13; + var lab15; + var lab17; + var lab19; + var lab21; + var limit$0; + var cursor$0; + var $__jsx_postinc_t; + $this.I_pV = limit$0 = $this.limit; + $this.I_p1 = limit$0; + $this.I_p2 = limit$0; + v_1 = $this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = $this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab2; + } + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = $this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab4; + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab6; + } + break golab5; + } + if ($this.cursor >= $this.limit) { + break lab4; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab3; + } + $this.cursor = v_3; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab2; + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab8; + } + break golab7; + } + if ($this.cursor >= $this.limit) { + break lab2; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + break lab1; + } + $this.cursor = v_2; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab0; + } + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_6 = $this.cursor; + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab10; + } + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab12; + } + break golab11; + } + if ($this.cursor >= $this.limit) { + break lab10; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab9; + } + $this.cursor = v_6; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab0; + } + if ($this.cursor >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + $this.I_pV = $this.cursor; + } + cursor$0 = $this.cursor = v_1; + v_8 = cursor$0; + lab13 = true; +lab13: + while (lab13 === true) { + lab13 = false; + golab14: + while (true) { + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab15; + } + break golab14; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab16: + while (true) { + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab17; + } + break golab16; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + golab18: + while (true) { + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab19; + } + break golab18; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab20: + while (true) { + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab21; + } + break golab20; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p2 = $this.cursor; + } + $this.cursor = v_8; + return true; +}; + +RomanianStemmer.r_mark_regions$LRomanianStemmer$ = RomanianStemmer$r_mark_regions$LRomanianStemmer$; + +RomanianStemmer.prototype.r_postlude$ = function () { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, RomanianStemmer.a_0, 3); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 3: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +RomanianStemmer.prototype.r_postlude = RomanianStemmer.prototype.r_postlude$; + +function RomanianStemmer$r_postlude$LRomanianStemmer$($this) { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, RomanianStemmer.a_0, 3); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 3: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +RomanianStemmer.r_postlude$LRomanianStemmer$ = RomanianStemmer$r_postlude$LRomanianStemmer$; + +RomanianStemmer.prototype.r_RV$ = function () { + return (! (this.I_pV <= this.cursor) ? false : true); +}; + +RomanianStemmer.prototype.r_RV = RomanianStemmer.prototype.r_RV$; + +function RomanianStemmer$r_RV$LRomanianStemmer$($this) { + return (! ($this.I_pV <= $this.cursor) ? false : true); +}; + +RomanianStemmer.r_RV$LRomanianStemmer$ = RomanianStemmer$r_RV$LRomanianStemmer$; + +RomanianStemmer.prototype.r_R1$ = function () { + return (! (this.I_p1 <= this.cursor) ? false : true); +}; + +RomanianStemmer.prototype.r_R1 = RomanianStemmer.prototype.r_R1$; + +function RomanianStemmer$r_R1$LRomanianStemmer$($this) { + return (! ($this.I_p1 <= $this.cursor) ? false : true); +}; + +RomanianStemmer.r_R1$LRomanianStemmer$ = RomanianStemmer$r_R1$LRomanianStemmer$; + +RomanianStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +RomanianStemmer.prototype.r_R2 = RomanianStemmer.prototype.r_R2$; + +function RomanianStemmer$r_R2$LRomanianStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +RomanianStemmer.r_R2$LRomanianStemmer$ = RomanianStemmer$r_R2$LRomanianStemmer$; + +RomanianStemmer.prototype.r_step_0$ = function () { + var among_var; + var v_1; + var lab0; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RomanianStemmer.a_1, 16); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 5: + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ab")) { + break lab0; + } + return false; + } + this.cursor = ((this.limit - v_1) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "at")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a\u0163i")) { + return false; + } + break; + } + return true; +}; + +RomanianStemmer.prototype.r_step_0 = RomanianStemmer.prototype.r_step_0$; + +function RomanianStemmer$r_step_0$LRomanianStemmer$($this) { + var among_var; + var v_1; + var lab0; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RomanianStemmer.a_1, 16); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 5: + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ab")) { + break lab0; + } + return false; + } + $this.cursor = (($this.limit - v_1) | 0); + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "at")) { + return false; + } + break; + case 7: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a\u0163i")) { + return false; + } + break; + } + return true; +}; + +RomanianStemmer.r_step_0$LRomanianStemmer$ = RomanianStemmer$r_step_0$LRomanianStemmer$; + +RomanianStemmer.prototype.r_combo_suffix$ = function () { + var among_var; + var v_1; + var cursor$0; + var cursor$1; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + this.ket = cursor$0; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RomanianStemmer.a_2, 46); + if (among_var === 0) { + return false; + } + this.bra = cursor$1 = this.cursor; + if (! (! (this.I_p1 <= cursor$1) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "abil")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ibil")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "iv")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ic")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "at")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "it")) { + return false; + } + break; + } + this.B_standard_suffix_removed = true; + this.cursor = ((this.limit - v_1) | 0); + return true; +}; + +RomanianStemmer.prototype.r_combo_suffix = RomanianStemmer.prototype.r_combo_suffix$; + +function RomanianStemmer$r_combo_suffix$LRomanianStemmer$($this) { + var among_var; + var v_1; + var cursor$0; + var cursor$1; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + $this.ket = cursor$0; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RomanianStemmer.a_2, 46); + if (among_var === 0) { + return false; + } + $this.bra = cursor$1 = $this.cursor; + if (! (! ($this.I_p1 <= cursor$1) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "abil")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ibil")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "iv")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ic")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "at")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "it")) { + return false; + } + break; + } + $this.B_standard_suffix_removed = true; + $this.cursor = (($this.limit - v_1) | 0); + return true; +}; + +RomanianStemmer.r_combo_suffix$LRomanianStemmer$ = RomanianStemmer$r_combo_suffix$LRomanianStemmer$; + +RomanianStemmer.prototype.r_standard_suffix$ = function () { + var among_var; + var v_1; + var lab1; + var cursor$0; + this.B_standard_suffix_removed = false; +replab0: + while (true) { + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! RomanianStemmer$r_combo_suffix$LRomanianStemmer$(this)) { + break lab1; + } + continue replab0; + } + this.cursor = ((this.limit - v_1) | 0); + break replab0; + } + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RomanianStemmer.a_3, 62); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p2 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u0163")) { + return false; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "t")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ist")) { + return false; + } + break; + } + this.B_standard_suffix_removed = true; + return true; +}; + +RomanianStemmer.prototype.r_standard_suffix = RomanianStemmer.prototype.r_standard_suffix$; + +function RomanianStemmer$r_standard_suffix$LRomanianStemmer$($this) { + var among_var; + var v_1; + var lab1; + var cursor$0; + $this.B_standard_suffix_removed = false; +replab0: + while (true) { + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! RomanianStemmer$r_combo_suffix$LRomanianStemmer$($this)) { + break lab1; + } + continue replab0; + } + $this.cursor = (($this.limit - v_1) | 0); + break replab0; + } + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RomanianStemmer.a_3, 62); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u0163")) { + return false; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "t")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ist")) { + return false; + } + break; + } + $this.B_standard_suffix_removed = true; + return true; +}; + +RomanianStemmer.r_standard_suffix$LRomanianStemmer$ = RomanianStemmer$r_standard_suffix$LRomanianStemmer$; + +RomanianStemmer.prototype.r_verb_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_pV) { + return false; + } + cursor$1 = this.cursor = this.I_pV; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RomanianStemmer.a_4, 94); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.limit_backward = v_2; + return false; + case 1: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_3 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, RomanianStemmer.g_v, 97, 259)) { + break lab1; + } + break lab0; + } + this.cursor = ((this.limit - v_3) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "u")) { + this.limit_backward = v_2; + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + this.limit_backward = v_2; + return true; +}; + +RomanianStemmer.prototype.r_verb_suffix = RomanianStemmer.prototype.r_verb_suffix$; + +function RomanianStemmer$r_verb_suffix$LRomanianStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_pV) { + return false; + } + cursor$1 = $this.cursor = $this.I_pV; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RomanianStemmer.a_4, 94); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.limit_backward = v_2; + return false; + case 1: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_3 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, RomanianStemmer.g_v, 97, 259)) { + break lab1; + } + break lab0; + } + $this.cursor = (($this.limit - v_3) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "u")) { + $this.limit_backward = v_2; + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + $this.limit_backward = v_2; + return true; +}; + +RomanianStemmer.r_verb_suffix$LRomanianStemmer$ = RomanianStemmer$r_verb_suffix$LRomanianStemmer$; + +RomanianStemmer.prototype.r_vowel_suffix$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RomanianStemmer.a_5, 5); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_pV <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +RomanianStemmer.prototype.r_vowel_suffix = RomanianStemmer.prototype.r_vowel_suffix$; + +function RomanianStemmer$r_vowel_suffix$LRomanianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RomanianStemmer.a_5, 5); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_pV <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +RomanianStemmer.r_vowel_suffix$LRomanianStemmer$ = RomanianStemmer$r_vowel_suffix$LRomanianStemmer$; + +RomanianStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var cursor$0; + var cursor$1; + var limit$0; + var cursor$2; + var limit$1; + var cursor$3; + var limit$2; + var cursor$4; + var cursor$5; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! RomanianStemmer$r_prelude$LRomanianStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + v_2 = cursor$0; + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! RomanianStemmer$r_mark_regions$LRomanianStemmer$(this)) { + break lab1; + } + } + cursor$1 = this.cursor = v_2; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = limit$0 = this.limit; + v_3 = ((limit$0 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! RomanianStemmer$r_step_0$LRomanianStemmer$(this)) { + break lab2; + } + } + cursor$3 = this.cursor = (((limit$1 = this.limit) - v_3) | 0); + v_4 = ((limit$1 - cursor$3) | 0); + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + if (! RomanianStemmer$r_standard_suffix$LRomanianStemmer$(this)) { + break lab3; + } + } + cursor$4 = this.cursor = (((limit$2 = this.limit) - v_4) | 0); + v_5 = ((limit$2 - cursor$4) | 0); + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + v_6 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! this.B_standard_suffix_removed) { + break lab6; + } + break lab5; + } + this.cursor = ((this.limit - v_6) | 0); + if (! RomanianStemmer$r_verb_suffix$LRomanianStemmer$(this)) { + break lab4; + } + } + } + this.cursor = ((this.limit - v_5) | 0); + lab7 = true; +lab7: + while (lab7 === true) { + lab7 = false; + if (! RomanianStemmer$r_vowel_suffix$LRomanianStemmer$(this)) { + break lab7; + } + } + cursor$5 = this.cursor = this.limit_backward; + v_8 = cursor$5; + lab8 = true; +lab8: + while (lab8 === true) { + lab8 = false; + if (! RomanianStemmer$r_postlude$LRomanianStemmer$(this)) { + break lab8; + } + } + this.cursor = v_8; + return true; +}; + +RomanianStemmer.prototype.stem = RomanianStemmer.prototype.stem$; + +RomanianStemmer.prototype.equals$X = function (o) { + return o instanceof RomanianStemmer; +}; + +RomanianStemmer.prototype.equals = RomanianStemmer.prototype.equals$X; + +function RomanianStemmer$equals$LRomanianStemmer$X($this, o) { + return o instanceof RomanianStemmer; +}; + +RomanianStemmer.equals$LRomanianStemmer$X = RomanianStemmer$equals$LRomanianStemmer$X; + +RomanianStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "RomanianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +RomanianStemmer.prototype.hashCode = RomanianStemmer.prototype.hashCode$; + +function RomanianStemmer$hashCode$LRomanianStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "RomanianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +RomanianStemmer.hashCode$LRomanianStemmer$ = RomanianStemmer$hashCode$LRomanianStemmer$; + +RomanianStemmer.serialVersionUID = 1; +$__jsx_lazy_init(RomanianStemmer, "methodObject", function () { + return new RomanianStemmer(); +}); +$__jsx_lazy_init(RomanianStemmer, "a_0", function () { + return [ new Among("", -1, 3), new Among("I", 0, 1), new Among("U", 0, 2) ]; +}); +$__jsx_lazy_init(RomanianStemmer, "a_1", function () { + return [ new Among("ea", -1, 3), new Among("a\u0163ia", -1, 7), new Among("aua", -1, 2), new Among("iua", -1, 4), new Among("a\u0163ie", -1, 7), new Among("ele", -1, 3), new Among("ile", -1, 5), new Among("iile", 6, 4), new Among("iei", -1, 4), new Among("atei", -1, 6), new Among("ii", -1, 4), new Among("ului", -1, 1), new Among("ul", -1, 1), new Among("elor", -1, 3), new Among("ilor", -1, 4), new Among("iilor", 14, 4) ]; +}); +$__jsx_lazy_init(RomanianStemmer, "a_2", function () { + return [ new Among("icala", -1, 4), new Among("iciva", -1, 4), new Among("ativa", -1, 5), new Among("itiva", -1, 6), new Among("icale", -1, 4), new Among("a\u0163iune", -1, 5), new Among("i\u0163iune", -1, 6), new Among("atoare", -1, 5), new Among("itoare", -1, 6), new Among("\u0103toare", -1, 5), new Among("icitate", -1, 4), new Among("abilitate", -1, 1), new Among("ibilitate", -1, 2), new Among("ivitate", -1, 3), new Among("icive", -1, 4), new Among("ative", -1, 5), new Among("itive", -1, 6), new Among("icali", -1, 4), new Among("atori", -1, 5), new Among("icatori", 18, 4), new Among("itori", -1, 6), new Among("\u0103tori", -1, 5), new Among("icitati", -1, 4), new Among("abilitati", -1, 1), new Among("ivitati", -1, 3), new Among("icivi", -1, 4), new Among("ativi", -1, 5), new Among("itivi", -1, 6), new Among("icit\u0103i", -1, 4), new Among("abilit\u0103i", -1, 1), new Among("ivit\u0103i", -1, 3), new Among("icit\u0103\u0163i", -1, 4), new Among("abilit\u0103\u0163i", -1, 1), new Among("ivit\u0103\u0163i", -1, 3), new Among("ical", -1, 4), new Among("ator", -1, 5), new Among("icator", 35, 4), new Among("itor", -1, 6), new Among("\u0103tor", -1, 5), new Among("iciv", -1, 4), new Among("ativ", -1, 5), new Among("itiv", -1, 6), new Among("ical\u0103", -1, 4), new Among("iciv\u0103", -1, 4), new Among("ativ\u0103", -1, 5), new Among("itiv\u0103", -1, 6) ]; +}); +$__jsx_lazy_init(RomanianStemmer, "a_3", function () { + return [ new Among("ica", -1, 1), new Among("abila", -1, 1), new Among("ibila", -1, 1), new Among("oasa", -1, 1), new Among("ata", -1, 1), new Among("ita", -1, 1), new Among("anta", -1, 1), new Among("ista", -1, 3), new Among("uta", -1, 1), new Among("iva", -1, 1), new Among("ic", -1, 1), new Among("ice", -1, 1), new Among("abile", -1, 1), new Among("ibile", -1, 1), new Among("isme", -1, 3), new Among("iune", -1, 2), new Among("oase", -1, 1), new Among("ate", -1, 1), new Among("itate", 17, 1), new Among("ite", -1, 1), new Among("ante", -1, 1), new Among("iste", -1, 3), new Among("ute", -1, 1), new Among("ive", -1, 1), new Among("ici", -1, 1), new Among("abili", -1, 1), new Among("ibili", -1, 1), new Among("iuni", -1, 2), new Among("atori", -1, 1), new Among("osi", -1, 1), new Among("ati", -1, 1), new Among("itati", 30, 1), new Among("iti", -1, 1), new Among("anti", -1, 1), new Among("isti", -1, 3), new Among("uti", -1, 1), new Among("i\u015Fti", -1, 3), new Among("ivi", -1, 1), new Among("it\u0103i", -1, 1), new Among("o\u015Fi", -1, 1), new Among("it\u0103\u0163i", -1, 1), new Among("abil", -1, 1), new Among("ibil", -1, 1), new Among("ism", -1, 3), new Among("ator", -1, 1), new Among("os", -1, 1), new Among("at", -1, 1), new Among("it", -1, 1), new Among("ant", -1, 1), new Among("ist", -1, 3), new Among("ut", -1, 1), new Among("iv", -1, 1), new Among("ic\u0103", -1, 1), new Among("abil\u0103", -1, 1), new Among("ibil\u0103", -1, 1), new Among("oas\u0103", -1, 1), new Among("at\u0103", -1, 1), new Among("it\u0103", -1, 1), new Among("ant\u0103", -1, 1), new Among("ist\u0103", -1, 3), new Among("ut\u0103", -1, 1), new Among("iv\u0103", -1, 1) ]; +}); +$__jsx_lazy_init(RomanianStemmer, "a_4", function () { + return [ new Among("ea", -1, 1), new Among("ia", -1, 1), new Among("esc", -1, 1), new Among("\u0103sc", -1, 1), new Among("ind", -1, 1), new Among("\u00E2nd", -1, 1), new Among("are", -1, 1), new Among("ere", -1, 1), new Among("ire", -1, 1), new Among("\u00E2re", -1, 1), new Among("se", -1, 2), new Among("ase", 10, 1), new Among("sese", 10, 2), new Among("ise", 10, 1), new Among("use", 10, 1), new Among("\u00E2se", 10, 1), new Among("e\u015Fte", -1, 1), new Among("\u0103\u015Fte", -1, 1), new Among("eze", -1, 1), new Among("ai", -1, 1), new Among("eai", 19, 1), new Among("iai", 19, 1), new Among("sei", -1, 2), new Among("e\u015Fti", -1, 1), new Among("\u0103\u015Fti", -1, 1), new Among("ui", -1, 1), new Among("ezi", -1, 1), new Among("\u00E2i", -1, 1), new Among("a\u015Fi", -1, 1), new Among("se\u015Fi", -1, 2), new Among("ase\u015Fi", 29, 1), new Among("sese\u015Fi", 29, 2), new Among("ise\u015Fi", 29, 1), new Among("use\u015Fi", 29, 1), new Among("\u00E2se\u015Fi", 29, 1), new Among("i\u015Fi", -1, 1), new Among("u\u015Fi", -1, 1), new Among("\u00E2\u015Fi", -1, 1), new Among("a\u0163i", -1, 2), new Among("ea\u0163i", 38, 1), new Among("ia\u0163i", 38, 1), new Among("e\u0163i", -1, 2), new Among("i\u0163i", -1, 2), new Among("\u00E2\u0163i", -1, 2), new Among("ar\u0103\u0163i", -1, 1), new Among("ser\u0103\u0163i", -1, 2), new Among("aser\u0103\u0163i", 45, 1), new Among("seser\u0103\u0163i", 45, 2), new Among("iser\u0103\u0163i", 45, 1), new Among("user\u0103\u0163i", 45, 1), new Among("\u00E2ser\u0103\u0163i", 45, 1), new Among("ir\u0103\u0163i", -1, 1), new Among("ur\u0103\u0163i", -1, 1), new Among("\u00E2r\u0103\u0163i", -1, 1), new Among("am", -1, 1), new Among("eam", 54, 1), new Among("iam", 54, 1), new Among("em", -1, 2), new Among("asem", 57, 1), new Among("sesem", 57, 2), new Among("isem", 57, 1), new Among("usem", 57, 1), new Among("\u00E2sem", 57, 1), new Among("im", -1, 2), new Among("\u00E2m", -1, 2), new Among("\u0103m", -1, 2), new Among("ar\u0103m", 65, 1), new Among("ser\u0103m", 65, 2), new Among("aser\u0103m", 67, 1), new Among("seser\u0103m", 67, 2), new Among("iser\u0103m", 67, 1), new Among("user\u0103m", 67, 1), new Among("\u00E2ser\u0103m", 67, 1), new Among("ir\u0103m", 65, 1), new Among("ur\u0103m", 65, 1), new Among("\u00E2r\u0103m", 65, 1), new Among("au", -1, 1), new Among("eau", 76, 1), new Among("iau", 76, 1), new Among("indu", -1, 1), new Among("\u00E2ndu", -1, 1), new Among("ez", -1, 1), new Among("easc\u0103", -1, 1), new Among("ar\u0103", -1, 1), new Among("ser\u0103", -1, 2), new Among("aser\u0103", 84, 1), new Among("seser\u0103", 84, 2), new Among("iser\u0103", 84, 1), new Among("user\u0103", 84, 1), new Among("\u00E2ser\u0103", 84, 1), new Among("ir\u0103", -1, 1), new Among("ur\u0103", -1, 1), new Among("\u00E2r\u0103", -1, 1), new Among("eaz\u0103", -1, 1) ]; +}); +$__jsx_lazy_init(RomanianStemmer, "a_5", function () { + return [ new Among("a", -1, 1), new Among("e", -1, 1), new Among("ie", 1, 1), new Among("i", -1, 1), new Among("\u0103", -1, 1) ]; +}); +RomanianStemmer.g_v = [ 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 32, 0, 0, 4 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/romanian-stemmer.jsx": { + RomanianStemmer: RomanianStemmer, + RomanianStemmer$: RomanianStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var RomanianStemmer = JSX.require("src/romanian-stemmer.jsx").RomanianStemmer; diff --git a/sphinx/search/non-minified-js/russian-stemmer.js b/sphinx/search/non-minified-js/russian-stemmer.js new file mode 100644 index 000000000..74d630968 --- /dev/null +++ b/sphinx/search/non-minified-js/russian-stemmer.js @@ -0,0 +1,2232 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function RussianStemmer() { + BaseStemmer.call(this); + this.I_p2 = 0; + this.I_pV = 0; +}; + +$__jsx_extend([RussianStemmer], BaseStemmer); +RussianStemmer.prototype.copy_from$LRussianStemmer$ = function (other) { + this.I_p2 = other.I_p2; + this.I_pV = other.I_pV; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +RussianStemmer.prototype.copy_from = RussianStemmer.prototype.copy_from$LRussianStemmer$; + +RussianStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var lab0; + var lab2; + var lab4; + var lab6; + var lab8; + var limit$0; + var $__jsx_postinc_t; + this.I_pV = limit$0 = this.limit; + this.I_p2 = limit$0; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + golab1: + while (true) { + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RussianStemmer.g_v, 1072, 1103)) { + break lab2; + } + break golab1; + } + if (this.cursor >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_pV = this.cursor; + golab3: + while (true) { + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, RussianStemmer.g_v, 1072, 1103)) { + break lab4; + } + break golab3; + } + if (this.cursor >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, RussianStemmer.g_v, 1072, 1103)) { + break lab6; + } + break golab5; + } + if (this.cursor >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, RussianStemmer.g_v, 1072, 1103)) { + break lab8; + } + break golab7; + } + if (this.cursor >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + } + this.cursor = v_1; + return true; +}; + +RussianStemmer.prototype.r_mark_regions = RussianStemmer.prototype.r_mark_regions$; + +function RussianStemmer$r_mark_regions$LRussianStemmer$($this) { + var v_1; + var lab0; + var lab2; + var lab4; + var lab6; + var lab8; + var limit$0; + var $__jsx_postinc_t; + $this.I_pV = limit$0 = $this.limit; + $this.I_p2 = limit$0; + v_1 = $this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + golab1: + while (true) { + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RussianStemmer.g_v, 1072, 1103)) { + break lab2; + } + break golab1; + } + if ($this.cursor >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_pV = $this.cursor; + golab3: + while (true) { + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, RussianStemmer.g_v, 1072, 1103)) { + break lab4; + } + break golab3; + } + if ($this.cursor >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, RussianStemmer.g_v, 1072, 1103)) { + break lab6; + } + break golab5; + } + if ($this.cursor >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, RussianStemmer.g_v, 1072, 1103)) { + break lab8; + } + break golab7; + } + if ($this.cursor >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p2 = $this.cursor; + } + $this.cursor = v_1; + return true; +}; + +RussianStemmer.r_mark_regions$LRussianStemmer$ = RussianStemmer$r_mark_regions$LRussianStemmer$; + +RussianStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +RussianStemmer.prototype.r_R2 = RussianStemmer.prototype.r_R2$; + +function RussianStemmer$r_R2$LRussianStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +RussianStemmer.r_R2$LRussianStemmer$ = RussianStemmer$r_R2$LRussianStemmer$; + +RussianStemmer.prototype.r_perfective_gerund$ = function () { + var among_var; + var v_1; + var lab0; + var lab1; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RussianStemmer.a_0, 9); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u0430")) { + break lab1; + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u044F")) { + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.prototype.r_perfective_gerund = RussianStemmer.prototype.r_perfective_gerund$; + +function RussianStemmer$r_perfective_gerund$LRussianStemmer$($this) { + var among_var; + var v_1; + var lab0; + var lab1; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RussianStemmer.a_0, 9); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u0430")) { + break lab1; + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u044F")) { + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.r_perfective_gerund$LRussianStemmer$ = RussianStemmer$r_perfective_gerund$LRussianStemmer$; + +RussianStemmer.prototype.r_adjective$ = function () { + var among_var; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RussianStemmer.a_1, 26); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.prototype.r_adjective = RussianStemmer.prototype.r_adjective$; + +function RussianStemmer$r_adjective$LRussianStemmer$($this) { + var among_var; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RussianStemmer.a_1, 26); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.r_adjective$LRussianStemmer$ = RussianStemmer$r_adjective$LRussianStemmer$; + +RussianStemmer.prototype.r_adjectival$ = function () { + var among_var; + var v_1; + var v_2; + var lab0; + var lab1; + var lab2; + if (! RussianStemmer$r_adjective$LRussianStemmer$(this)) { + return false; + } + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RussianStemmer.a_2, 8); + if (among_var === 0) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_1) | 0); + break lab0; + case 1: + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u0430")) { + break lab2; + } + break lab1; + } + this.cursor = ((this.limit - v_2) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u044F")) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + return true; +}; + +RussianStemmer.prototype.r_adjectival = RussianStemmer.prototype.r_adjectival$; + +function RussianStemmer$r_adjectival$LRussianStemmer$($this) { + var among_var; + var v_1; + var v_2; + var lab0; + var lab1; + var lab2; + if (! RussianStemmer$r_adjective$LRussianStemmer$($this)) { + return false; + } + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RussianStemmer.a_2, 8); + if (among_var === 0) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + case 1: + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u0430")) { + break lab2; + } + break lab1; + } + $this.cursor = (($this.limit - v_2) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u044F")) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + return true; +}; + +RussianStemmer.r_adjectival$LRussianStemmer$ = RussianStemmer$r_adjectival$LRussianStemmer$; + +RussianStemmer.prototype.r_reflexive$ = function () { + var among_var; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RussianStemmer.a_3, 2); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.prototype.r_reflexive = RussianStemmer.prototype.r_reflexive$; + +function RussianStemmer$r_reflexive$LRussianStemmer$($this) { + var among_var; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RussianStemmer.a_3, 2); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.r_reflexive$LRussianStemmer$ = RussianStemmer$r_reflexive$LRussianStemmer$; + +RussianStemmer.prototype.r_verb$ = function () { + var among_var; + var v_1; + var lab0; + var lab1; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RussianStemmer.a_4, 46); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u0430")) { + break lab1; + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u044F")) { + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.prototype.r_verb = RussianStemmer.prototype.r_verb$; + +function RussianStemmer$r_verb$LRussianStemmer$($this) { + var among_var; + var v_1; + var lab0; + var lab1; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RussianStemmer.a_4, 46); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u0430")) { + break lab1; + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u044F")) { + return false; + } + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.r_verb$LRussianStemmer$ = RussianStemmer$r_verb$LRussianStemmer$; + +RussianStemmer.prototype.r_noun$ = function () { + var among_var; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RussianStemmer.a_5, 36); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.prototype.r_noun = RussianStemmer.prototype.r_noun$; + +function RussianStemmer$r_noun$LRussianStemmer$($this) { + var among_var; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RussianStemmer.a_5, 36); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.r_noun$LRussianStemmer$ = RussianStemmer$r_noun$LRussianStemmer$; + +RussianStemmer.prototype.r_derivational$ = function () { + var among_var; + var cursor$0; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RussianStemmer.a_6, 2); + if (among_var === 0) { + return false; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p2 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.prototype.r_derivational = RussianStemmer.prototype.r_derivational$; + +function RussianStemmer$r_derivational$LRussianStemmer$($this) { + var among_var; + var cursor$0; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RussianStemmer.a_6, 2); + if (among_var === 0) { + return false; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$0) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.r_derivational$LRussianStemmer$ = RussianStemmer$r_derivational$LRussianStemmer$; + +RussianStemmer.prototype.r_tidy_up$ = function () { + var among_var; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, RussianStemmer.a_7, 4); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u043D")) { + return false; + } + this.bra = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u043D")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u043D")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.prototype.r_tidy_up = RussianStemmer.prototype.r_tidy_up$; + +function RussianStemmer$r_tidy_up$LRussianStemmer$($this) { + var among_var; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, RussianStemmer.a_7, 4); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u043D")) { + return false; + } + $this.bra = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u043D")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u043D")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +RussianStemmer.r_tidy_up$LRussianStemmer$ = RussianStemmer$r_tidy_up$LRussianStemmer$; + +RussianStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var cursor$3; + var limit$2; + var cursor$4; + var limit$3; + var cursor$5; + var limit_backward$0; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! RussianStemmer$r_mark_regions$LRussianStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + this.limit_backward = cursor$0; + cursor$1 = this.cursor = limit$0 = this.limit; + v_2 = ((limit$0 - cursor$1) | 0); + if (cursor$1 < this.I_pV) { + return false; + } + cursor$3 = this.cursor = this.I_pV; + v_3 = this.limit_backward; + this.limit_backward = cursor$3; + cursor$4 = this.cursor = (((limit$2 = this.limit) - v_2) | 0); + v_4 = ((limit$2 - cursor$4) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_5 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! RussianStemmer$r_perfective_gerund$LRussianStemmer$(this)) { + break lab3; + } + break lab2; + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_5) | 0); + v_6 = ((limit$1 - cursor$2) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! RussianStemmer$r_reflexive$LRussianStemmer$(this)) { + this.cursor = ((this.limit - v_6) | 0); + break lab4; + } + } + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + v_7 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! RussianStemmer$r_adjectival$LRussianStemmer$(this)) { + break lab6; + } + break lab5; + } + this.cursor = ((this.limit - v_7) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! RussianStemmer$r_verb$LRussianStemmer$(this)) { + break lab7; + } + break lab5; + } + this.cursor = ((this.limit - v_7) | 0); + if (! RussianStemmer$r_noun$LRussianStemmer$(this)) { + break lab1; + } + } + } + } + cursor$5 = this.cursor = (((limit$3 = this.limit) - v_4) | 0); + v_8 = ((limit$3 - cursor$5) | 0); + lab8 = true; +lab8: + while (lab8 === true) { + lab8 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u0438")) { + this.cursor = ((this.limit - v_8) | 0); + break lab8; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + v_9 = ((this.limit - this.cursor) | 0); + lab9 = true; +lab9: + while (lab9 === true) { + lab9 = false; + if (! RussianStemmer$r_derivational$LRussianStemmer$(this)) { + break lab9; + } + } + this.cursor = ((this.limit - v_9) | 0); + lab10 = true; +lab10: + while (lab10 === true) { + lab10 = false; + if (! RussianStemmer$r_tidy_up$LRussianStemmer$(this)) { + break lab10; + } + } + limit_backward$0 = this.limit_backward = v_3; + this.cursor = limit_backward$0; + return true; +}; + +RussianStemmer.prototype.stem = RussianStemmer.prototype.stem$; + +RussianStemmer.prototype.equals$X = function (o) { + return o instanceof RussianStemmer; +}; + +RussianStemmer.prototype.equals = RussianStemmer.prototype.equals$X; + +function RussianStemmer$equals$LRussianStemmer$X($this, o) { + return o instanceof RussianStemmer; +}; + +RussianStemmer.equals$LRussianStemmer$X = RussianStemmer$equals$LRussianStemmer$X; + +RussianStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "RussianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +RussianStemmer.prototype.hashCode = RussianStemmer.prototype.hashCode$; + +function RussianStemmer$hashCode$LRussianStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "RussianStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +RussianStemmer.hashCode$LRussianStemmer$ = RussianStemmer$hashCode$LRussianStemmer$; + +RussianStemmer.serialVersionUID = 1; +$__jsx_lazy_init(RussianStemmer, "methodObject", function () { + return new RussianStemmer(); +}); +$__jsx_lazy_init(RussianStemmer, "a_0", function () { + return [ new Among("\u0432", -1, 1), new Among("\u0438\u0432", 0, 2), new Among("\u044B\u0432", 0, 2), new Among("\u0432\u0448\u0438", -1, 1), new Among("\u0438\u0432\u0448\u0438", 3, 2), new Among("\u044B\u0432\u0448\u0438", 3, 2), new Among("\u0432\u0448\u0438\u0441\u044C", -1, 1), new Among("\u0438\u0432\u0448\u0438\u0441\u044C", 6, 2), new Among("\u044B\u0432\u0448\u0438\u0441\u044C", 6, 2) ]; +}); +$__jsx_lazy_init(RussianStemmer, "a_1", function () { + return [ new Among("\u0435\u0435", -1, 1), new Among("\u0438\u0435", -1, 1), new Among("\u043E\u0435", -1, 1), new Among("\u044B\u0435", -1, 1), new Among("\u0438\u043C\u0438", -1, 1), new Among("\u044B\u043C\u0438", -1, 1), new Among("\u0435\u0439", -1, 1), new Among("\u0438\u0439", -1, 1), new Among("\u043E\u0439", -1, 1), new Among("\u044B\u0439", -1, 1), new Among("\u0435\u043C", -1, 1), new Among("\u0438\u043C", -1, 1), new Among("\u043E\u043C", -1, 1), new Among("\u044B\u043C", -1, 1), new Among("\u0435\u0433\u043E", -1, 1), new Among("\u043E\u0433\u043E", -1, 1), new Among("\u0435\u043C\u0443", -1, 1), new Among("\u043E\u043C\u0443", -1, 1), new Among("\u0438\u0445", -1, 1), new Among("\u044B\u0445", -1, 1), new Among("\u0435\u044E", -1, 1), new Among("\u043E\u044E", -1, 1), new Among("\u0443\u044E", -1, 1), new Among("\u044E\u044E", -1, 1), new Among("\u0430\u044F", -1, 1), new Among("\u044F\u044F", -1, 1) ]; +}); +$__jsx_lazy_init(RussianStemmer, "a_2", function () { + return [ new Among("\u0435\u043C", -1, 1), new Among("\u043D\u043D", -1, 1), new Among("\u0432\u0448", -1, 1), new Among("\u0438\u0432\u0448", 2, 2), new Among("\u044B\u0432\u0448", 2, 2), new Among("\u0449", -1, 1), new Among("\u044E\u0449", 5, 1), new Among("\u0443\u044E\u0449", 6, 2) ]; +}); +$__jsx_lazy_init(RussianStemmer, "a_3", function () { + return [ new Among("\u0441\u044C", -1, 1), new Among("\u0441\u044F", -1, 1) ]; +}); +$__jsx_lazy_init(RussianStemmer, "a_4", function () { + return [ new Among("\u043B\u0430", -1, 1), new Among("\u0438\u043B\u0430", 0, 2), new Among("\u044B\u043B\u0430", 0, 2), new Among("\u043D\u0430", -1, 1), new Among("\u0435\u043D\u0430", 3, 2), new Among("\u0435\u0442\u0435", -1, 1), new Among("\u0438\u0442\u0435", -1, 2), new Among("\u0439\u0442\u0435", -1, 1), new Among("\u0435\u0439\u0442\u0435", 7, 2), new Among("\u0443\u0439\u0442\u0435", 7, 2), new Among("\u043B\u0438", -1, 1), new Among("\u0438\u043B\u0438", 10, 2), new Among("\u044B\u043B\u0438", 10, 2), new Among("\u0439", -1, 1), new Among("\u0435\u0439", 13, 2), new Among("\u0443\u0439", 13, 2), new Among("\u043B", -1, 1), new Among("\u0438\u043B", 16, 2), new Among("\u044B\u043B", 16, 2), new Among("\u0435\u043C", -1, 1), new Among("\u0438\u043C", -1, 2), new Among("\u044B\u043C", -1, 2), new Among("\u043D", -1, 1), new Among("\u0435\u043D", 22, 2), new Among("\u043B\u043E", -1, 1), new Among("\u0438\u043B\u043E", 24, 2), new Among("\u044B\u043B\u043E", 24, 2), new Among("\u043D\u043E", -1, 1), new Among("\u0435\u043D\u043E", 27, 2), new Among("\u043D\u043D\u043E", 27, 1), new Among("\u0435\u0442", -1, 1), new Among("\u0443\u0435\u0442", 30, 2), new Among("\u0438\u0442", -1, 2), new Among("\u044B\u0442", -1, 2), new Among("\u044E\u0442", -1, 1), new Among("\u0443\u044E\u0442", 34, 2), new Among("\u044F\u0442", -1, 2), new Among("\u043D\u044B", -1, 1), new Among("\u0435\u043D\u044B", 37, 2), new Among("\u0442\u044C", -1, 1), new Among("\u0438\u0442\u044C", 39, 2), new Among("\u044B\u0442\u044C", 39, 2), new Among("\u0435\u0448\u044C", -1, 1), new Among("\u0438\u0448\u044C", -1, 2), new Among("\u044E", -1, 2), new Among("\u0443\u044E", 44, 2) ]; +}); +$__jsx_lazy_init(RussianStemmer, "a_5", function () { + return [ new Among("\u0430", -1, 1), new Among("\u0435\u0432", -1, 1), new Among("\u043E\u0432", -1, 1), new Among("\u0435", -1, 1), new Among("\u0438\u0435", 3, 1), new Among("\u044C\u0435", 3, 1), new Among("\u0438", -1, 1), new Among("\u0435\u0438", 6, 1), new Among("\u0438\u0438", 6, 1), new Among("\u0430\u043C\u0438", 6, 1), new Among("\u044F\u043C\u0438", 6, 1), new Among("\u0438\u044F\u043C\u0438", 10, 1), new Among("\u0439", -1, 1), new Among("\u0435\u0439", 12, 1), new Among("\u0438\u0435\u0439", 13, 1), new Among("\u0438\u0439", 12, 1), new Among("\u043E\u0439", 12, 1), new Among("\u0430\u043C", -1, 1), new Among("\u0435\u043C", -1, 1), new Among("\u0438\u0435\u043C", 18, 1), new Among("\u043E\u043C", -1, 1), new Among("\u044F\u043C", -1, 1), new Among("\u0438\u044F\u043C", 21, 1), new Among("\u043E", -1, 1), new Among("\u0443", -1, 1), new Among("\u0430\u0445", -1, 1), new Among("\u044F\u0445", -1, 1), new Among("\u0438\u044F\u0445", 26, 1), new Among("\u044B", -1, 1), new Among("\u044C", -1, 1), new Among("\u044E", -1, 1), new Among("\u0438\u044E", 30, 1), new Among("\u044C\u044E", 30, 1), new Among("\u044F", -1, 1), new Among("\u0438\u044F", 33, 1), new Among("\u044C\u044F", 33, 1) ]; +}); +$__jsx_lazy_init(RussianStemmer, "a_6", function () { + return [ new Among("\u043E\u0441\u0442", -1, 1), new Among("\u043E\u0441\u0442\u044C", -1, 1) ]; +}); +$__jsx_lazy_init(RussianStemmer, "a_7", function () { + return [ new Among("\u0435\u0439\u0448\u0435", -1, 1), new Among("\u043D", -1, 2), new Among("\u0435\u0439\u0448", -1, 1), new Among("\u044C", -1, 3) ]; +}); +RussianStemmer.g_v = [ 33, 65, 8, 232 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/russian-stemmer.jsx": { + RussianStemmer: RussianStemmer, + RussianStemmer$: RussianStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var RussianStemmer = JSX.require("src/russian-stemmer.jsx").RussianStemmer; diff --git a/sphinx/search/non-minified-js/spanish-stemmer.js b/sphinx/search/non-minified-js/spanish-stemmer.js new file mode 100644 index 000000000..21b648fa8 --- /dev/null +++ b/sphinx/search/non-minified-js/spanish-stemmer.js @@ -0,0 +1,2938 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function SpanishStemmer() { + BaseStemmer.call(this); + this.I_p2 = 0; + this.I_p1 = 0; + this.I_pV = 0; +}; + +$__jsx_extend([SpanishStemmer], BaseStemmer); +SpanishStemmer.prototype.copy_from$LSpanishStemmer$ = function (other) { + this.I_p2 = other.I_p2; + this.I_p1 = other.I_p1; + this.I_pV = other.I_pV; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +SpanishStemmer.prototype.copy_from = SpanishStemmer.prototype.copy_from$LSpanishStemmer$; + +SpanishStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_2; + var v_3; + var v_6; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab6; + var lab8; + var lab9; + var lab10; + var lab12; + var lab13; + var lab15; + var lab17; + var lab19; + var lab21; + var limit$0; + var cursor$0; + var $__jsx_postinc_t; + this.I_pV = limit$0 = this.limit; + this.I_p1 = limit$0; + this.I_p2 = limit$0; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab2; + } + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab4; + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab6; + } + break golab5; + } + if (this.cursor >= this.limit) { + break lab4; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab3; + } + this.cursor = v_3; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab2; + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab8; + } + break golab7; + } + if (this.cursor >= this.limit) { + break lab2; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + break lab1; + } + this.cursor = v_2; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab0; + } + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_6 = this.cursor; + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab10; + } + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab12; + } + break golab11; + } + if (this.cursor >= this.limit) { + break lab10; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab9; + } + this.cursor = v_6; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab0; + } + if (this.cursor >= this.limit) { + break lab0; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + this.I_pV = this.cursor; + } + cursor$0 = this.cursor = v_1; + v_8 = cursor$0; + lab13 = true; +lab13: + while (lab13 === true) { + lab13 = false; + golab14: + while (true) { + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab15; + } + break golab14; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab16: + while (true) { + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab17; + } + break golab16; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + golab18: + while (true) { + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab19; + } + break golab18; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab20: + while (true) { + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, SpanishStemmer.g_v, 97, 252)) { + break lab21; + } + break golab20; + } + if (this.cursor >= this.limit) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p2 = this.cursor; + } + this.cursor = v_8; + return true; +}; + +SpanishStemmer.prototype.r_mark_regions = SpanishStemmer.prototype.r_mark_regions$; + +function SpanishStemmer$r_mark_regions$LSpanishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_6; + var v_8; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab6; + var lab8; + var lab9; + var lab10; + var lab12; + var lab13; + var lab15; + var lab17; + var lab19; + var lab21; + var limit$0; + var cursor$0; + var $__jsx_postinc_t; + $this.I_pV = limit$0 = $this.limit; + $this.I_p1 = limit$0; + $this.I_p2 = limit$0; + v_1 = $this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = $this.cursor; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab2; + } + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = $this.cursor; + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab4; + } + golab5: + while (true) { + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab6; + } + break golab5; + } + if ($this.cursor >= $this.limit) { + break lab4; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab3; + } + $this.cursor = v_3; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab2; + } + golab7: + while (true) { + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab8; + } + break golab7; + } + if ($this.cursor >= $this.limit) { + break lab2; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + break lab1; + } + $this.cursor = v_2; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab0; + } + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_6 = $this.cursor; + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab10; + } + golab11: + while (true) { + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab12; + } + break golab11; + } + if ($this.cursor >= $this.limit) { + break lab10; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + break lab9; + } + $this.cursor = v_6; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab0; + } + if ($this.cursor >= $this.limit) { + break lab0; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + } + $this.I_pV = $this.cursor; + } + cursor$0 = $this.cursor = v_1; + v_8 = cursor$0; + lab13 = true; +lab13: + while (lab13 === true) { + lab13 = false; + golab14: + while (true) { + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab15; + } + break golab14; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab16: + while (true) { + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab17; + } + break golab16; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + golab18: + while (true) { + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab19; + } + break golab18; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + golab20: + while (true) { + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, SpanishStemmer.g_v, 97, 252)) { + break lab21; + } + break golab20; + } + if ($this.cursor >= $this.limit) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p2 = $this.cursor; + } + $this.cursor = v_8; + return true; +}; + +SpanishStemmer.r_mark_regions$LSpanishStemmer$ = SpanishStemmer$r_mark_regions$LSpanishStemmer$; + +SpanishStemmer.prototype.r_postlude$ = function () { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.bra = this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_0, 6); + if (among_var === 0) { + break lab1; + } + this.ket = this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "i")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "o")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 6: + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + this.cursor = v_1; + break replab0; + } + return true; +}; + +SpanishStemmer.prototype.r_postlude = SpanishStemmer.prototype.r_postlude$; + +function SpanishStemmer$r_postlude$LSpanishStemmer$($this) { + var among_var; + var v_1; + var lab1; + var $__jsx_postinc_t; +replab0: + while (true) { + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_0, 6); + if (among_var === 0) { + break lab1; + } + $this.ket = $this.cursor; + switch (among_var) { + case 0: + break lab1; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "a")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "e")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "i")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "o")) { + return false; + } + break; + case 5: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 6: + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + break; + } + continue replab0; + } + $this.cursor = v_1; + break replab0; + } + return true; +}; + +SpanishStemmer.r_postlude$LSpanishStemmer$ = SpanishStemmer$r_postlude$LSpanishStemmer$; + +SpanishStemmer.prototype.r_RV$ = function () { + return (! (this.I_pV <= this.cursor) ? false : true); +}; + +SpanishStemmer.prototype.r_RV = SpanishStemmer.prototype.r_RV$; + +function SpanishStemmer$r_RV$LSpanishStemmer$($this) { + return (! ($this.I_pV <= $this.cursor) ? false : true); +}; + +SpanishStemmer.r_RV$LSpanishStemmer$ = SpanishStemmer$r_RV$LSpanishStemmer$; + +SpanishStemmer.prototype.r_R1$ = function () { + return (! (this.I_p1 <= this.cursor) ? false : true); +}; + +SpanishStemmer.prototype.r_R1 = SpanishStemmer.prototype.r_R1$; + +function SpanishStemmer$r_R1$LSpanishStemmer$($this) { + return (! ($this.I_p1 <= $this.cursor) ? false : true); +}; + +SpanishStemmer.r_R1$LSpanishStemmer$ = SpanishStemmer$r_R1$LSpanishStemmer$; + +SpanishStemmer.prototype.r_R2$ = function () { + return (! (this.I_p2 <= this.cursor) ? false : true); +}; + +SpanishStemmer.prototype.r_R2 = SpanishStemmer.prototype.r_R2$; + +function SpanishStemmer$r_R2$LSpanishStemmer$($this) { + return (! ($this.I_p2 <= $this.cursor) ? false : true); +}; + +SpanishStemmer.r_R2$LSpanishStemmer$ = SpanishStemmer$r_R2$LSpanishStemmer$; + +SpanishStemmer.prototype.r_attached_pronoun$ = function () { + var among_var; + this.ket = this.cursor; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_1, 13) === 0) { + return false; + } + this.bra = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_2, 11); + if (among_var === 0) { + return false; + } + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "iendo")) { + return false; + } + break; + case 2: + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ando")) { + return false; + } + break; + case 3: + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ar")) { + return false; + } + break; + case 4: + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "er")) { + return false; + } + break; + case 5: + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ir")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 7: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "u")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +SpanishStemmer.prototype.r_attached_pronoun = SpanishStemmer.prototype.r_attached_pronoun$; + +function SpanishStemmer$r_attached_pronoun$LSpanishStemmer$($this) { + var among_var; + $this.ket = $this.cursor; + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_1, 13) === 0) { + return false; + } + $this.bra = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_2, 11); + if (among_var === 0) { + return false; + } + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + switch (among_var) { + case 0: + return false; + case 1: + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "iendo")) { + return false; + } + break; + case 2: + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ando")) { + return false; + } + break; + case 3: + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ar")) { + return false; + } + break; + case 4: + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "er")) { + return false; + } + break; + case 5: + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ir")) { + return false; + } + break; + case 6: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 7: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "u")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +SpanishStemmer.r_attached_pronoun$LSpanishStemmer$ = SpanishStemmer$r_attached_pronoun$LSpanishStemmer$; + +SpanishStemmer.prototype.r_standard_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_6, 46); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ic")) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = cursor$0 = this.cursor; + if (! (! (this.I_p2 <= cursor$0) ? false : true)) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + case 3: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "log")) { + return false; + } + break; + case 4: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "u")) { + return false; + } + break; + case 5: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "ente")) { + return false; + } + break; + case 6: + if (! (! (this.I_p1 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_2 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_3, 4); + if (among_var === 0) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + this.bra = cursor$1 = this.cursor; + if (! (! (this.I_p2 <= cursor$1) ? false : true)) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_2) | 0); + break lab1; + case 1: + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "at")) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + this.bra = cursor$2 = this.cursor; + if (! (! (this.I_p2 <= cursor$2) ? false : true)) { + this.cursor = ((this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + case 7: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_3 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_4, 3); + if (among_var === 0) { + this.cursor = ((this.limit - v_3) | 0); + break lab2; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_3) | 0); + break lab2; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_3) | 0); + break lab2; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + case 8: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_4 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_5, 3); + if (among_var === 0) { + this.cursor = ((this.limit - v_4) | 0); + break lab3; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.cursor = ((this.limit - v_4) | 0); + break lab3; + case 1: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + this.cursor = ((this.limit - v_4) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + } + break; + case 9: + if (! (! (this.I_p2 <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_5 = ((this.limit - this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "at")) { + this.cursor = ((this.limit - v_5) | 0); + break lab4; + } + this.bra = cursor$3 = this.cursor; + if (! (! (this.I_p2 <= cursor$3) ? false : true)) { + this.cursor = ((this.limit - v_5) | 0); + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + } + return true; +}; + +SpanishStemmer.prototype.r_standard_suffix = SpanishStemmer.prototype.r_standard_suffix$; + +function SpanishStemmer$r_standard_suffix$LSpanishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_6, 46); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ic")) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = cursor$0 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$0) ? false : true)) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + case 3: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "log")) { + return false; + } + break; + case 4: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "u")) { + return false; + } + break; + case 5: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "ente")) { + return false; + } + break; + case 6: + if (! (! ($this.I_p1 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_2 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_3, 4); + if (among_var === 0) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + $this.bra = cursor$1 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$1) ? false : true)) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + case 1: + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "at")) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + $this.bra = cursor$2 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$2) ? false : true)) { + $this.cursor = (($this.limit - v_2) | 0); + break lab1; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + case 7: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_3 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_4, 3); + if (among_var === 0) { + $this.cursor = (($this.limit - v_3) | 0); + break lab2; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_3) | 0); + break lab2; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab2; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + case 8: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_4 = (($this.limit - $this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_5, 3); + if (among_var === 0) { + $this.cursor = (($this.limit - v_4) | 0); + break lab3; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.cursor = (($this.limit - v_4) | 0); + break lab3; + case 1: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + $this.cursor = (($this.limit - v_4) | 0); + break lab3; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + } + break; + case 9: + if (! (! ($this.I_p2 <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_5 = (($this.limit - $this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "at")) { + $this.cursor = (($this.limit - v_5) | 0); + break lab4; + } + $this.bra = cursor$3 = $this.cursor; + if (! (! ($this.I_p2 <= cursor$3) ? false : true)) { + $this.cursor = (($this.limit - v_5) | 0); + break lab4; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + } + return true; +}; + +SpanishStemmer.r_standard_suffix$LSpanishStemmer$ = SpanishStemmer$r_standard_suffix$LSpanishStemmer$; + +SpanishStemmer.prototype.r_y_verb_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_pV) { + return false; + } + cursor$1 = this.cursor = this.I_pV; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_7, 12); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "u")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +SpanishStemmer.prototype.r_y_verb_suffix = SpanishStemmer.prototype.r_y_verb_suffix$; + +function SpanishStemmer$r_y_verb_suffix$LSpanishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_pV) { + return false; + } + cursor$1 = $this.cursor = $this.I_pV; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_7, 12); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "u")) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +SpanishStemmer.r_y_verb_suffix$LSpanishStemmer$ = SpanishStemmer$r_y_verb_suffix$LSpanishStemmer$; + +SpanishStemmer.prototype.r_verb_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_pV) { + return false; + } + cursor$1 = this.cursor = this.I_pV; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_8, 96); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + v_3 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "u")) { + this.cursor = ((this.limit - v_3) | 0); + break lab0; + } + v_4 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "g")) { + this.cursor = ((this.limit - v_3) | 0); + break lab0; + } + this.cursor = ((this.limit - v_4) | 0); + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +SpanishStemmer.prototype.r_verb_suffix = SpanishStemmer.prototype.r_verb_suffix$; + +function SpanishStemmer$r_verb_suffix$LSpanishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var v_3; + var v_4; + var lab0; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_pV) { + return false; + } + cursor$1 = $this.cursor = $this.I_pV; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_8, 96); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + v_3 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "u")) { + $this.cursor = (($this.limit - v_3) | 0); + break lab0; + } + v_4 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "g")) { + $this.cursor = (($this.limit - v_3) | 0); + break lab0; + } + $this.cursor = (($this.limit - v_4) | 0); + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +SpanishStemmer.r_verb_suffix$LSpanishStemmer$ = SpanishStemmer$r_verb_suffix$LSpanishStemmer$; + +SpanishStemmer.prototype.r_residual_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var lab0; + var cursor$0; + var cursor$1; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SpanishStemmer.a_9, 8); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! (! (this.I_pV <= this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + this.ket = this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "u")) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + this.bra = cursor$0 = this.cursor; + v_2 = ((this.limit - cursor$0) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "g")) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + cursor$1 = this.cursor = ((this.limit - v_2) | 0); + if (! (! (this.I_pV <= cursor$1) ? false : true)) { + this.cursor = ((this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + } + break; + } + return true; +}; + +SpanishStemmer.prototype.r_residual_suffix = SpanishStemmer.prototype.r_residual_suffix$; + +function SpanishStemmer$r_residual_suffix$LSpanishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var lab0; + var cursor$0; + var cursor$1; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SpanishStemmer.a_9, 8); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! (! ($this.I_pV <= $this.cursor) ? false : true)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; + lab0: + while (lab0 === true) { + lab0 = false; + $this.ket = $this.cursor; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "u")) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + $this.bra = cursor$0 = $this.cursor; + v_2 = (($this.limit - cursor$0) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "g")) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + cursor$1 = $this.cursor = (($this.limit - v_2) | 0); + if (! (! ($this.I_pV <= cursor$1) ? false : true)) { + $this.cursor = (($this.limit - v_1) | 0); + break lab0; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + } + break; + } + return true; +}; + +SpanishStemmer.r_residual_suffix$LSpanishStemmer$ = SpanishStemmer$r_residual_suffix$LSpanishStemmer$; + +SpanishStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_6; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var cursor$3; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! SpanishStemmer$r_mark_regions$LSpanishStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + this.limit_backward = cursor$0; + cursor$1 = this.cursor = limit$0 = this.limit; + v_2 = ((limit$0 - cursor$1) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! SpanishStemmer$r_attached_pronoun$LSpanishStemmer$(this)) { + break lab1; + } + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_2) | 0); + v_3 = ((limit$1 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_4 = ((this.limit - this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! SpanishStemmer$r_standard_suffix$LSpanishStemmer$(this)) { + break lab4; + } + break lab3; + } + this.cursor = ((this.limit - v_4) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! SpanishStemmer$r_y_verb_suffix$LSpanishStemmer$(this)) { + break lab5; + } + break lab3; + } + this.cursor = ((this.limit - v_4) | 0); + if (! SpanishStemmer$r_verb_suffix$LSpanishStemmer$(this)) { + break lab2; + } + } + } + this.cursor = ((this.limit - v_3) | 0); + lab6 = true; +lab6: + while (lab6 === true) { + lab6 = false; + if (! SpanishStemmer$r_residual_suffix$LSpanishStemmer$(this)) { + break lab6; + } + } + cursor$3 = this.cursor = this.limit_backward; + v_6 = cursor$3; + lab7 = true; +lab7: + while (lab7 === true) { + lab7 = false; + if (! SpanishStemmer$r_postlude$LSpanishStemmer$(this)) { + break lab7; + } + } + this.cursor = v_6; + return true; +}; + +SpanishStemmer.prototype.stem = SpanishStemmer.prototype.stem$; + +SpanishStemmer.prototype.equals$X = function (o) { + return o instanceof SpanishStemmer; +}; + +SpanishStemmer.prototype.equals = SpanishStemmer.prototype.equals$X; + +function SpanishStemmer$equals$LSpanishStemmer$X($this, o) { + return o instanceof SpanishStemmer; +}; + +SpanishStemmer.equals$LSpanishStemmer$X = SpanishStemmer$equals$LSpanishStemmer$X; + +SpanishStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "SpanishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +SpanishStemmer.prototype.hashCode = SpanishStemmer.prototype.hashCode$; + +function SpanishStemmer$hashCode$LSpanishStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "SpanishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +SpanishStemmer.hashCode$LSpanishStemmer$ = SpanishStemmer$hashCode$LSpanishStemmer$; + +SpanishStemmer.serialVersionUID = 1; +$__jsx_lazy_init(SpanishStemmer, "methodObject", function () { + return new SpanishStemmer(); +}); +$__jsx_lazy_init(SpanishStemmer, "a_0", function () { + return [ new Among("", -1, 6), new Among("\u00E1", 0, 1), new Among("\u00E9", 0, 2), new Among("\u00ED", 0, 3), new Among("\u00F3", 0, 4), new Among("\u00FA", 0, 5) ]; +}); +$__jsx_lazy_init(SpanishStemmer, "a_1", function () { + return [ new Among("la", -1, -1), new Among("sela", 0, -1), new Among("le", -1, -1), new Among("me", -1, -1), new Among("se", -1, -1), new Among("lo", -1, -1), new Among("selo", 5, -1), new Among("las", -1, -1), new Among("selas", 7, -1), new Among("les", -1, -1), new Among("los", -1, -1), new Among("selos", 10, -1), new Among("nos", -1, -1) ]; +}); +$__jsx_lazy_init(SpanishStemmer, "a_2", function () { + return [ new Among("ando", -1, 6), new Among("iendo", -1, 6), new Among("yendo", -1, 7), new Among("\u00E1ndo", -1, 2), new Among("i\u00E9ndo", -1, 1), new Among("ar", -1, 6), new Among("er", -1, 6), new Among("ir", -1, 6), new Among("\u00E1r", -1, 3), new Among("\u00E9r", -1, 4), new Among("\u00EDr", -1, 5) ]; +}); +$__jsx_lazy_init(SpanishStemmer, "a_3", function () { + return [ new Among("ic", -1, -1), new Among("ad", -1, -1), new Among("os", -1, -1), new Among("iv", -1, 1) ]; +}); +$__jsx_lazy_init(SpanishStemmer, "a_4", function () { + return [ new Among("able", -1, 1), new Among("ible", -1, 1), new Among("ante", -1, 1) ]; +}); +$__jsx_lazy_init(SpanishStemmer, "a_5", function () { + return [ new Among("ic", -1, 1), new Among("abil", -1, 1), new Among("iv", -1, 1) ]; +}); +$__jsx_lazy_init(SpanishStemmer, "a_6", function () { + return [ new Among("ica", -1, 1), new Among("ancia", -1, 2), new Among("encia", -1, 5), new Among("adora", -1, 2), new Among("osa", -1, 1), new Among("ista", -1, 1), new Among("iva", -1, 9), new Among("anza", -1, 1), new Among("log\u00EDa", -1, 3), new Among("idad", -1, 8), new Among("able", -1, 1), new Among("ible", -1, 1), new Among("ante", -1, 2), new Among("mente", -1, 7), new Among("amente", 13, 6), new Among("aci\u00F3n", -1, 2), new Among("uci\u00F3n", -1, 4), new Among("ico", -1, 1), new Among("ismo", -1, 1), new Among("oso", -1, 1), new Among("amiento", -1, 1), new Among("imiento", -1, 1), new Among("ivo", -1, 9), new Among("ador", -1, 2), new Among("icas", -1, 1), new Among("ancias", -1, 2), new Among("encias", -1, 5), new Among("adoras", -1, 2), new Among("osas", -1, 1), new Among("istas", -1, 1), new Among("ivas", -1, 9), new Among("anzas", -1, 1), new Among("log\u00EDas", -1, 3), new Among("idades", -1, 8), new Among("ables", -1, 1), new Among("ibles", -1, 1), new Among("aciones", -1, 2), new Among("uciones", -1, 4), new Among("adores", -1, 2), new Among("antes", -1, 2), new Among("icos", -1, 1), new Among("ismos", -1, 1), new Among("osos", -1, 1), new Among("amientos", -1, 1), new Among("imientos", -1, 1), new Among("ivos", -1, 9) ]; +}); +$__jsx_lazy_init(SpanishStemmer, "a_7", function () { + return [ new Among("ya", -1, 1), new Among("ye", -1, 1), new Among("yan", -1, 1), new Among("yen", -1, 1), new Among("yeron", -1, 1), new Among("yendo", -1, 1), new Among("yo", -1, 1), new Among("yas", -1, 1), new Among("yes", -1, 1), new Among("yais", -1, 1), new Among("yamos", -1, 1), new Among("y\u00F3", -1, 1) ]; +}); +$__jsx_lazy_init(SpanishStemmer, "a_8", function () { + return [ new Among("aba", -1, 2), new Among("ada", -1, 2), new Among("ida", -1, 2), new Among("ara", -1, 2), new Among("iera", -1, 2), new Among("\u00EDa", -1, 2), new Among("ar\u00EDa", 5, 2), new Among("er\u00EDa", 5, 2), new Among("ir\u00EDa", 5, 2), new Among("ad", -1, 2), new Among("ed", -1, 2), new Among("id", -1, 2), new Among("ase", -1, 2), new Among("iese", -1, 2), new Among("aste", -1, 2), new Among("iste", -1, 2), new Among("an", -1, 2), new Among("aban", 16, 2), new Among("aran", 16, 2), new Among("ieran", 16, 2), new Among("\u00EDan", 16, 2), new Among("ar\u00EDan", 20, 2), new Among("er\u00EDan", 20, 2), new Among("ir\u00EDan", 20, 2), new Among("en", -1, 1), new Among("asen", 24, 2), new Among("iesen", 24, 2), new Among("aron", -1, 2), new Among("ieron", -1, 2), new Among("ar\u00E1n", -1, 2), new Among("er\u00E1n", -1, 2), new Among("ir\u00E1n", -1, 2), new Among("ado", -1, 2), new Among("ido", -1, 2), new Among("ando", -1, 2), new Among("iendo", -1, 2), new Among("ar", -1, 2), new Among("er", -1, 2), new Among("ir", -1, 2), new Among("as", -1, 2), new Among("abas", 39, 2), new Among("adas", 39, 2), new Among("idas", 39, 2), new Among("aras", 39, 2), new Among("ieras", 39, 2), new Among("\u00EDas", 39, 2), new Among("ar\u00EDas", 45, 2), new Among("er\u00EDas", 45, 2), new Among("ir\u00EDas", 45, 2), new Among("es", -1, 1), new Among("ases", 49, 2), new Among("ieses", 49, 2), new Among("abais", -1, 2), new Among("arais", -1, 2), new Among("ierais", -1, 2), new Among("\u00EDais", -1, 2), new Among("ar\u00EDais", 55, 2), new Among("er\u00EDais", 55, 2), new Among("ir\u00EDais", 55, 2), new Among("aseis", -1, 2), new Among("ieseis", -1, 2), new Among("asteis", -1, 2), new Among("isteis", -1, 2), new Among("\u00E1is", -1, 2), new Among("\u00E9is", -1, 1), new Among("ar\u00E9is", 64, 2), new Among("er\u00E9is", 64, 2), new Among("ir\u00E9is", 64, 2), new Among("ados", -1, 2), new Among("idos", -1, 2), new Among("amos", -1, 2), new Among("\u00E1bamos", 70, 2), new Among("\u00E1ramos", 70, 2), new Among("i\u00E9ramos", 70, 2), new Among("\u00EDamos", 70, 2), new Among("ar\u00EDamos", 74, 2), new Among("er\u00EDamos", 74, 2), new Among("ir\u00EDamos", 74, 2), new Among("emos", -1, 1), new Among("aremos", 78, 2), new Among("eremos", 78, 2), new Among("iremos", 78, 2), new Among("\u00E1semos", 78, 2), new Among("i\u00E9semos", 78, 2), new Among("imos", -1, 2), new Among("ar\u00E1s", -1, 2), new Among("er\u00E1s", -1, 2), new Among("ir\u00E1s", -1, 2), new Among("\u00EDs", -1, 2), new Among("ar\u00E1", -1, 2), new Among("er\u00E1", -1, 2), new Among("ir\u00E1", -1, 2), new Among("ar\u00E9", -1, 2), new Among("er\u00E9", -1, 2), new Among("ir\u00E9", -1, 2), new Among("i\u00F3", -1, 2) ]; +}); +$__jsx_lazy_init(SpanishStemmer, "a_9", function () { + return [ new Among("a", -1, 1), new Among("e", -1, 2), new Among("o", -1, 1), new Among("os", -1, 1), new Among("\u00E1", -1, 1), new Among("\u00E9", -1, 2), new Among("\u00ED", -1, 1), new Among("\u00F3", -1, 1) ]; +}); +SpanishStemmer.g_v = [ 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 10 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/spanish-stemmer.jsx": { + SpanishStemmer: SpanishStemmer, + SpanishStemmer$: SpanishStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var SpanishStemmer = JSX.require("src/spanish-stemmer.jsx").SpanishStemmer; diff --git a/sphinx/search/non-minified-js/swedish-stemmer.js b/sphinx/search/non-minified-js/swedish-stemmer.js new file mode 100644 index 000000000..fd2a58f0a --- /dev/null +++ b/sphinx/search/non-minified-js/swedish-stemmer.js @@ -0,0 +1,1743 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function SwedishStemmer() { + BaseStemmer.call(this); + this.I_x = 0; + this.I_p1 = 0; +}; + +$__jsx_extend([SwedishStemmer], BaseStemmer); +SwedishStemmer.prototype.copy_from$LSwedishStemmer$ = function (other) { + this.I_x = other.I_x; + this.I_p1 = other.I_p1; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +SwedishStemmer.prototype.copy_from = SwedishStemmer.prototype.copy_from$LSwedishStemmer$; + +SwedishStemmer.prototype.r_mark_regions$ = function () { + var v_1; + var v_2; + var c; + var lab1; + var lab3; + var lab4; + var cursor$0; + var limit$0; + var cursor$1; + var cursor$2; + var $__jsx_postinc_t; + this.I_p1 = limit$0 = this.limit; + v_1 = cursor$0 = this.cursor; + c = (cursor$0 + 3 | 0); + if (0 > c || c > limit$0) { + return false; + } + cursor$2 = this.cursor = c; + this.I_x = cursor$2; + this.cursor = v_1; +golab0: + while (true) { + v_2 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, SwedishStemmer.g_v, 97, 246)) { + break lab1; + } + this.cursor = v_2; + break golab0; + } + cursor$1 = this.cursor = v_2; + if (cursor$1 >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII(this, SwedishStemmer.g_v, 97, 246)) { + break lab3; + } + break golab2; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + this.I_p1 = this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! (this.I_p1 < this.I_x)) { + break lab4; + } + this.I_p1 = this.I_x; + } + return true; +}; + +SwedishStemmer.prototype.r_mark_regions = SwedishStemmer.prototype.r_mark_regions$; + +function SwedishStemmer$r_mark_regions$LSwedishStemmer$($this) { + var v_1; + var v_2; + var c; + var lab1; + var lab3; + var lab4; + var cursor$0; + var limit$0; + var cursor$1; + var cursor$2; + var $__jsx_postinc_t; + $this.I_p1 = limit$0 = $this.limit; + v_1 = cursor$0 = $this.cursor; + c = (cursor$0 + 3 | 0); + if (0 > c || c > limit$0) { + return false; + } + cursor$2 = $this.cursor = c; + $this.I_x = cursor$2; + $this.cursor = v_1; +golab0: + while (true) { + v_2 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, SwedishStemmer.g_v, 97, 246)) { + break lab1; + } + $this.cursor = v_2; + break golab0; + } + cursor$1 = $this.cursor = v_2; + if (cursor$1 >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } +golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$out_grouping$LBaseStemmer$AIII($this, SwedishStemmer.g_v, 97, 246)) { + break lab3; + } + break golab2; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + $this.I_p1 = $this.cursor; + lab4 = true; +lab4: + while (lab4 === true) { + lab4 = false; + if (! ($this.I_p1 < $this.I_x)) { + break lab4; + } + $this.I_p1 = $this.I_x; + } + return true; +}; + +SwedishStemmer.r_mark_regions$LSwedishStemmer$ = SwedishStemmer$r_mark_regions$LSwedishStemmer$; + +SwedishStemmer.prototype.r_main_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SwedishStemmer.a_0, 37); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, SwedishStemmer.g_s_ending, 98, 121)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + } + return true; +}; + +SwedishStemmer.prototype.r_main_suffix = SwedishStemmer.prototype.r_main_suffix$; + +function SwedishStemmer$r_main_suffix$LSwedishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SwedishStemmer.a_0, 37); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + $this.limit_backward = v_2; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, SwedishStemmer.g_s_ending, 98, 121)) { + return false; + } + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + } + return true; +}; + +SwedishStemmer.r_main_suffix$LSwedishStemmer$ = SwedishStemmer$r_main_suffix$LSwedishStemmer$; + +SwedishStemmer.prototype.r_consonant_pair$ = function () { + var v_1; + var v_2; + var v_3; + var cursor$0; + var cursor$1; + var limit$0; + var cursor$2; + var cursor$3; + var $__jsx_postinc_t; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_3 = ((limit$0 - cursor$2) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SwedishStemmer.a_1, 7) === 0) { + this.limit_backward = v_2; + return false; + } + cursor$3 = this.cursor = ((this.limit - v_3) | 0); + this.ket = cursor$3; + if (cursor$3 <= this.limit_backward) { + this.limit_backward = v_2; + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.limit_backward = v_2; + return true; +}; + +SwedishStemmer.prototype.r_consonant_pair = SwedishStemmer.prototype.r_consonant_pair$; + +function SwedishStemmer$r_consonant_pair$LSwedishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var cursor$0; + var cursor$1; + var limit$0; + var cursor$2; + var cursor$3; + var $__jsx_postinc_t; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_3 = ((limit$0 - cursor$2) | 0); + if (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SwedishStemmer.a_1, 7) === 0) { + $this.limit_backward = v_2; + return false; + } + cursor$3 = $this.cursor = (($this.limit - v_3) | 0); + $this.ket = cursor$3; + if (cursor$3 <= $this.limit_backward) { + $this.limit_backward = v_2; + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.limit_backward = v_2; + return true; +}; + +SwedishStemmer.r_consonant_pair$LSwedishStemmer$ = SwedishStemmer$r_consonant_pair$LSwedishStemmer$; + +SwedishStemmer.prototype.r_other_suffix$ = function () { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = ((this.limit - (cursor$0 = this.cursor)) | 0); + if (cursor$0 < this.I_p1) { + return false; + } + cursor$1 = this.cursor = this.I_p1; + v_2 = this.limit_backward; + this.limit_backward = cursor$1; + cursor$2 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, SwedishStemmer.a_2, 5); + if (among_var === 0) { + this.limit_backward = v_2; + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + this.limit_backward = v_2; + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "l\u00F6s")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "full")) { + return false; + } + break; + } + this.limit_backward = v_2; + return true; +}; + +SwedishStemmer.prototype.r_other_suffix = SwedishStemmer.prototype.r_other_suffix$; + +function SwedishStemmer$r_other_suffix$LSwedishStemmer$($this) { + var among_var; + var v_1; + var v_2; + var cursor$0; + var cursor$1; + var cursor$2; + v_1 = (($this.limit - (cursor$0 = $this.cursor)) | 0); + if (cursor$0 < $this.I_p1) { + return false; + } + cursor$1 = $this.cursor = $this.I_p1; + v_2 = $this.limit_backward; + $this.limit_backward = cursor$1; + cursor$2 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$2; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, SwedishStemmer.a_2, 5); + if (among_var === 0) { + $this.limit_backward = v_2; + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + $this.limit_backward = v_2; + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "l\u00F6s")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "full")) { + return false; + } + break; + } + $this.limit_backward = v_2; + return true; +}; + +SwedishStemmer.r_other_suffix$LSwedishStemmer$ = SwedishStemmer$r_other_suffix$LSwedishStemmer$; + +SwedishStemmer.prototype.stem$ = function () { + var v_1; + var v_2; + var v_3; + var lab0; + var lab1; + var lab2; + var lab3; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! SwedishStemmer$r_mark_regions$LSwedishStemmer$(this)) { + break lab0; + } + } + cursor$0 = this.cursor = v_1; + this.limit_backward = cursor$0; + cursor$1 = this.cursor = limit$0 = this.limit; + v_2 = ((limit$0 - cursor$1) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! SwedishStemmer$r_main_suffix$LSwedishStemmer$(this)) { + break lab1; + } + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_2) | 0); + v_3 = ((limit$1 - cursor$2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! SwedishStemmer$r_consonant_pair$LSwedishStemmer$(this)) { + break lab2; + } + } + this.cursor = ((this.limit - v_3) | 0); + lab3 = true; +lab3: + while (lab3 === true) { + lab3 = false; + if (! SwedishStemmer$r_other_suffix$LSwedishStemmer$(this)) { + break lab3; + } + } + this.cursor = this.limit_backward; + return true; +}; + +SwedishStemmer.prototype.stem = SwedishStemmer.prototype.stem$; + +SwedishStemmer.prototype.equals$X = function (o) { + return o instanceof SwedishStemmer; +}; + +SwedishStemmer.prototype.equals = SwedishStemmer.prototype.equals$X; + +function SwedishStemmer$equals$LSwedishStemmer$X($this, o) { + return o instanceof SwedishStemmer; +}; + +SwedishStemmer.equals$LSwedishStemmer$X = SwedishStemmer$equals$LSwedishStemmer$X; + +SwedishStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "SwedishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +SwedishStemmer.prototype.hashCode = SwedishStemmer.prototype.hashCode$; + +function SwedishStemmer$hashCode$LSwedishStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "SwedishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +SwedishStemmer.hashCode$LSwedishStemmer$ = SwedishStemmer$hashCode$LSwedishStemmer$; + +SwedishStemmer.serialVersionUID = 1; +$__jsx_lazy_init(SwedishStemmer, "methodObject", function () { + return new SwedishStemmer(); +}); +$__jsx_lazy_init(SwedishStemmer, "a_0", function () { + return [ new Among("a", -1, 1), new Among("arna", 0, 1), new Among("erna", 0, 1), new Among("heterna", 2, 1), new Among("orna", 0, 1), new Among("ad", -1, 1), new Among("e", -1, 1), new Among("ade", 6, 1), new Among("ande", 6, 1), new Among("arne", 6, 1), new Among("are", 6, 1), new Among("aste", 6, 1), new Among("en", -1, 1), new Among("anden", 12, 1), new Among("aren", 12, 1), new Among("heten", 12, 1), new Among("ern", -1, 1), new Among("ar", -1, 1), new Among("er", -1, 1), new Among("heter", 18, 1), new Among("or", -1, 1), new Among("s", -1, 2), new Among("as", 21, 1), new Among("arnas", 22, 1), new Among("ernas", 22, 1), new Among("ornas", 22, 1), new Among("es", 21, 1), new Among("ades", 26, 1), new Among("andes", 26, 1), new Among("ens", 21, 1), new Among("arens", 29, 1), new Among("hetens", 29, 1), new Among("erns", 21, 1), new Among("at", -1, 1), new Among("andet", -1, 1), new Among("het", -1, 1), new Among("ast", -1, 1) ]; +}); +$__jsx_lazy_init(SwedishStemmer, "a_1", function () { + return [ new Among("dd", -1, -1), new Among("gd", -1, -1), new Among("nn", -1, -1), new Among("dt", -1, -1), new Among("gt", -1, -1), new Among("kt", -1, -1), new Among("tt", -1, -1) ]; +}); +$__jsx_lazy_init(SwedishStemmer, "a_2", function () { + return [ new Among("ig", -1, 1), new Among("lig", 0, 1), new Among("els", -1, 1), new Among("fullt", -1, 3), new Among("l\u00F6st", -1, 2) ]; +}); +SwedishStemmer.g_v = [ 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 32 ]; +SwedishStemmer.g_s_ending = [ 119, 127, 149 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/swedish-stemmer.jsx": { + SwedishStemmer: SwedishStemmer, + SwedishStemmer$: SwedishStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var SwedishStemmer = JSX.require("src/swedish-stemmer.jsx").SwedishStemmer; diff --git a/sphinx/search/non-minified-js/turkish-stemmer.js b/sphinx/search/non-minified-js/turkish-stemmer.js new file mode 100644 index 000000000..f8f088576 --- /dev/null +++ b/sphinx/search/non-minified-js/turkish-stemmer.js @@ -0,0 +1,6721 @@ +// generatedy by JSX compiler 0.9.89 (2014-05-20 06:01:03 +0900; 8e8c6105f36f3dfe440ea026a3c93a3444977102) +var JSX = {}; +(function (JSX) { +/** + * extends the class + */ +function $__jsx_extend(derivations, base) { + var ctor = function () {}; + ctor.prototype = base.prototype; + var proto = new ctor(); + for (var i in derivations) { + derivations[i].prototype = proto; + } +} + +/** + * copies the implementations from source interface to target + */ +function $__jsx_merge_interface(target, source) { + for (var k in source.prototype) + if (source.prototype.hasOwnProperty(k)) + target.prototype[k] = source.prototype[k]; +} + +/** + * defers the initialization of the property + */ +function $__jsx_lazy_init(obj, prop, func) { + function reset(obj, prop, value) { + delete obj[prop]; + obj[prop] = value; + return value; + } + + Object.defineProperty(obj, prop, { + get: function () { + return reset(obj, prop, func()); + }, + set: function (v) { + reset(obj, prop, v); + }, + enumerable: true, + configurable: true + }); +} + +var $__jsx_imul = Math.imul; +if (typeof $__jsx_imul === "undefined") { + $__jsx_imul = function (a, b) { + var ah = (a >>> 16) & 0xffff; + var al = a & 0xffff; + var bh = (b >>> 16) & 0xffff; + var bl = b & 0xffff; + return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); + }; +} + +/** + * fused int-ops with side-effects + */ +function $__jsx_ipadd(o, p, r) { + return o[p] = (o[p] + r) | 0; +} +function $__jsx_ipsub(o, p, r) { + return o[p] = (o[p] - r) | 0; +} +function $__jsx_ipmul(o, p, r) { + return o[p] = $__jsx_imul(o[p], r); +} +function $__jsx_ipdiv(o, p, r) { + return o[p] = (o[p] / r) | 0; +} +function $__jsx_ipmod(o, p, r) { + return o[p] = (o[p] % r) | 0; +} +function $__jsx_ippostinc(o, p) { + var v = o[p]; + o[p] = (v + 1) | 0; + return v; +} +function $__jsx_ippostdec(o, p) { + var v = o[p]; + o[p] = (v - 1) | 0; + return v; +} + +/** + * non-inlined version of Array#each + */ +function $__jsx_forEach(o, f) { + var l = o.length; + for (var i = 0; i < l; ++i) + f(o[i]); +} + +/* + * global functions, renamed to avoid conflict with local variable names + */ +var $__jsx_parseInt = parseInt; +var $__jsx_parseFloat = parseFloat; +function $__jsx_isNaN(n) { return n !== n; } +var $__jsx_isFinite = isFinite; + +var $__jsx_encodeURIComponent = encodeURIComponent; +var $__jsx_decodeURIComponent = decodeURIComponent; +var $__jsx_encodeURI = encodeURI; +var $__jsx_decodeURI = decodeURI; + +var $__jsx_ObjectToString = Object.prototype.toString; +var $__jsx_ObjectHasOwnProperty = Object.prototype.hasOwnProperty; + +/* + * profiler object, initialized afterwards + */ +function $__jsx_profiler() { +} + +/* + * public interface to JSX code + */ +JSX.require = function (path) { + var m = $__jsx_classMap[path]; + return m !== undefined ? m : null; +}; + +JSX.profilerIsRunning = function () { + return $__jsx_profiler.getResults != null; +}; + +JSX.getProfileResults = function () { + return ($__jsx_profiler.getResults || function () { return {}; })(); +}; + +JSX.postProfileResults = function (url, cb) { + if ($__jsx_profiler.postResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.postResults(url, cb); +}; + +JSX.resetProfileResults = function () { + if ($__jsx_profiler.resetResults == null) + throw new Error("profiler has not been turned on"); + return $__jsx_profiler.resetResults(); +}; +JSX.DEBUG = false; +var GeneratorFunction$0 = +(function () { + try { + return Function('import {GeneratorFunction} from "std:iteration"; return GeneratorFunction')(); + } catch (e) { + return function GeneratorFunction () {}; + } +})(); +var __jsx_generator_object$0 = +(function () { + function __jsx_generator_object() { + this.__next = 0; + this.__loop = null; + this.__seed = null; + this.__value = undefined; + this.__status = 0; // SUSPENDED: 0, ACTIVE: 1, DEAD: 2 + } + + __jsx_generator_object.prototype.next = function (seed) { + switch (this.__status) { + case 0: + this.__status = 1; + this.__seed = seed; + + // go next! + this.__loop(this.__next); + + var done = false; + if (this.__next != -1) { + this.__status = 0; + } else { + this.__status = 2; + done = true; + } + return { value: this.__value, done: done }; + case 1: + throw new Error("Generator is already running"); + case 2: + throw new Error("Generator is already finished"); + default: + throw new Error("Unexpected generator internal state"); + } + }; + + return __jsx_generator_object; +}()); +function Among(s, substring_i, result) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = null; + this.instance = null; +}; + +function Among$0(s, substring_i, result, method, instance) { + this.s_size = s.length; + this.s = s; + this.substring_i = substring_i; + this.result = result; + this.method = method; + this.instance = instance; +}; + +$__jsx_extend([Among, Among$0], Object); +function Stemmer() { +}; + +$__jsx_extend([Stemmer], Object); +function BaseStemmer() { + var current$0; + var cursor$0; + var limit$0; + this.cache = ({ }); + current$0 = this.current = ""; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + +$__jsx_extend([BaseStemmer], Stemmer); +BaseStemmer.prototype.setCurrent$S = function (value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = this.current = value; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; +}; + + +function BaseStemmer$setCurrent$LBaseStemmer$S($this, value) { + var current$0; + var cursor$0; + var limit$0; + current$0 = $this.current = value; + cursor$0 = $this.cursor = 0; + limit$0 = $this.limit = current$0.length; + $this.limit_backward = 0; + $this.bra = cursor$0; + $this.ket = limit$0; +}; + +BaseStemmer.setCurrent$LBaseStemmer$S = BaseStemmer$setCurrent$LBaseStemmer$S; + +BaseStemmer.prototype.getCurrent$ = function () { + return this.current; +}; + + +function BaseStemmer$getCurrent$LBaseStemmer$($this) { + return $this.current; +}; + +BaseStemmer.getCurrent$LBaseStemmer$ = BaseStemmer$getCurrent$LBaseStemmer$; + +BaseStemmer.prototype.copy_from$LBaseStemmer$ = function (other) { + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; +}; + + +function BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$($this, other) { + $this.current = other.current; + $this.cursor = other.cursor; + $this.limit = other.limit; + $this.limit_backward = other.limit_backward; + $this.bra = other.bra; + $this.ket = other.ket; +}; + +BaseStemmer.copy_from$LBaseStemmer$LBaseStemmer$ = BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$; + +BaseStemmer.prototype.in_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping$LBaseStemmer$AIII = BaseStemmer$in_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_grouping_b$LBaseStemmer$AIII = BaseStemmer$in_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0X1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping$LBaseStemmer$AIII = BaseStemmer$out_grouping$LBaseStemmer$AIII; + +BaseStemmer.prototype.out_grouping_b$AIII = function (s, min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + + +function BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, s, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + ch -= min; + if ((s[ch >>> 3] & 0x1 << (ch & 0x7)) === 0) { + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; + } + return false; +}; + +BaseStemmer.out_grouping_b$LBaseStemmer$AIII = BaseStemmer$out_grouping_b$LBaseStemmer$AIII; + +BaseStemmer.prototype.in_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range$LBaseStemmer$II = BaseStemmer$in_range$LBaseStemmer$II; + +BaseStemmer.prototype.in_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$in_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (ch > max || ch < min) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.in_range_b$LBaseStemmer$II = BaseStemmer$in_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.out_range$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor >= this.limit) { + return false; + } + ch = this.current.charCodeAt(this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor >= $this.limit) { + return false; + } + ch = $this.current.charCodeAt($this.cursor); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range$LBaseStemmer$II = BaseStemmer$out_range$LBaseStemmer$II; + +BaseStemmer.prototype.out_range_b$II = function (min, max) { + var ch; + var $__jsx_postinc_t; + if (this.cursor <= this.limit_backward) { + return false; + } + ch = this.current.charCodeAt(this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + + +function BaseStemmer$out_range_b$LBaseStemmer$II($this, min, max) { + var ch; + var $__jsx_postinc_t; + if ($this.cursor <= $this.limit_backward) { + return false; + } + ch = $this.current.charCodeAt($this.cursor - 1); + if (! (ch > max || ch < min)) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + return true; +}; + +BaseStemmer.out_range_b$LBaseStemmer$II = BaseStemmer$out_range_b$LBaseStemmer$II; + +BaseStemmer.prototype.eq_s$IS = function (s_size, s) { + var cursor$0; + if (((this.limit - this.cursor) | 0) < s_size) { + return false; + } + if (this.current.slice(cursor$0 = this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + this.cursor = (this.cursor + s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.limit - $this.cursor) | 0) < s_size) { + return false; + } + if ($this.current.slice(cursor$0 = $this.cursor, ((cursor$0 + s_size) | 0)) !== s) { + return false; + } + $this.cursor = ($this.cursor + s_size) | 0; + return true; +}; + +BaseStemmer.eq_s$LBaseStemmer$IS = BaseStemmer$eq_s$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_s_b$IS = function (s_size, s) { + var cursor$0; + if (((this.cursor - this.limit_backward) | 0) < s_size) { + return false; + } + if (this.current.slice((((cursor$0 = this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + this.cursor = (this.cursor - s_size) | 0; + return true; +}; + + +function BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s_size, s) { + var cursor$0; + if ((($this.cursor - $this.limit_backward) | 0) < s_size) { + return false; + } + if ($this.current.slice((((cursor$0 = $this.cursor) - s_size) | 0), cursor$0) !== s) { + return false; + } + $this.cursor = ($this.cursor - s_size) | 0; + return true; +}; + +BaseStemmer.eq_s_b$LBaseStemmer$IS = BaseStemmer$eq_s_b$LBaseStemmer$IS; + +BaseStemmer.prototype.eq_v$S = function (s) { + return BaseStemmer$eq_s$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v$LBaseStemmer$S = BaseStemmer$eq_v$LBaseStemmer$S; + +BaseStemmer.prototype.eq_v_b$S = function (s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS(this, s.length, s); +}; + + +function BaseStemmer$eq_v_b$LBaseStemmer$S($this, s) { + return BaseStemmer$eq_s_b$LBaseStemmer$IS($this, s.length, s); +}; + +BaseStemmer.eq_v_b$LBaseStemmer$S = BaseStemmer$eq_v_b$LBaseStemmer$S; + +BaseStemmer.prototype.find_among$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + l = this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var l; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + l = $this.limit; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >>> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = common; i2 < w.s_size; i2++) { + if (c + common === l) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c + common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c + w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(w.instance); + $this.cursor = (c + w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among$LBaseStemmer$ALAmong$I = BaseStemmer$find_among$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.find_among_b$ALAmong$I = function (v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = this.cursor; + lb = this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method(this); + this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + + +function BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, v, v_size) { + var i; + var j; + var c; + var lb; + var common_i; + var common_j; + var first_key_inspected; + var k; + var diff; + var common; + var w; + var i2; + var res; + i = 0; + j = v_size; + c = $this.cursor; + lb = $this.limit_backward; + common_i = 0; + common_j = 0; + first_key_inspected = false; + while (true) { + k = i + (j - i >> 1); + diff = 0; + common = (common_i < common_j ? common_i : common_j); + w = v[k]; + for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) { + if (c - common === lb) { + diff = -1; + break; + } + diff = $this.current.charCodeAt(c - 1 - common) - w.s.charCodeAt(i2); + if (diff !== 0) { + break; + } + common++; + } + if (diff < 0) { + j = k; + common_j = common; + } else { + i = k; + common_i = common; + } + if (j - i <= 1) { + if (i > 0) { + break; + } + if (j === i) { + break; + } + if (first_key_inspected) { + break; + } + first_key_inspected = true; + } + } + while (true) { + w = v[i]; + if (common_i >= w.s_size) { + $this.cursor = (c - w.s_size | 0); + if (w.method == null) { + return w.result; + } + res = w.method($this); + $this.cursor = (c - w.s_size | 0); + if (res) { + return w.result; + } + } + i = w.substring_i; + if (i < 0) { + return 0; + } + } + return -1; +}; + +BaseStemmer.find_among_b$LBaseStemmer$ALAmong$I = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I; + +BaseStemmer.prototype.replace_s$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit = (this.limit + adjustment) | 0; + if (this.cursor >= c_ket) { + this.cursor = (this.cursor + adjustment) | 0; + } else if (this.cursor > c_bra) { + this.cursor = c_bra; + } + return (adjustment | 0); +}; + + +function BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = ((s.length - (((c_ket - c_bra) | 0))) | 0); + $this.current = $this.current.slice(0, c_bra) + s + $this.current.slice(c_ket); + $this.limit = ($this.limit + adjustment) | 0; + if ($this.cursor >= c_ket) { + $this.cursor = ($this.cursor + adjustment) | 0; + } else if ($this.cursor > c_bra) { + $this.cursor = c_bra; + } + return (adjustment | 0); +}; + +BaseStemmer.replace_s$LBaseStemmer$IIS = BaseStemmer$replace_s$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_check$ = function () { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true); +}; + + +function BaseStemmer$slice_check$LBaseStemmer$($this) { + var bra$0; + var ket$0; + var limit$0; + return ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true); +}; + +BaseStemmer.slice_check$LBaseStemmer$ = BaseStemmer$slice_check$LBaseStemmer$; + +BaseStemmer.prototype.slice_from$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS(this, this.bra, this.ket, s); + result = true; + } + return result; +}; + + +function BaseStemmer$slice_from$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = false; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + BaseStemmer$replace_s$LBaseStemmer$IIS($this, $this.bra, $this.ket, s); + result = true; + } + return result; +}; + +BaseStemmer.slice_from$LBaseStemmer$S = BaseStemmer$slice_from$LBaseStemmer$S; + +BaseStemmer.prototype.slice_del$ = function () { + return BaseStemmer$slice_from$LBaseStemmer$S(this, ""); +}; + + +function BaseStemmer$slice_del$LBaseStemmer$($this) { + return BaseStemmer$slice_from$LBaseStemmer$S($this, ""); +}; + +BaseStemmer.slice_del$LBaseStemmer$ = BaseStemmer$slice_del$LBaseStemmer$; + +BaseStemmer.prototype.insert$IIS = function (c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS(this, c_bra, c_ket, s); + if (c_bra <= this.bra) { + this.bra = (this.bra + adjustment) | 0; + } + if (c_bra <= this.ket) { + this.ket = (this.ket + adjustment) | 0; + } +}; + + +function BaseStemmer$insert$LBaseStemmer$IIS($this, c_bra, c_ket, s) { + var adjustment; + adjustment = BaseStemmer$replace_s$LBaseStemmer$IIS($this, c_bra, c_ket, s); + if (c_bra <= $this.bra) { + $this.bra = ($this.bra + adjustment) | 0; + } + if (c_bra <= $this.ket) { + $this.ket = ($this.ket + adjustment) | 0; + } +}; + +BaseStemmer.insert$LBaseStemmer$IIS = BaseStemmer$insert$LBaseStemmer$IIS; + +BaseStemmer.prototype.slice_to$S = function (s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = this.bra) < 0 || bra$0 > (ket$0 = this.ket) || ket$0 > (limit$0 = this.limit) || limit$0 > this.current.length ? false : true) { + result = this.current.slice(this.bra, this.ket); + } + return result; +}; + + +function BaseStemmer$slice_to$LBaseStemmer$S($this, s) { + var result; + var bra$0; + var ket$0; + var limit$0; + result = ''; + if ((bra$0 = $this.bra) < 0 || bra$0 > (ket$0 = $this.ket) || ket$0 > (limit$0 = $this.limit) || limit$0 > $this.current.length ? false : true) { + result = $this.current.slice($this.bra, $this.ket); + } + return result; +}; + +BaseStemmer.slice_to$LBaseStemmer$S = BaseStemmer$slice_to$LBaseStemmer$S; + +BaseStemmer.prototype.assign_to$S = function (s) { + return this.current.slice(0, this.limit); +}; + + +function BaseStemmer$assign_to$LBaseStemmer$S($this, s) { + return $this.current.slice(0, $this.limit); +}; + +BaseStemmer.assign_to$LBaseStemmer$S = BaseStemmer$assign_to$LBaseStemmer$S; + +BaseStemmer.prototype.stem$ = function () { + return false; +}; + + +BaseStemmer.prototype.stemWord$S = function (word) { + var result; + var current$0; + var cursor$0; + var limit$0; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + return result; +}; + +BaseStemmer.prototype.stemWord = BaseStemmer.prototype.stemWord$S; + +BaseStemmer.prototype.stemWords$AS = function (words) { + var results; + var i; + var word; + var result; + var current$0; + var cursor$0; + var limit$0; + results = [ ]; + for (i = 0; i < words.length; i++) { + word = words[i]; + result = this.cache['.' + word]; + if (result == null) { + current$0 = this.current = word; + cursor$0 = this.cursor = 0; + limit$0 = this.limit = current$0.length; + this.limit_backward = 0; + this.bra = cursor$0; + this.ket = limit$0; + this.stem$(); + result = this.current; + this.cache['.' + word] = result; + } + results.push(result); + } + return results; +}; + +BaseStemmer.prototype.stemWords = BaseStemmer.prototype.stemWords$AS; + +function TurkishStemmer() { + BaseStemmer.call(this); + this.B_continue_stemming_noun_suffixes = false; + this.I_strlen = 0; +}; + +$__jsx_extend([TurkishStemmer], BaseStemmer); +TurkishStemmer.prototype.copy_from$LTurkishStemmer$ = function (other) { + this.B_continue_stemming_noun_suffixes = other.B_continue_stemming_noun_suffixes; + this.I_strlen = other.I_strlen; + BaseStemmer$copy_from$LBaseStemmer$LBaseStemmer$(this, other); +}; + +TurkishStemmer.prototype.copy_from = TurkishStemmer.prototype.copy_from$LTurkishStemmer$; + +TurkishStemmer.prototype.r_check_vowel_harmony$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var lab1; + var lab2; + var lab3; + var lab5; + var lab6; + var lab8; + var lab9; + var lab11; + var lab12; + var lab14; + var lab15; + var lab17; + var lab18; + var lab20; + var lab21; + var lab23; + var lab25; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var cursor$4; + var cursor$5; + var cursor$6; + var cursor$7; + var cursor$8; + var $__jsx_postinc_t; + v_1 = ((this.limit - this.cursor) | 0); +golab0: + while (true) { + v_2 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + this.cursor = ((this.limit - v_2) | 0); + break golab0; + } + cursor$0 = this.cursor = ((this.limit - v_2) | 0); + if (cursor$0 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + v_3 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "a")) { + break lab3; + } + golab4: + while (true) { + v_4 = ((this.limit - this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel1, 97, 305)) { + break lab5; + } + this.cursor = ((this.limit - v_4) | 0); + break golab4; + } + cursor$1 = this.cursor = ((this.limit - v_4) | 0); + if (cursor$1 <= this.limit_backward) { + break lab3; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + break lab6; + } + golab7: + while (true) { + v_5 = ((this.limit - this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel2, 101, 252)) { + break lab8; + } + this.cursor = ((this.limit - v_5) | 0); + break golab7; + } + cursor$2 = this.cursor = ((this.limit - v_5) | 0); + if (cursor$2 <= this.limit_backward) { + break lab6; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u0131")) { + break lab9; + } + golab10: + while (true) { + v_6 = ((this.limit - this.cursor) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel3, 97, 305)) { + break lab11; + } + this.cursor = ((this.limit - v_6) | 0); + break golab10; + } + cursor$3 = this.cursor = ((this.limit - v_6) | 0); + if (cursor$3 <= this.limit_backward) { + break lab9; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "i")) { + break lab12; + } + golab13: + while (true) { + v_7 = ((this.limit - this.cursor) | 0); + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel4, 101, 105)) { + break lab14; + } + this.cursor = ((this.limit - v_7) | 0); + break golab13; + } + cursor$4 = this.cursor = ((this.limit - v_7) | 0); + if (cursor$4 <= this.limit_backward) { + break lab12; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "o")) { + break lab15; + } + golab16: + while (true) { + v_8 = ((this.limit - this.cursor) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel5, 111, 117)) { + break lab17; + } + this.cursor = ((this.limit - v_8) | 0); + break golab16; + } + cursor$5 = this.cursor = ((this.limit - v_8) | 0); + if (cursor$5 <= this.limit_backward) { + break lab15; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + lab18 = true; + lab18: + while (lab18 === true) { + lab18 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u00F6")) { + break lab18; + } + golab19: + while (true) { + v_9 = ((this.limit - this.cursor) | 0); + lab20 = true; + lab20: + while (lab20 === true) { + lab20 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel6, 246, 252)) { + break lab20; + } + this.cursor = ((this.limit - v_9) | 0); + break golab19; + } + cursor$6 = this.cursor = ((this.limit - v_9) | 0); + if (cursor$6 <= this.limit_backward) { + break lab18; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "u")) { + break lab21; + } + golab22: + while (true) { + v_10 = ((this.limit - this.cursor) | 0); + lab23 = true; + lab23: + while (lab23 === true) { + lab23 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel5, 111, 117)) { + break lab23; + } + this.cursor = ((this.limit - v_10) | 0); + break golab22; + } + cursor$7 = this.cursor = ((this.limit - v_10) | 0); + if (cursor$7 <= this.limit_backward) { + break lab21; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u00FC")) { + return false; + } + golab24: + while (true) { + v_11 = ((this.limit - this.cursor) | 0); + lab25 = true; + lab25: + while (lab25 === true) { + lab25 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel6, 246, 252)) { + break lab25; + } + this.cursor = ((this.limit - v_11) | 0); + break golab24; + } + cursor$8 = this.cursor = ((this.limit - v_11) | 0); + if (cursor$8 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + } + this.cursor = ((this.limit - v_1) | 0); + return true; +}; + +TurkishStemmer.prototype.r_check_vowel_harmony = TurkishStemmer.prototype.r_check_vowel_harmony$; + +function TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var lab1; + var lab2; + var lab3; + var lab5; + var lab6; + var lab8; + var lab9; + var lab11; + var lab12; + var lab14; + var lab15; + var lab17; + var lab18; + var lab20; + var lab21; + var lab23; + var lab25; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var cursor$4; + var cursor$5; + var cursor$6; + var cursor$7; + var cursor$8; + var $__jsx_postinc_t; + v_1 = (($this.limit - $this.cursor) | 0); +golab0: + while (true) { + v_2 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + $this.cursor = (($this.limit - v_2) | 0); + break golab0; + } + cursor$0 = $this.cursor = (($this.limit - v_2) | 0); + if (cursor$0 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + v_3 = (($this.limit - $this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "a")) { + break lab3; + } + golab4: + while (true) { + v_4 = (($this.limit - $this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel1, 97, 305)) { + break lab5; + } + $this.cursor = (($this.limit - v_4) | 0); + break golab4; + } + cursor$1 = $this.cursor = (($this.limit - v_4) | 0); + if (cursor$1 <= $this.limit_backward) { + break lab3; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + break lab6; + } + golab7: + while (true) { + v_5 = (($this.limit - $this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel2, 101, 252)) { + break lab8; + } + $this.cursor = (($this.limit - v_5) | 0); + break golab7; + } + cursor$2 = $this.cursor = (($this.limit - v_5) | 0); + if (cursor$2 <= $this.limit_backward) { + break lab6; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u0131")) { + break lab9; + } + golab10: + while (true) { + v_6 = (($this.limit - $this.cursor) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel3, 97, 305)) { + break lab11; + } + $this.cursor = (($this.limit - v_6) | 0); + break golab10; + } + cursor$3 = $this.cursor = (($this.limit - v_6) | 0); + if (cursor$3 <= $this.limit_backward) { + break lab9; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "i")) { + break lab12; + } + golab13: + while (true) { + v_7 = (($this.limit - $this.cursor) | 0); + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel4, 101, 105)) { + break lab14; + } + $this.cursor = (($this.limit - v_7) | 0); + break golab13; + } + cursor$4 = $this.cursor = (($this.limit - v_7) | 0); + if (cursor$4 <= $this.limit_backward) { + break lab12; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "o")) { + break lab15; + } + golab16: + while (true) { + v_8 = (($this.limit - $this.cursor) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel5, 111, 117)) { + break lab17; + } + $this.cursor = (($this.limit - v_8) | 0); + break golab16; + } + cursor$5 = $this.cursor = (($this.limit - v_8) | 0); + if (cursor$5 <= $this.limit_backward) { + break lab15; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + lab18 = true; + lab18: + while (lab18 === true) { + lab18 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u00F6")) { + break lab18; + } + golab19: + while (true) { + v_9 = (($this.limit - $this.cursor) | 0); + lab20 = true; + lab20: + while (lab20 === true) { + lab20 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel6, 246, 252)) { + break lab20; + } + $this.cursor = (($this.limit - v_9) | 0); + break golab19; + } + cursor$6 = $this.cursor = (($this.limit - v_9) | 0); + if (cursor$6 <= $this.limit_backward) { + break lab18; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "u")) { + break lab21; + } + golab22: + while (true) { + v_10 = (($this.limit - $this.cursor) | 0); + lab23 = true; + lab23: + while (lab23 === true) { + lab23 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel5, 111, 117)) { + break lab23; + } + $this.cursor = (($this.limit - v_10) | 0); + break golab22; + } + cursor$7 = $this.cursor = (($this.limit - v_10) | 0); + if (cursor$7 <= $this.limit_backward) { + break lab21; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u00FC")) { + return false; + } + golab24: + while (true) { + v_11 = (($this.limit - $this.cursor) | 0); + lab25 = true; + lab25: + while (lab25 === true) { + lab25 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel6, 246, 252)) { + break lab25; + } + $this.cursor = (($this.limit - v_11) | 0); + break golab24; + } + cursor$8 = $this.cursor = (($this.limit - v_11) | 0); + if (cursor$8 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + } + $this.cursor = (($this.limit - v_1) | 0); + return true; +}; + +TurkishStemmer.r_check_vowel_harmony$LTurkishStemmer$ = TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_suffix_with_optional_n_consonant$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "n")) { + break lab1; + } + cursor$0 = this.cursor = ((this.limit - v_2) | 0); + if (cursor$0 <= this.limit_backward) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + v_3 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + this.cursor = ((this.limit - v_3) | 0); + break lab0; + } + cursor$1 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_4 = ((limit$0 - cursor$1) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_5 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "n")) { + break lab2; + } + this.cursor = ((this.limit - v_5) | 0); + return false; + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_4) | 0); + v_6 = ((limit$1 - cursor$2) | 0); + if (cursor$2 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + return false; + } + this.cursor = ((this.limit - v_6) | 0); + } + return true; +}; + +TurkishStemmer.prototype.r_mark_suffix_with_optional_n_consonant = TurkishStemmer.prototype.r_mark_suffix_with_optional_n_consonant$; + +function TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "n")) { + break lab1; + } + cursor$0 = $this.cursor = (($this.limit - v_2) | 0); + if (cursor$0 <= $this.limit_backward) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + v_3 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + $this.cursor = (($this.limit - v_3) | 0); + break lab0; + } + cursor$1 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_4 = ((limit$0 - cursor$1) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_5 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "n")) { + break lab2; + } + $this.cursor = (($this.limit - v_5) | 0); + return false; + } + cursor$2 = $this.cursor = (((limit$1 = $this.limit) - v_4) | 0); + v_6 = ((limit$1 - cursor$2) | 0); + if (cursor$2 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + return false; + } + $this.cursor = (($this.limit - v_6) | 0); + } + return true; +}; + +TurkishStemmer.r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$ = TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_suffix_with_optional_s_consonant$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "s")) { + break lab1; + } + cursor$0 = this.cursor = ((this.limit - v_2) | 0); + if (cursor$0 <= this.limit_backward) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + v_3 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + this.cursor = ((this.limit - v_3) | 0); + break lab0; + } + cursor$1 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_4 = ((limit$0 - cursor$1) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_5 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "s")) { + break lab2; + } + this.cursor = ((this.limit - v_5) | 0); + return false; + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_4) | 0); + v_6 = ((limit$1 - cursor$2) | 0); + if (cursor$2 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + return false; + } + this.cursor = ((this.limit - v_6) | 0); + } + return true; +}; + +TurkishStemmer.prototype.r_mark_suffix_with_optional_s_consonant = TurkishStemmer.prototype.r_mark_suffix_with_optional_s_consonant$; + +function TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "s")) { + break lab1; + } + cursor$0 = $this.cursor = (($this.limit - v_2) | 0); + if (cursor$0 <= $this.limit_backward) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + v_3 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + $this.cursor = (($this.limit - v_3) | 0); + break lab0; + } + cursor$1 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_4 = ((limit$0 - cursor$1) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_5 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "s")) { + break lab2; + } + $this.cursor = (($this.limit - v_5) | 0); + return false; + } + cursor$2 = $this.cursor = (((limit$1 = $this.limit) - v_4) | 0); + v_6 = ((limit$1 - cursor$2) | 0); + if (cursor$2 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + return false; + } + $this.cursor = (($this.limit - v_6) | 0); + } + return true; +}; + +TurkishStemmer.r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$ = TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_suffix_with_optional_y_consonant$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "y")) { + break lab1; + } + cursor$0 = this.cursor = ((this.limit - v_2) | 0); + if (cursor$0 <= this.limit_backward) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + v_3 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + this.cursor = ((this.limit - v_3) | 0); + break lab0; + } + cursor$1 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_4 = ((limit$0 - cursor$1) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_5 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "y")) { + break lab2; + } + this.cursor = ((this.limit - v_5) | 0); + return false; + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_4) | 0); + v_6 = ((limit$1 - cursor$2) | 0); + if (cursor$2 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + return false; + } + this.cursor = ((this.limit - v_6) | 0); + } + return true; +}; + +TurkishStemmer.prototype.r_mark_suffix_with_optional_y_consonant = TurkishStemmer.prototype.r_mark_suffix_with_optional_y_consonant$; + +function TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "y")) { + break lab1; + } + cursor$0 = $this.cursor = (($this.limit - v_2) | 0); + if (cursor$0 <= $this.limit_backward) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + v_3 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + $this.cursor = (($this.limit - v_3) | 0); + break lab0; + } + cursor$1 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_4 = ((limit$0 - cursor$1) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_5 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "y")) { + break lab2; + } + $this.cursor = (($this.limit - v_5) | 0); + return false; + } + cursor$2 = $this.cursor = (((limit$1 = $this.limit) - v_4) | 0); + v_6 = ((limit$1 - cursor$2) | 0); + if (cursor$2 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + return false; + } + $this.cursor = (($this.limit - v_6) | 0); + } + return true; +}; + +TurkishStemmer.r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$ = TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_suffix_with_optional_U_vowel$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305)) { + break lab1; + } + cursor$0 = this.cursor = ((this.limit - v_2) | 0); + if (cursor$0 <= this.limit_backward) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + v_3 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + this.cursor = ((this.limit - v_3) | 0); + break lab0; + } + cursor$1 = this.cursor = (((limit$0 = this.limit) - v_1) | 0); + v_4 = ((limit$0 - cursor$1) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_5 = ((this.limit - this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305)) { + break lab2; + } + this.cursor = ((this.limit - v_5) | 0); + return false; + } + cursor$2 = this.cursor = (((limit$1 = this.limit) - v_4) | 0); + v_6 = ((limit$1 - cursor$2) | 0); + if (cursor$2 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + return false; + } + this.cursor = ((this.limit - v_6) | 0); + } + return true; +}; + +TurkishStemmer.prototype.r_mark_suffix_with_optional_U_vowel = TurkishStemmer.prototype.r_mark_suffix_with_optional_U_vowel$; + +function TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + var limit$1; + var cursor$2; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305)) { + break lab1; + } + cursor$0 = $this.cursor = (($this.limit - v_2) | 0); + if (cursor$0 <= $this.limit_backward) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + v_3 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab1; + } + $this.cursor = (($this.limit - v_3) | 0); + break lab0; + } + cursor$1 = $this.cursor = (((limit$0 = $this.limit) - v_1) | 0); + v_4 = ((limit$0 - cursor$1) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_5 = (($this.limit - $this.cursor) | 0); + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305)) { + break lab2; + } + $this.cursor = (($this.limit - v_5) | 0); + return false; + } + cursor$2 = $this.cursor = (((limit$1 = $this.limit) - v_4) | 0); + v_6 = ((limit$1 - cursor$2) | 0); + if (cursor$2 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + if (! BaseStemmer$out_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + return false; + } + $this.cursor = (($this.limit - v_6) | 0); + } + return true; +}; + +TurkishStemmer.r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$ = TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_possessives$ = function () { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_possessives = TurkishStemmer.prototype.r_mark_possessives$; + +function TurkishStemmer$r_mark_possessives$LTurkishStemmer$($this) { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_possessives$LTurkishStemmer$ = TurkishStemmer$r_mark_possessives$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_sU$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_sU = TurkishStemmer.prototype.r_mark_sU$; + +function TurkishStemmer$r_mark_sU$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_sU$LTurkishStemmer$ = TurkishStemmer$r_mark_sU$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_lArI$ = function () { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_1, 2) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_lArI = TurkishStemmer.prototype.r_mark_lArI$; + +function TurkishStemmer$r_mark_lArI$LTurkishStemmer$($this) { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_1, 2) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_lArI$LTurkishStemmer$ = TurkishStemmer$r_mark_lArI$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_yU$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_yU = TurkishStemmer.prototype.r_mark_yU$; + +function TurkishStemmer$r_mark_yU$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_yU$LTurkishStemmer$ = TurkishStemmer$r_mark_yU$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_nU$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_2, 4) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_nU = TurkishStemmer.prototype.r_mark_nU$; + +function TurkishStemmer$r_mark_nU$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_2, 4) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_nU$LTurkishStemmer$ = TurkishStemmer$r_mark_nU$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_nUn$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_3, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_nUn = TurkishStemmer.prototype.r_mark_nUn$; + +function TurkishStemmer$r_mark_nUn$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_3, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_nUn$LTurkishStemmer$ = TurkishStemmer$r_mark_nUn$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_yA$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_4, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_yA = TurkishStemmer.prototype.r_mark_yA$; + +function TurkishStemmer$r_mark_yA$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_4, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_yA$LTurkishStemmer$ = TurkishStemmer$r_mark_yA$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_nA$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_5, 2) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_nA = TurkishStemmer.prototype.r_mark_nA$; + +function TurkishStemmer$r_mark_nA$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_5, 2) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_nA$LTurkishStemmer$ = TurkishStemmer$r_mark_nA$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_DA$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_6, 4) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_DA = TurkishStemmer.prototype.r_mark_DA$; + +function TurkishStemmer$r_mark_DA$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_6, 4) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_DA$LTurkishStemmer$ = TurkishStemmer$r_mark_DA$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_ndA$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_7, 2) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_ndA = TurkishStemmer.prototype.r_mark_ndA$; + +function TurkishStemmer$r_mark_ndA$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_7, 2) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_ndA$LTurkishStemmer$ = TurkishStemmer$r_mark_ndA$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_DAn$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_8, 4) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_DAn = TurkishStemmer.prototype.r_mark_DAn$; + +function TurkishStemmer$r_mark_DAn$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_8, 4) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_DAn$LTurkishStemmer$ = TurkishStemmer$r_mark_DAn$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_ndAn$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_9, 2) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_ndAn = TurkishStemmer.prototype.r_mark_ndAn$; + +function TurkishStemmer$r_mark_ndAn$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_9, 2) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_ndAn$LTurkishStemmer$ = TurkishStemmer$r_mark_ndAn$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_ylA$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_10, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_ylA = TurkishStemmer.prototype.r_mark_ylA$; + +function TurkishStemmer$r_mark_ylA$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_10, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_ylA$LTurkishStemmer$ = TurkishStemmer$r_mark_ylA$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_ki$ = function () { + return (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ki") ? false : true); +}; + +TurkishStemmer.prototype.r_mark_ki = TurkishStemmer.prototype.r_mark_ki$; + +function TurkishStemmer$r_mark_ki$LTurkishStemmer$($this) { + return (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ki") ? false : true); +}; + +TurkishStemmer.r_mark_ki$LTurkishStemmer$ = TurkishStemmer$r_mark_ki$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_ncA$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_11, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_ncA = TurkishStemmer.prototype.r_mark_ncA$; + +function TurkishStemmer$r_mark_ncA$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_11, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_ncA$LTurkishStemmer$ = TurkishStemmer$r_mark_ncA$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_yUm$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_12, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_yUm = TurkishStemmer.prototype.r_mark_yUm$; + +function TurkishStemmer$r_mark_yUm$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_12, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_yUm$LTurkishStemmer$ = TurkishStemmer$r_mark_yUm$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_sUn$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_13, 4) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_sUn = TurkishStemmer.prototype.r_mark_sUn$; + +function TurkishStemmer$r_mark_sUn$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_13, 4) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_sUn$LTurkishStemmer$ = TurkishStemmer$r_mark_sUn$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_yUz$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_14, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_yUz = TurkishStemmer.prototype.r_mark_yUz$; + +function TurkishStemmer$r_mark_yUz$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_14, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_yUz$LTurkishStemmer$ = TurkishStemmer$r_mark_yUz$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_sUnUz$ = function () { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_15, 4) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_sUnUz = TurkishStemmer.prototype.r_mark_sUnUz$; + +function TurkishStemmer$r_mark_sUnUz$LTurkishStemmer$($this) { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_15, 4) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_sUnUz$LTurkishStemmer$ = TurkishStemmer$r_mark_sUnUz$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_lAr$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_lAr = TurkishStemmer.prototype.r_mark_lAr$; + +function TurkishStemmer$r_mark_lAr$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_lAr$LTurkishStemmer$ = TurkishStemmer$r_mark_lAr$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_nUz$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_17, 4) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_nUz = TurkishStemmer.prototype.r_mark_nUz$; + +function TurkishStemmer$r_mark_nUz$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_17, 4) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_nUz$LTurkishStemmer$ = TurkishStemmer$r_mark_nUz$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_DUr$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_18, 8) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_DUr = TurkishStemmer.prototype.r_mark_DUr$; + +function TurkishStemmer$r_mark_DUr$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_18, 8) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_DUr$LTurkishStemmer$ = TurkishStemmer$r_mark_DUr$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_cAsInA$ = function () { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_19, 2) === 0 ? false : true); +}; + +TurkishStemmer.prototype.r_mark_cAsInA = TurkishStemmer.prototype.r_mark_cAsInA$; + +function TurkishStemmer$r_mark_cAsInA$LTurkishStemmer$($this) { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_19, 2) === 0 ? false : true); +}; + +TurkishStemmer.r_mark_cAsInA$LTurkishStemmer$ = TurkishStemmer$r_mark_cAsInA$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_yDU$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_20, 32) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_yDU = TurkishStemmer.prototype.r_mark_yDU$; + +function TurkishStemmer$r_mark_yDU$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_20, 32) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_yDU$LTurkishStemmer$ = TurkishStemmer$r_mark_yDU$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_ysA$ = function () { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_21, 8) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_ysA = TurkishStemmer.prototype.r_mark_ysA$; + +function TurkishStemmer$r_mark_ysA$LTurkishStemmer$($this) { + return (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_21, 8) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_ysA$LTurkishStemmer$ = TurkishStemmer$r_mark_ysA$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_ymUs_$ = function () { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_ymUs_ = TurkishStemmer.prototype.r_mark_ymUs_$; + +function TurkishStemmer$r_mark_ymUs_$LTurkishStemmer$($this) { + return (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_ymUs_$LTurkishStemmer$ = TurkishStemmer$r_mark_ymUs_$LTurkishStemmer$; + +TurkishStemmer.prototype.r_mark_yken$ = function () { + return (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 3, "ken") ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.r_mark_yken = TurkishStemmer.prototype.r_mark_yken$; + +function TurkishStemmer$r_mark_yken$LTurkishStemmer$($this) { + return (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 3, "ken") ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true); +}; + +TurkishStemmer.r_mark_yken$LTurkishStemmer$ = TurkishStemmer$r_mark_yken$LTurkishStemmer$; + +TurkishStemmer.prototype.r_stem_nominal_verb_suffixes$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var lab11; + var lab12; + var lab13; + var lab14; + var lab15; + var lab16; + var lab17; + var lab18; + var lab19; + var lab20; + var lab21; + var lab22; + var lab23; + var lab24; + var lab25; + var lab26; + var lab27; + var lab28; + var lab29; + var lab30; + var lab31; + var lab32; + var lab33; + var lab34; + this.ket = this.cursor; + this.B_continue_stemming_noun_suffixes = true; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_2 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab3; + } + break lab2; + } + this.cursor = ((this.limit - v_2) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_20, 32) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab4; + } + break lab2; + } + this.cursor = ((this.limit - v_2) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_21, 8) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab5; + } + break lab2; + } + this.cursor = ((this.limit - v_2) | 0); + if (! (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 3, "ken") ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab1; + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_19, 2) === 0 ? false : true)) { + break lab6; + } + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + v_3 = ((this.limit - this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_15, 4) === 0 ? false : true)) { + break lab8; + } + break lab7; + } + this.cursor = ((this.limit - v_3) | 0); + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab9; + } + break lab7; + } + this.cursor = ((this.limit - v_3) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_12, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab10; + } + break lab7; + } + this.cursor = ((this.limit - v_3) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_13, 4) === 0 ? false : true)) { + break lab11; + } + break lab7; + } + this.cursor = ((this.limit - v_3) | 0); + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_14, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab12; + } + break lab7; + } + this.cursor = ((this.limit - v_3) | 0); + } + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab6; + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab13; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_4 = ((this.limit - this.cursor) | 0); + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + this.ket = this.cursor; + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + v_5 = ((this.limit - this.cursor) | 0); + lab16 = true; + lab16: + while (lab16 === true) { + lab16 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_18, 8) === 0 ? false : true)) { + break lab16; + } + break lab15; + } + this.cursor = ((this.limit - v_5) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_20, 32) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab17; + } + break lab15; + } + this.cursor = ((this.limit - v_5) | 0); + lab18 = true; + lab18: + while (lab18 === true) { + lab18 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_21, 8) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab18; + } + break lab15; + } + this.cursor = ((this.limit - v_5) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + this.cursor = ((this.limit - v_4) | 0); + break lab14; + } + } + } + this.B_continue_stemming_noun_suffixes = false; + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_17, 4) === 0 ? false : true)) { + break lab19; + } + lab20 = true; + lab20: + while (lab20 === true) { + lab20 = false; + v_6 = ((this.limit - this.cursor) | 0); + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_20, 32) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab21; + } + break lab20; + } + this.cursor = ((this.limit - v_6) | 0); + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_21, 8) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab19; + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab22 = true; + lab22: + while (lab22 === true) { + lab22 = false; + lab23 = true; + lab23: + while (lab23 === true) { + lab23 = false; + v_7 = ((this.limit - this.cursor) | 0); + lab24 = true; + lab24: + while (lab24 === true) { + lab24 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_15, 4) === 0 ? false : true)) { + break lab24; + } + break lab23; + } + this.cursor = ((this.limit - v_7) | 0); + lab25 = true; + lab25: + while (lab25 === true) { + lab25 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_14, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab25; + } + break lab23; + } + this.cursor = ((this.limit - v_7) | 0); + lab26 = true; + lab26: + while (lab26 === true) { + lab26 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_13, 4) === 0 ? false : true)) { + break lab26; + } + break lab23; + } + this.cursor = ((this.limit - v_7) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_12, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab22; + } + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_8 = ((this.limit - this.cursor) | 0); + lab27 = true; + lab27: + while (lab27 === true) { + lab27 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + this.cursor = ((this.limit - v_8) | 0); + break lab27; + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_18, 8) === 0 ? false : true)) { + return false; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_9 = ((this.limit - this.cursor) | 0); + lab28 = true; + lab28: + while (lab28 === true) { + lab28 = false; + this.ket = this.cursor; + lab29 = true; + lab29: + while (lab29 === true) { + lab29 = false; + v_10 = ((this.limit - this.cursor) | 0); + lab30 = true; + lab30: + while (lab30 === true) { + lab30 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_15, 4) === 0 ? false : true)) { + break lab30; + } + break lab29; + } + this.cursor = ((this.limit - v_10) | 0); + lab31 = true; + lab31: + while (lab31 === true) { + lab31 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab31; + } + break lab29; + } + this.cursor = ((this.limit - v_10) | 0); + lab32 = true; + lab32: + while (lab32 === true) { + lab32 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_12, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab32; + } + break lab29; + } + this.cursor = ((this.limit - v_10) | 0); + lab33 = true; + lab33: + while (lab33 === true) { + lab33 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_13, 4) === 0 ? false : true)) { + break lab33; + } + break lab29; + } + this.cursor = ((this.limit - v_10) | 0); + lab34 = true; + lab34: + while (lab34 === true) { + lab34 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_14, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab34; + } + break lab29; + } + this.cursor = ((this.limit - v_10) | 0); + } + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + this.cursor = ((this.limit - v_9) | 0); + break lab28; + } + } + } + this.bra = this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S(this, "") ? false : true); +}; + +TurkishStemmer.prototype.r_stem_nominal_verb_suffixes = TurkishStemmer.prototype.r_stem_nominal_verb_suffixes$; + +function TurkishStemmer$r_stem_nominal_verb_suffixes$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var lab11; + var lab12; + var lab13; + var lab14; + var lab15; + var lab16; + var lab17; + var lab18; + var lab19; + var lab20; + var lab21; + var lab22; + var lab23; + var lab24; + var lab25; + var lab26; + var lab27; + var lab28; + var lab29; + var lab30; + var lab31; + var lab32; + var lab33; + var lab34; + $this.ket = $this.cursor; + $this.B_continue_stemming_noun_suffixes = true; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + v_2 = (($this.limit - $this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab3; + } + break lab2; + } + $this.cursor = (($this.limit - v_2) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_20, 32) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab4; + } + break lab2; + } + $this.cursor = (($this.limit - v_2) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_21, 8) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab5; + } + break lab2; + } + $this.cursor = (($this.limit - v_2) | 0); + if (! (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 3, "ken") ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab1; + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_19, 2) === 0 ? false : true)) { + break lab6; + } + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + v_3 = (($this.limit - $this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_15, 4) === 0 ? false : true)) { + break lab8; + } + break lab7; + } + $this.cursor = (($this.limit - v_3) | 0); + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab9; + } + break lab7; + } + $this.cursor = (($this.limit - v_3) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_12, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab10; + } + break lab7; + } + $this.cursor = (($this.limit - v_3) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_13, 4) === 0 ? false : true)) { + break lab11; + } + break lab7; + } + $this.cursor = (($this.limit - v_3) | 0); + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_14, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab12; + } + break lab7; + } + $this.cursor = (($this.limit - v_3) | 0); + } + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab6; + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab13; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_4 = (($this.limit - $this.cursor) | 0); + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + $this.ket = $this.cursor; + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + v_5 = (($this.limit - $this.cursor) | 0); + lab16 = true; + lab16: + while (lab16 === true) { + lab16 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_18, 8) === 0 ? false : true)) { + break lab16; + } + break lab15; + } + $this.cursor = (($this.limit - v_5) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_20, 32) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab17; + } + break lab15; + } + $this.cursor = (($this.limit - v_5) | 0); + lab18 = true; + lab18: + while (lab18 === true) { + lab18 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_21, 8) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab18; + } + break lab15; + } + $this.cursor = (($this.limit - v_5) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + $this.cursor = (($this.limit - v_4) | 0); + break lab14; + } + } + } + $this.B_continue_stemming_noun_suffixes = false; + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_17, 4) === 0 ? false : true)) { + break lab19; + } + lab20 = true; + lab20: + while (lab20 === true) { + lab20 = false; + v_6 = (($this.limit - $this.cursor) | 0); + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_20, 32) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab21; + } + break lab20; + } + $this.cursor = (($this.limit - v_6) | 0); + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_21, 8) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab19; + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab22 = true; + lab22: + while (lab22 === true) { + lab22 = false; + lab23 = true; + lab23: + while (lab23 === true) { + lab23 = false; + v_7 = (($this.limit - $this.cursor) | 0); + lab24 = true; + lab24: + while (lab24 === true) { + lab24 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_15, 4) === 0 ? false : true)) { + break lab24; + } + break lab23; + } + $this.cursor = (($this.limit - v_7) | 0); + lab25 = true; + lab25: + while (lab25 === true) { + lab25 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_14, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab25; + } + break lab23; + } + $this.cursor = (($this.limit - v_7) | 0); + lab26 = true; + lab26: + while (lab26 === true) { + lab26 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_13, 4) === 0 ? false : true)) { + break lab26; + } + break lab23; + } + $this.cursor = (($this.limit - v_7) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_12, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab22; + } + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_8 = (($this.limit - $this.cursor) | 0); + lab27 = true; + lab27: + while (lab27 === true) { + lab27 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + $this.cursor = (($this.limit - v_8) | 0); + break lab27; + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_18, 8) === 0 ? false : true)) { + return false; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_9 = (($this.limit - $this.cursor) | 0); + lab28 = true; + lab28: + while (lab28 === true) { + lab28 = false; + $this.ket = $this.cursor; + lab29 = true; + lab29: + while (lab29 === true) { + lab29 = false; + v_10 = (($this.limit - $this.cursor) | 0); + lab30 = true; + lab30: + while (lab30 === true) { + lab30 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_15, 4) === 0 ? false : true)) { + break lab30; + } + break lab29; + } + $this.cursor = (($this.limit - v_10) | 0); + lab31 = true; + lab31: + while (lab31 === true) { + lab31 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab31; + } + break lab29; + } + $this.cursor = (($this.limit - v_10) | 0); + lab32 = true; + lab32: + while (lab32 === true) { + lab32 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_12, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab32; + } + break lab29; + } + $this.cursor = (($this.limit - v_10) | 0); + lab33 = true; + lab33: + while (lab33 === true) { + lab33 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_13, 4) === 0 ? false : true)) { + break lab33; + } + break lab29; + } + $this.cursor = (($this.limit - v_10) | 0); + lab34 = true; + lab34: + while (lab34 === true) { + lab34 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_14, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab34; + } + break lab29; + } + $this.cursor = (($this.limit - v_10) | 0); + } + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_22, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + $this.cursor = (($this.limit - v_9) | 0); + break lab28; + } + } + } + $this.bra = $this.cursor; + return (! BaseStemmer$slice_from$LBaseStemmer$S($this, "") ? false : true); +}; + +TurkishStemmer.r_stem_nominal_verb_suffixes$LTurkishStemmer$ = TurkishStemmer$r_stem_nominal_verb_suffixes$LTurkishStemmer$; + +TurkishStemmer.prototype.r_stem_suffix_chain_before_ki$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var lab11; + var lab12; + var lab13; + var lab14; + var lab15; + var lab16; + var lab17; + var lab18; + this.ket = this.cursor; + if (! (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 2, "ki") ? false : true)) { + return false; + } + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_6, 4) === 0 ? false : true)) { + break lab1; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_2 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + this.ket = this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = ((this.limit - this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab4; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_4 = ((this.limit - this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_4) | 0); + break lab5; + } + } + break lab3; + } + this.cursor = ((this.limit - v_3) | 0); + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$(this) ? false : true)) { + this.cursor = ((this.limit - v_2) | 0); + break lab2; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_5 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_5) | 0); + break lab6; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_5) | 0); + break lab6; + } + } + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_3, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab7; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_6 = ((this.limit - this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + this.ket = this.cursor; + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_7 = ((this.limit - this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab10; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab9; + } + this.cursor = ((this.limit - v_7) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + this.ket = this.cursor; + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + v_8 = ((this.limit - this.cursor) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$(this) ? false : true)) { + break lab13; + } + break lab12; + } + this.cursor = ((this.limit - v_8) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab11; + } + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_9 = ((this.limit - this.cursor) | 0); + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_9) | 0); + break lab14; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_9) | 0); + break lab14; + } + } + break lab9; + } + this.cursor = ((this.limit - v_7) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_6) | 0); + break lab8; + } + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_7, 2) === 0 ? false : true)) { + return false; + } + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + v_10 = ((this.limit - this.cursor) | 0); + lab16 = true; + lab16: + while (lab16 === true) { + lab16 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab16; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab15; + } + this.cursor = ((this.limit - v_10) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab17; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_11 = ((this.limit - this.cursor) | 0); + lab18 = true; + lab18: + while (lab18 === true) { + lab18 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_11) | 0); + break lab18; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_11) | 0); + break lab18; + } + } + break lab15; + } + this.cursor = ((this.limit - v_10) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + return false; + } + } + } + return true; +}; + +TurkishStemmer.prototype.r_stem_suffix_chain_before_ki = TurkishStemmer.prototype.r_stem_suffix_chain_before_ki$; + +function TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var lab11; + var lab12; + var lab13; + var lab14; + var lab15; + var lab16; + var lab17; + var lab18; + $this.ket = $this.cursor; + if (! (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 2, "ki") ? false : true)) { + return false; + } + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_6, 4) === 0 ? false : true)) { + break lab1; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_2 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + $this.ket = $this.cursor; + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_3 = (($this.limit - $this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab4; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_4 = (($this.limit - $this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_4) | 0); + break lab5; + } + } + break lab3; + } + $this.cursor = (($this.limit - v_3) | 0); + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$($this) ? false : true)) { + $this.cursor = (($this.limit - v_2) | 0); + break lab2; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_5 = (($this.limit - $this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_5) | 0); + break lab6; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_5) | 0); + break lab6; + } + } + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_3, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab7; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_6 = (($this.limit - $this.cursor) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + $this.ket = $this.cursor; + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + v_7 = (($this.limit - $this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab10; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab9; + } + $this.cursor = (($this.limit - v_7) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + $this.ket = $this.cursor; + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + v_8 = (($this.limit - $this.cursor) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$($this) ? false : true)) { + break lab13; + } + break lab12; + } + $this.cursor = (($this.limit - v_8) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab11; + } + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_9 = (($this.limit - $this.cursor) | 0); + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_9) | 0); + break lab14; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_9) | 0); + break lab14; + } + } + break lab9; + } + $this.cursor = (($this.limit - v_7) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_6) | 0); + break lab8; + } + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_7, 2) === 0 ? false : true)) { + return false; + } + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + v_10 = (($this.limit - $this.cursor) | 0); + lab16 = true; + lab16: + while (lab16 === true) { + lab16 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab16; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab15; + } + $this.cursor = (($this.limit - v_10) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab17; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_11 = (($this.limit - $this.cursor) | 0); + lab18 = true; + lab18: + while (lab18 === true) { + lab18 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_11) | 0); + break lab18; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_11) | 0); + break lab18; + } + } + break lab15; + } + $this.cursor = (($this.limit - v_10) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + return false; + } + } + } + return true; +}; + +TurkishStemmer.r_stem_suffix_chain_before_ki$LTurkishStemmer$ = TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$; + +TurkishStemmer.prototype.r_stem_noun_suffixes$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var v_12; + var v_13; + var v_14; + var v_15; + var v_16; + var v_17; + var v_18; + var v_19; + var v_20; + var v_21; + var v_22; + var v_23; + var v_24; + var v_25; + var v_26; + var v_27; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var lab11; + var lab12; + var lab13; + var lab14; + var lab15; + var lab16; + var lab17; + var lab18; + var lab19; + var lab20; + var lab21; + var lab22; + var lab23; + var lab24; + var lab25; + var lab26; + var lab27; + var lab28; + var lab29; + var lab30; + var lab31; + var lab32; + var lab33; + var lab34; + var lab35; + var lab36; + var lab37; + var lab38; + var lab39; + var lab40; + var lab41; + var lab42; + var lab43; + var lab44; + var lab45; + var lab46; + var lab47; + var lab48; + var lab49; + var lab50; + var lab51; + var lab52; + var lab53; + var cursor$0; + var cursor$1; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab1; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_2 = ((this.limit - this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_2) | 0); + break lab2; + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_11, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab3; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_3 = ((this.limit - this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + v_4 = ((this.limit - this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + this.ket = this.cursor; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab6; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab5; + } + this.cursor = ((this.limit - v_4) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + this.ket = this.cursor; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + v_5 = ((this.limit - this.cursor) | 0); + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$(this) ? false : true)) { + break lab9; + } + break lab8; + } + this.cursor = ((this.limit - v_5) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab7; + } + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_6 = ((this.limit - this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_6) | 0); + break lab10; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_6) | 0); + break lab10; + } + } + break lab5; + } + cursor$0 = this.cursor = ((this.limit - v_4) | 0); + this.ket = cursor$0; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_3) | 0); + break lab4; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_3) | 0); + break lab4; + } + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + this.ket = this.cursor; + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + v_7 = ((this.limit - this.cursor) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_7, 2) === 0 ? false : true)) { + break lab13; + } + break lab12; + } + this.cursor = ((this.limit - v_7) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_5, 2) === 0 ? false : true)) { + break lab11; + } + } + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + v_8 = ((this.limit - this.cursor) | 0); + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab15; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab14; + } + this.cursor = ((this.limit - v_8) | 0); + lab16 = true; + lab16: + while (lab16 === true) { + lab16 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab16; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_9 = ((this.limit - this.cursor) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_9) | 0); + break lab17; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_9) | 0); + break lab17; + } + } + break lab14; + } + this.cursor = ((this.limit - v_8) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + break lab11; + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab18 = true; + lab18: + while (lab18 === true) { + lab18 = false; + this.ket = this.cursor; + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + v_10 = ((this.limit - this.cursor) | 0); + lab20 = true; + lab20: + while (lab20 === true) { + lab20 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_9, 2) === 0 ? false : true)) { + break lab20; + } + break lab19; + } + this.cursor = ((this.limit - v_10) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_2, 4) === 0 ? false : true)) { + break lab18; + } + } + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + v_11 = ((this.limit - this.cursor) | 0); + lab22 = true; + lab22: + while (lab22 === true) { + lab22 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab22; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_12 = ((this.limit - this.cursor) | 0); + lab23 = true; + lab23: + while (lab23 === true) { + lab23 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_12) | 0); + break lab23; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_12) | 0); + break lab23; + } + } + break lab21; + } + this.cursor = ((this.limit - v_11) | 0); + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab18; + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab24 = true; + lab24: + while (lab24 === true) { + lab24 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_8, 4) === 0 ? false : true)) { + break lab24; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_13 = ((this.limit - this.cursor) | 0); + lab25 = true; + lab25: + while (lab25 === true) { + lab25 = false; + this.ket = this.cursor; + lab26 = true; + lab26: + while (lab26 === true) { + lab26 = false; + v_14 = ((this.limit - this.cursor) | 0); + lab27 = true; + lab27: + while (lab27 === true) { + lab27 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$(this) ? false : true)) { + break lab27; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_15 = ((this.limit - this.cursor) | 0); + lab28 = true; + lab28: + while (lab28 === true) { + lab28 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_15) | 0); + break lab28; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_15) | 0); + break lab28; + } + } + break lab26; + } + this.cursor = ((this.limit - v_14) | 0); + lab29 = true; + lab29: + while (lab29 === true) { + lab29 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab29; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_16 = ((this.limit - this.cursor) | 0); + lab30 = true; + lab30: + while (lab30 === true) { + lab30 = false; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_16) | 0); + break lab30; + } + } + break lab26; + } + this.cursor = ((this.limit - v_14) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_13) | 0); + break lab25; + } + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab31 = true; + lab31: + while (lab31 === true) { + lab31 = false; + this.ket = this.cursor; + lab32 = true; + lab32: + while (lab32 === true) { + lab32 = false; + v_17 = ((this.limit - this.cursor) | 0); + lab33 = true; + lab33: + while (lab33 === true) { + lab33 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_3, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab33; + } + break lab32; + } + this.cursor = ((this.limit - v_17) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_10, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab31; + } + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_18 = ((this.limit - this.cursor) | 0); + lab34 = true; + lab34: + while (lab34 === true) { + lab34 = false; + lab35 = true; + lab35: + while (lab35 === true) { + lab35 = false; + v_19 = ((this.limit - this.cursor) | 0); + lab36 = true; + lab36: + while (lab36 === true) { + lab36 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab36; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + break lab36; + } + break lab35; + } + this.cursor = ((this.limit - v_19) | 0); + lab37 = true; + lab37: + while (lab37 === true) { + lab37 = false; + this.ket = this.cursor; + lab38 = true; + lab38: + while (lab38 === true) { + lab38 = false; + v_20 = ((this.limit - this.cursor) | 0); + lab39 = true; + lab39: + while (lab39 === true) { + lab39 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$(this) ? false : true)) { + break lab39; + } + break lab38; + } + this.cursor = ((this.limit - v_20) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab37; + } + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_21 = ((this.limit - this.cursor) | 0); + lab40 = true; + lab40: + while (lab40 === true) { + lab40 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_21) | 0); + break lab40; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_21) | 0); + break lab40; + } + } + break lab35; + } + this.cursor = ((this.limit - v_19) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_18) | 0); + break lab34; + } + } + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab41 = true; + lab41: + while (lab41 === true) { + lab41 = false; + this.ket = this.cursor; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab41; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab42 = true; + lab42: + while (lab42 === true) { + lab42 = false; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + break lab42; + } + break lab0; + } + this.cursor = ((this.limit - v_1) | 0); + lab43 = true; + lab43: + while (lab43 === true) { + lab43 = false; + this.ket = this.cursor; + lab44 = true; + lab44: + while (lab44 === true) { + lab44 = false; + v_22 = ((this.limit - this.cursor) | 0); + lab45 = true; + lab45: + while (lab45 === true) { + lab45 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_6, 4) === 0 ? false : true)) { + break lab45; + } + break lab44; + } + this.cursor = ((this.limit - v_22) | 0); + lab46 = true; + lab46: + while (lab46 === true) { + lab46 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab46; + } + break lab44; + } + this.cursor = ((this.limit - v_22) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_4, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$(this) ? false : true)) { + break lab43; + } + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_23 = ((this.limit - this.cursor) | 0); + lab47 = true; + lab47: + while (lab47 === true) { + lab47 = false; + this.ket = this.cursor; + lab48 = true; + lab48: + while (lab48 === true) { + lab48 = false; + v_24 = ((this.limit - this.cursor) | 0); + lab49 = true; + lab49: + while (lab49 === true) { + lab49 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$(this) ? false : true)) { + break lab49; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_25 = ((this.limit - this.cursor) | 0); + lab50 = true; + lab50: + while (lab50 === true) { + lab50 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_25) | 0); + break lab50; + } + } + break lab48; + } + this.cursor = ((this.limit - v_24) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_23) | 0); + break lab47; + } + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + this.ket = this.cursor; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_23) | 0); + break lab47; + } + } + break lab0; + } + cursor$1 = this.cursor = ((this.limit - v_1) | 0); + this.ket = cursor$1; + lab51 = true; + lab51: + while (lab51 === true) { + lab51 = false; + v_26 = ((this.limit - this.cursor) | 0); + lab52 = true; + lab52: + while (lab52 === true) { + lab52 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$(this) ? false : true)) { + break lab52; + } + break lab51; + } + this.cursor = ((this.limit - v_26) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$(this) ? false : true)) { + return false; + } + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + v_27 = ((this.limit - this.cursor) | 0); + lab53 = true; + lab53: + while (lab53 === true) { + lab53 = false; + this.ket = this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$(this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + this.cursor = ((this.limit - v_27) | 0); + break lab53; + } + this.bra = this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$(this)) { + this.cursor = ((this.limit - v_27) | 0); + break lab53; + } + } + } + return true; +}; + +TurkishStemmer.prototype.r_stem_noun_suffixes = TurkishStemmer.prototype.r_stem_noun_suffixes$; + +function TurkishStemmer$r_stem_noun_suffixes$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var v_12; + var v_13; + var v_14; + var v_15; + var v_16; + var v_17; + var v_18; + var v_19; + var v_20; + var v_21; + var v_22; + var v_23; + var v_24; + var v_25; + var v_26; + var v_27; + var lab0; + var lab1; + var lab2; + var lab3; + var lab4; + var lab5; + var lab6; + var lab7; + var lab8; + var lab9; + var lab10; + var lab11; + var lab12; + var lab13; + var lab14; + var lab15; + var lab16; + var lab17; + var lab18; + var lab19; + var lab20; + var lab21; + var lab22; + var lab23; + var lab24; + var lab25; + var lab26; + var lab27; + var lab28; + var lab29; + var lab30; + var lab31; + var lab32; + var lab33; + var lab34; + var lab35; + var lab36; + var lab37; + var lab38; + var lab39; + var lab40; + var lab41; + var lab42; + var lab43; + var lab44; + var lab45; + var lab46; + var lab47; + var lab48; + var lab49; + var lab50; + var lab51; + var lab52; + var lab53; + var cursor$0; + var cursor$1; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab1; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_2 = (($this.limit - $this.cursor) | 0); + lab2 = true; + lab2: + while (lab2 === true) { + lab2 = false; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_2) | 0); + break lab2; + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_11, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab3; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_3 = (($this.limit - $this.cursor) | 0); + lab4 = true; + lab4: + while (lab4 === true) { + lab4 = false; + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + v_4 = (($this.limit - $this.cursor) | 0); + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + $this.ket = $this.cursor; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab6; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab5; + } + $this.cursor = (($this.limit - v_4) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + $this.ket = $this.cursor; + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + v_5 = (($this.limit - $this.cursor) | 0); + lab9 = true; + lab9: + while (lab9 === true) { + lab9 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$($this) ? false : true)) { + break lab9; + } + break lab8; + } + $this.cursor = (($this.limit - v_5) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab7; + } + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_6 = (($this.limit - $this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_6) | 0); + break lab10; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_6) | 0); + break lab10; + } + } + break lab5; + } + cursor$0 = $this.cursor = (($this.limit - v_4) | 0); + $this.ket = cursor$0; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab4; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_3) | 0); + break lab4; + } + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + $this.ket = $this.cursor; + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + v_7 = (($this.limit - $this.cursor) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_7, 2) === 0 ? false : true)) { + break lab13; + } + break lab12; + } + $this.cursor = (($this.limit - v_7) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_5, 2) === 0 ? false : true)) { + break lab11; + } + } + lab14 = true; + lab14: + while (lab14 === true) { + lab14 = false; + v_8 = (($this.limit - $this.cursor) | 0); + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab15; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab14; + } + $this.cursor = (($this.limit - v_8) | 0); + lab16 = true; + lab16: + while (lab16 === true) { + lab16 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab16; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_9 = (($this.limit - $this.cursor) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_9) | 0); + break lab17; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_9) | 0); + break lab17; + } + } + break lab14; + } + $this.cursor = (($this.limit - v_8) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + break lab11; + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab18 = true; + lab18: + while (lab18 === true) { + lab18 = false; + $this.ket = $this.cursor; + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + v_10 = (($this.limit - $this.cursor) | 0); + lab20 = true; + lab20: + while (lab20 === true) { + lab20 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_9, 2) === 0 ? false : true)) { + break lab20; + } + break lab19; + } + $this.cursor = (($this.limit - v_10) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_2, 4) === 0 ? false : true)) { + break lab18; + } + } + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + v_11 = (($this.limit - $this.cursor) | 0); + lab22 = true; + lab22: + while (lab22 === true) { + lab22 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab22; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_12 = (($this.limit - $this.cursor) | 0); + lab23 = true; + lab23: + while (lab23 === true) { + lab23 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_12) | 0); + break lab23; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_12) | 0); + break lab23; + } + } + break lab21; + } + $this.cursor = (($this.limit - v_11) | 0); + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab18; + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab24 = true; + lab24: + while (lab24 === true) { + lab24 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_8, 4) === 0 ? false : true)) { + break lab24; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_13 = (($this.limit - $this.cursor) | 0); + lab25 = true; + lab25: + while (lab25 === true) { + lab25 = false; + $this.ket = $this.cursor; + lab26 = true; + lab26: + while (lab26 === true) { + lab26 = false; + v_14 = (($this.limit - $this.cursor) | 0); + lab27 = true; + lab27: + while (lab27 === true) { + lab27 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$($this) ? false : true)) { + break lab27; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_15 = (($this.limit - $this.cursor) | 0); + lab28 = true; + lab28: + while (lab28 === true) { + lab28 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_15) | 0); + break lab28; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_15) | 0); + break lab28; + } + } + break lab26; + } + $this.cursor = (($this.limit - v_14) | 0); + lab29 = true; + lab29: + while (lab29 === true) { + lab29 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab29; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_16 = (($this.limit - $this.cursor) | 0); + lab30 = true; + lab30: + while (lab30 === true) { + lab30 = false; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_16) | 0); + break lab30; + } + } + break lab26; + } + $this.cursor = (($this.limit - v_14) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_13) | 0); + break lab25; + } + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab31 = true; + lab31: + while (lab31 === true) { + lab31 = false; + $this.ket = $this.cursor; + lab32 = true; + lab32: + while (lab32 === true) { + lab32 = false; + v_17 = (($this.limit - $this.cursor) | 0); + lab33 = true; + lab33: + while (lab33 === true) { + lab33 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_3, 4) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_n_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab33; + } + break lab32; + } + $this.cursor = (($this.limit - v_17) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_10, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab31; + } + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_18 = (($this.limit - $this.cursor) | 0); + lab34 = true; + lab34: + while (lab34 === true) { + lab34 = false; + lab35 = true; + lab35: + while (lab35 === true) { + lab35 = false; + v_19 = (($this.limit - $this.cursor) | 0); + lab36 = true; + lab36: + while (lab36 === true) { + lab36 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + break lab36; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + break lab36; + } + break lab35; + } + $this.cursor = (($this.limit - v_19) | 0); + lab37 = true; + lab37: + while (lab37 === true) { + lab37 = false; + $this.ket = $this.cursor; + lab38 = true; + lab38: + while (lab38 === true) { + lab38 = false; + v_20 = (($this.limit - $this.cursor) | 0); + lab39 = true; + lab39: + while (lab39 === true) { + lab39 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$($this) ? false : true)) { + break lab39; + } + break lab38; + } + $this.cursor = (($this.limit - v_20) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab37; + } + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_21 = (($this.limit - $this.cursor) | 0); + lab40 = true; + lab40: + while (lab40 === true) { + lab40 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_21) | 0); + break lab40; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_21) | 0); + break lab40; + } + } + break lab35; + } + $this.cursor = (($this.limit - v_19) | 0); + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_18) | 0); + break lab34; + } + } + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab41 = true; + lab41: + while (lab41 === true) { + lab41 = false; + $this.ket = $this.cursor; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_1, 2) === 0 ? false : true)) { + break lab41; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab42 = true; + lab42: + while (lab42 === true) { + lab42 = false; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + break lab42; + } + break lab0; + } + $this.cursor = (($this.limit - v_1) | 0); + lab43 = true; + lab43: + while (lab43 === true) { + lab43 = false; + $this.ket = $this.cursor; + lab44 = true; + lab44: + while (lab44 === true) { + lab44 = false; + v_22 = (($this.limit - $this.cursor) | 0); + lab45 = true; + lab45: + while (lab45 === true) { + lab45 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_6, 4) === 0 ? false : true)) { + break lab45; + } + break lab44; + } + $this.cursor = (($this.limit - v_22) | 0); + lab46 = true; + lab46: + while (lab46 === true) { + lab46 = false; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab46; + } + break lab44; + } + $this.cursor = (($this.limit - v_22) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_4, 2) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_y_consonant$LTurkishStemmer$($this) ? false : true)) { + break lab43; + } + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_23 = (($this.limit - $this.cursor) | 0); + lab47 = true; + lab47: + while (lab47 === true) { + lab47 = false; + $this.ket = $this.cursor; + lab48 = true; + lab48: + while (lab48 === true) { + lab48 = false; + v_24 = (($this.limit - $this.cursor) | 0); + lab49 = true; + lab49: + while (lab49 === true) { + lab49 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$($this) ? false : true)) { + break lab49; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_25 = (($this.limit - $this.cursor) | 0); + lab50 = true; + lab50: + while (lab50 === true) { + lab50 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_25) | 0); + break lab50; + } + } + break lab48; + } + $this.cursor = (($this.limit - v_24) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_23) | 0); + break lab47; + } + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + $this.ket = $this.cursor; + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_23) | 0); + break lab47; + } + } + break lab0; + } + cursor$1 = $this.cursor = (($this.limit - v_1) | 0); + $this.ket = cursor$1; + lab51 = true; + lab51: + while (lab51 === true) { + lab51 = false; + v_26 = (($this.limit - $this.cursor) | 0); + lab52 = true; + lab52: + while (lab52 === true) { + lab52 = false; + if (! (BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_0, 10) === 0 ? false : ! TurkishStemmer$r_mark_suffix_with_optional_U_vowel$LTurkishStemmer$($this) ? false : true)) { + break lab52; + } + break lab51; + } + $this.cursor = (($this.limit - v_26) | 0); + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : ! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_U, 105, 305) ? false : ! TurkishStemmer$r_mark_suffix_with_optional_s_consonant$LTurkishStemmer$($this) ? false : true)) { + return false; + } + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + v_27 = (($this.limit - $this.cursor) | 0); + lab53 = true; + lab53: + while (lab53 === true) { + lab53 = false; + $this.ket = $this.cursor; + if (! (! TurkishStemmer$r_check_vowel_harmony$LTurkishStemmer$($this) ? false : BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_16, 2) === 0 ? false : true)) { + $this.cursor = (($this.limit - v_27) | 0); + break lab53; + } + $this.bra = $this.cursor; + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "")) { + return false; + } + if (! TurkishStemmer$r_stem_suffix_chain_before_ki$LTurkishStemmer$($this)) { + $this.cursor = (($this.limit - v_27) | 0); + break lab53; + } + } + } + return true; +}; + +TurkishStemmer.r_stem_noun_suffixes$LTurkishStemmer$ = TurkishStemmer$r_stem_noun_suffixes$LTurkishStemmer$; + +TurkishStemmer.prototype.r_post_process_last_consonants$ = function () { + var among_var; + this.ket = this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I(this, TurkishStemmer.a_23, 4); + if (among_var === 0) { + return false; + } + this.bra = this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "p")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "\u00E7")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "t")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S(this, "k")) { + return false; + } + break; + } + return true; +}; + +TurkishStemmer.prototype.r_post_process_last_consonants = TurkishStemmer.prototype.r_post_process_last_consonants$; + +function TurkishStemmer$r_post_process_last_consonants$LTurkishStemmer$($this) { + var among_var; + $this.ket = $this.cursor; + among_var = BaseStemmer$find_among_b$LBaseStemmer$ALAmong$I($this, TurkishStemmer.a_23, 4); + if (among_var === 0) { + return false; + } + $this.bra = $this.cursor; + switch (among_var) { + case 0: + return false; + case 1: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "p")) { + return false; + } + break; + case 2: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "\u00E7")) { + return false; + } + break; + case 3: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "t")) { + return false; + } + break; + case 4: + if (! BaseStemmer$slice_from$LBaseStemmer$S($this, "k")) { + return false; + } + break; + } + return true; +}; + +TurkishStemmer.r_post_process_last_consonants$LTurkishStemmer$ = TurkishStemmer$r_post_process_last_consonants$LTurkishStemmer$; + +TurkishStemmer.prototype.r_append_U_to_stems_ending_with_d_or_g$ = function () { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var v_12; + var v_13; + var v_14; + var v_15; + var lab0; + var lab1; + var lab2; + var lab3; + var lab5; + var lab6; + var lab7; + var c; + var lab8; + var lab10; + var lab11; + var lab12; + var lab13; + var lab15; + var lab16; + var lab17; + var lab19; + var lab20; + var lab21; + var c_bra$0; + var adjustment$0; + var c_bra$1; + var adjustment$1; + var c_bra$2; + var adjustment$2; + var c_bra$3; + var adjustment$3; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var cursor$4; + var cursor$5; + var cursor$6; + var limit$0; + var cursor$7; + var cursor$8; + var $__jsx_postinc_t; + v_1 = ((this.limit - this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_2 = ((this.limit - this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "d")) { + break lab1; + } + break lab0; + } + this.cursor = ((this.limit - v_2) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "g")) { + return false; + } + } + this.cursor = ((this.limit - v_1) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + v_3 = ((this.limit - this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_4 = ((this.limit - this.cursor) | 0); + golab4: + while (true) { + v_5 = ((this.limit - this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab5; + } + this.cursor = ((this.limit - v_5) | 0); + break golab4; + } + cursor$0 = this.cursor = ((this.limit - v_5) | 0); + if (cursor$0 <= this.limit_backward) { + break lab3; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + v_6 = ((this.limit - this.cursor) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "a")) { + break lab7; + } + break lab6; + } + this.cursor = ((this.limit - v_6) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u0131")) { + break lab3; + } + } + cursor$1 = this.cursor = ((this.limit - v_4) | 0); + c = cursor$1; + c_bra$0 = cursor$1; + adjustment$0 = BaseStemmer$replace_s$LBaseStemmer$IIS(this, cursor$1, cursor$1, "\u0131"); + if (cursor$1 <= this.bra) { + this.bra = (this.bra + adjustment$0) | 0; + } + if (c_bra$0 <= this.ket) { + this.ket = (this.ket + adjustment$0) | 0; + } + this.cursor = c; + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + v_7 = ((this.limit - this.cursor) | 0); + golab9: + while (true) { + v_8 = ((this.limit - this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab10; + } + this.cursor = ((this.limit - v_8) | 0); + break golab9; + } + cursor$2 = this.cursor = ((this.limit - v_8) | 0); + if (cursor$2 <= this.limit_backward) { + break lab8; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + v_9 = ((this.limit - this.cursor) | 0); + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "e")) { + break lab12; + } + break lab11; + } + this.cursor = ((this.limit - v_9) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "i")) { + break lab8; + } + } + cursor$3 = this.cursor = ((this.limit - v_7) | 0); + c = cursor$3; + c_bra$1 = cursor$3; + adjustment$1 = BaseStemmer$replace_s$LBaseStemmer$IIS(this, cursor$3, cursor$3, "i"); + if (cursor$3 <= this.bra) { + this.bra = (this.bra + adjustment$1) | 0; + } + if (c_bra$1 <= this.ket) { + this.ket = (this.ket + adjustment$1) | 0; + } + this.cursor = c; + break lab2; + } + this.cursor = ((this.limit - v_3) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + v_10 = ((this.limit - this.cursor) | 0); + golab14: + while (true) { + v_11 = ((this.limit - this.cursor) | 0); + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab15; + } + this.cursor = ((this.limit - v_11) | 0); + break golab14; + } + cursor$4 = this.cursor = ((this.limit - v_11) | 0); + if (cursor$4 <= this.limit_backward) { + break lab13; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab16 = true; + lab16: + while (lab16 === true) { + lab16 = false; + v_12 = ((this.limit - this.cursor) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "o")) { + break lab17; + } + break lab16; + } + this.cursor = ((this.limit - v_12) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "u")) { + break lab13; + } + } + cursor$5 = this.cursor = ((this.limit - v_10) | 0); + c = cursor$5; + c_bra$2 = cursor$5; + adjustment$2 = BaseStemmer$replace_s$LBaseStemmer$IIS(this, cursor$5, cursor$5, "u"); + if (cursor$5 <= this.bra) { + this.bra = (this.bra + adjustment$2) | 0; + } + if (c_bra$2 <= this.ket) { + this.ket = (this.ket + adjustment$2) | 0; + } + this.cursor = c; + break lab2; + } + cursor$7 = this.cursor = (((limit$0 = this.limit) - v_3) | 0); + v_13 = ((limit$0 - cursor$7) | 0); + golab18: + while (true) { + v_14 = ((this.limit - this.cursor) | 0); + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab19; + } + this.cursor = ((this.limit - v_14) | 0); + break golab18; + } + cursor$6 = this.cursor = ((this.limit - v_14) | 0); + if (cursor$6 <= this.limit_backward) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab20 = true; + lab20: + while (lab20 === true) { + lab20 = false; + v_15 = ((this.limit - this.cursor) | 0); + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u00F6")) { + break lab21; + } + break lab20; + } + this.cursor = ((this.limit - v_15) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS(this, 1, "\u00FC")) { + return false; + } + } + cursor$8 = this.cursor = ((this.limit - v_13) | 0); + c = cursor$8; + c_bra$3 = cursor$8; + adjustment$3 = BaseStemmer$replace_s$LBaseStemmer$IIS(this, cursor$8, cursor$8, "\u00FC"); + if (cursor$8 <= this.bra) { + this.bra = (this.bra + adjustment$3) | 0; + } + if (c_bra$3 <= this.ket) { + this.ket = (this.ket + adjustment$3) | 0; + } + this.cursor = c; + } + return true; +}; + +TurkishStemmer.prototype.r_append_U_to_stems_ending_with_d_or_g = TurkishStemmer.prototype.r_append_U_to_stems_ending_with_d_or_g$; + +function TurkishStemmer$r_append_U_to_stems_ending_with_d_or_g$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_3; + var v_4; + var v_5; + var v_6; + var v_7; + var v_8; + var v_9; + var v_10; + var v_11; + var v_12; + var v_13; + var v_14; + var v_15; + var lab0; + var lab1; + var lab2; + var lab3; + var lab5; + var lab6; + var lab7; + var c; + var lab8; + var lab10; + var lab11; + var lab12; + var lab13; + var lab15; + var lab16; + var lab17; + var lab19; + var lab20; + var lab21; + var c_bra$0; + var adjustment$0; + var c_bra$1; + var adjustment$1; + var c_bra$2; + var adjustment$2; + var c_bra$3; + var adjustment$3; + var cursor$0; + var cursor$1; + var cursor$2; + var cursor$3; + var cursor$4; + var cursor$5; + var cursor$6; + var limit$0; + var cursor$7; + var cursor$8; + var $__jsx_postinc_t; + v_1 = (($this.limit - $this.cursor) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_2 = (($this.limit - $this.cursor) | 0); + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "d")) { + break lab1; + } + break lab0; + } + $this.cursor = (($this.limit - v_2) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "g")) { + return false; + } + } + $this.cursor = (($this.limit - v_1) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + v_3 = (($this.limit - $this.cursor) | 0); + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + v_4 = (($this.limit - $this.cursor) | 0); + golab4: + while (true) { + v_5 = (($this.limit - $this.cursor) | 0); + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab5; + } + $this.cursor = (($this.limit - v_5) | 0); + break golab4; + } + cursor$0 = $this.cursor = (($this.limit - v_5) | 0); + if (cursor$0 <= $this.limit_backward) { + break lab3; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab6 = true; + lab6: + while (lab6 === true) { + lab6 = false; + v_6 = (($this.limit - $this.cursor) | 0); + lab7 = true; + lab7: + while (lab7 === true) { + lab7 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "a")) { + break lab7; + } + break lab6; + } + $this.cursor = (($this.limit - v_6) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u0131")) { + break lab3; + } + } + cursor$1 = $this.cursor = (($this.limit - v_4) | 0); + c = cursor$1; + c_bra$0 = cursor$1; + adjustment$0 = BaseStemmer$replace_s$LBaseStemmer$IIS($this, cursor$1, cursor$1, "\u0131"); + if (cursor$1 <= $this.bra) { + $this.bra = ($this.bra + adjustment$0) | 0; + } + if (c_bra$0 <= $this.ket) { + $this.ket = ($this.ket + adjustment$0) | 0; + } + $this.cursor = c; + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + lab8 = true; + lab8: + while (lab8 === true) { + lab8 = false; + v_7 = (($this.limit - $this.cursor) | 0); + golab9: + while (true) { + v_8 = (($this.limit - $this.cursor) | 0); + lab10 = true; + lab10: + while (lab10 === true) { + lab10 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab10; + } + $this.cursor = (($this.limit - v_8) | 0); + break golab9; + } + cursor$2 = $this.cursor = (($this.limit - v_8) | 0); + if (cursor$2 <= $this.limit_backward) { + break lab8; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab11 = true; + lab11: + while (lab11 === true) { + lab11 = false; + v_9 = (($this.limit - $this.cursor) | 0); + lab12 = true; + lab12: + while (lab12 === true) { + lab12 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "e")) { + break lab12; + } + break lab11; + } + $this.cursor = (($this.limit - v_9) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "i")) { + break lab8; + } + } + cursor$3 = $this.cursor = (($this.limit - v_7) | 0); + c = cursor$3; + c_bra$1 = cursor$3; + adjustment$1 = BaseStemmer$replace_s$LBaseStemmer$IIS($this, cursor$3, cursor$3, "i"); + if (cursor$3 <= $this.bra) { + $this.bra = ($this.bra + adjustment$1) | 0; + } + if (c_bra$1 <= $this.ket) { + $this.ket = ($this.ket + adjustment$1) | 0; + } + $this.cursor = c; + break lab2; + } + $this.cursor = (($this.limit - v_3) | 0); + lab13 = true; + lab13: + while (lab13 === true) { + lab13 = false; + v_10 = (($this.limit - $this.cursor) | 0); + golab14: + while (true) { + v_11 = (($this.limit - $this.cursor) | 0); + lab15 = true; + lab15: + while (lab15 === true) { + lab15 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab15; + } + $this.cursor = (($this.limit - v_11) | 0); + break golab14; + } + cursor$4 = $this.cursor = (($this.limit - v_11) | 0); + if (cursor$4 <= $this.limit_backward) { + break lab13; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab16 = true; + lab16: + while (lab16 === true) { + lab16 = false; + v_12 = (($this.limit - $this.cursor) | 0); + lab17 = true; + lab17: + while (lab17 === true) { + lab17 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "o")) { + break lab17; + } + break lab16; + } + $this.cursor = (($this.limit - v_12) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "u")) { + break lab13; + } + } + cursor$5 = $this.cursor = (($this.limit - v_10) | 0); + c = cursor$5; + c_bra$2 = cursor$5; + adjustment$2 = BaseStemmer$replace_s$LBaseStemmer$IIS($this, cursor$5, cursor$5, "u"); + if (cursor$5 <= $this.bra) { + $this.bra = ($this.bra + adjustment$2) | 0; + } + if (c_bra$2 <= $this.ket) { + $this.ket = ($this.ket + adjustment$2) | 0; + } + $this.cursor = c; + break lab2; + } + cursor$7 = $this.cursor = (((limit$0 = $this.limit) - v_3) | 0); + v_13 = ((limit$0 - cursor$7) | 0); + golab18: + while (true) { + v_14 = (($this.limit - $this.cursor) | 0); + lab19 = true; + lab19: + while (lab19 === true) { + lab19 = false; + if (! BaseStemmer$in_grouping_b$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab19; + } + $this.cursor = (($this.limit - v_14) | 0); + break golab18; + } + cursor$6 = $this.cursor = (($this.limit - v_14) | 0); + if (cursor$6 <= $this.limit_backward) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t - 1) | 0, $__jsx_postinc_t); + } + lab20 = true; + lab20: + while (lab20 === true) { + lab20 = false; + v_15 = (($this.limit - $this.cursor) | 0); + lab21 = true; + lab21: + while (lab21 === true) { + lab21 = false; + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u00F6")) { + break lab21; + } + break lab20; + } + $this.cursor = (($this.limit - v_15) | 0); + if (! BaseStemmer$eq_s_b$LBaseStemmer$IS($this, 1, "\u00FC")) { + return false; + } + } + cursor$8 = $this.cursor = (($this.limit - v_13) | 0); + c = cursor$8; + c_bra$3 = cursor$8; + adjustment$3 = BaseStemmer$replace_s$LBaseStemmer$IIS($this, cursor$8, cursor$8, "\u00FC"); + if (cursor$8 <= $this.bra) { + $this.bra = ($this.bra + adjustment$3) | 0; + } + if (c_bra$3 <= $this.ket) { + $this.ket = ($this.ket + adjustment$3) | 0; + } + $this.cursor = c; + } + return true; +}; + +TurkishStemmer.r_append_U_to_stems_ending_with_d_or_g$LTurkishStemmer$ = TurkishStemmer$r_append_U_to_stems_ending_with_d_or_g$LTurkishStemmer$; + +TurkishStemmer.prototype.r_more_than_one_syllable_word$ = function () { + var v_1; + var v_3; + var v_2; + var lab1; + var lab3; + var $__jsx_postinc_t; + v_1 = this.cursor; + v_2 = 2; +replab0: + while (true) { + v_3 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII(this, TurkishStemmer.g_vowel, 97, 305)) { + break lab3; + } + break golab2; + } + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + v_2--; + continue replab0; + } + this.cursor = v_3; + break replab0; + } + if (v_2 > 0) { + return false; + } + this.cursor = v_1; + return true; +}; + +TurkishStemmer.prototype.r_more_than_one_syllable_word = TurkishStemmer.prototype.r_more_than_one_syllable_word$; + +function TurkishStemmer$r_more_than_one_syllable_word$LTurkishStemmer$($this) { + var v_1; + var v_3; + var v_2; + var lab1; + var lab3; + var $__jsx_postinc_t; + v_1 = $this.cursor; + v_2 = 2; +replab0: + while (true) { + v_3 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$in_grouping$LBaseStemmer$AIII($this, TurkishStemmer.g_vowel, 97, 305)) { + break lab3; + } + break golab2; + } + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + v_2--; + continue replab0; + } + $this.cursor = v_3; + break replab0; + } + if (v_2 > 0) { + return false; + } + $this.cursor = v_1; + return true; +}; + +TurkishStemmer.r_more_than_one_syllable_word$LTurkishStemmer$ = TurkishStemmer$r_more_than_one_syllable_word$LTurkishStemmer$; + +TurkishStemmer.prototype.r_is_reserved_word$ = function () { + var v_1; + var v_2; + var v_4; + var lab0; + var lab1; + var lab3; + var lab5; + var I_strlen$0; + var cursor$0; + var I_strlen$1; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = this.cursor; + golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 2, "ad")) { + break lab3; + } + break golab2; + } + if (this.cursor >= this.limit) { + break lab1; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + I_strlen$0 = this.I_strlen = 2; + if (! (I_strlen$0 === this.limit)) { + break lab1; + } + this.cursor = v_2; + break lab0; + } + cursor$0 = this.cursor = v_1; + v_4 = cursor$0; + golab4: + while (true) { + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS(this, 5, "soyad")) { + break lab5; + } + break golab4; + } + if (this.cursor >= this.limit) { + return false; + } + ($__jsx_postinc_t = this.cursor, this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + I_strlen$1 = this.I_strlen = 5; + if (! (I_strlen$1 === this.limit)) { + return false; + } + this.cursor = v_4; + } + return true; +}; + +TurkishStemmer.prototype.r_is_reserved_word = TurkishStemmer.prototype.r_is_reserved_word$; + +function TurkishStemmer$r_is_reserved_word$LTurkishStemmer$($this) { + var v_1; + var v_2; + var v_4; + var lab0; + var lab1; + var lab3; + var lab5; + var I_strlen$0; + var cursor$0; + var I_strlen$1; + var $__jsx_postinc_t; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + v_1 = $this.cursor; + lab1 = true; + lab1: + while (lab1 === true) { + lab1 = false; + v_2 = $this.cursor; + golab2: + while (true) { + lab3 = true; + lab3: + while (lab3 === true) { + lab3 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 2, "ad")) { + break lab3; + } + break golab2; + } + if ($this.cursor >= $this.limit) { + break lab1; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + I_strlen$0 = $this.I_strlen = 2; + if (! (I_strlen$0 === $this.limit)) { + break lab1; + } + $this.cursor = v_2; + break lab0; + } + cursor$0 = $this.cursor = v_1; + v_4 = cursor$0; + golab4: + while (true) { + lab5 = true; + lab5: + while (lab5 === true) { + lab5 = false; + if (! BaseStemmer$eq_s$LBaseStemmer$IS($this, 5, "soyad")) { + break lab5; + } + break golab4; + } + if ($this.cursor >= $this.limit) { + return false; + } + ($__jsx_postinc_t = $this.cursor, $this.cursor = ($__jsx_postinc_t + 1) | 0, $__jsx_postinc_t); + } + I_strlen$1 = $this.I_strlen = 5; + if (! (I_strlen$1 === $this.limit)) { + return false; + } + $this.cursor = v_4; + } + return true; +}; + +TurkishStemmer.r_is_reserved_word$LTurkishStemmer$ = TurkishStemmer$r_is_reserved_word$LTurkishStemmer$; + +TurkishStemmer.prototype.r_postlude$ = function () { + var v_1; + var v_2; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + v_1 = this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! TurkishStemmer$r_is_reserved_word$LTurkishStemmer$(this)) { + break lab0; + } + return false; + } + cursor$0 = this.cursor = v_1; + this.limit_backward = cursor$0; + cursor$1 = this.cursor = limit$0 = this.limit; + v_2 = ((limit$0 - cursor$1) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! TurkishStemmer$r_append_U_to_stems_ending_with_d_or_g$LTurkishStemmer$(this)) { + break lab1; + } + } + this.cursor = ((this.limit - v_2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! TurkishStemmer$r_post_process_last_consonants$LTurkishStemmer$(this)) { + break lab2; + } + } + this.cursor = this.limit_backward; + return true; +}; + +TurkishStemmer.prototype.r_postlude = TurkishStemmer.prototype.r_postlude$; + +function TurkishStemmer$r_postlude$LTurkishStemmer$($this) { + var v_1; + var v_2; + var lab0; + var lab1; + var lab2; + var cursor$0; + var limit$0; + var cursor$1; + v_1 = $this.cursor; + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! TurkishStemmer$r_is_reserved_word$LTurkishStemmer$($this)) { + break lab0; + } + return false; + } + cursor$0 = $this.cursor = v_1; + $this.limit_backward = cursor$0; + cursor$1 = $this.cursor = limit$0 = $this.limit; + v_2 = ((limit$0 - cursor$1) | 0); + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! TurkishStemmer$r_append_U_to_stems_ending_with_d_or_g$LTurkishStemmer$($this)) { + break lab1; + } + } + $this.cursor = (($this.limit - v_2) | 0); + lab2 = true; +lab2: + while (lab2 === true) { + lab2 = false; + if (! TurkishStemmer$r_post_process_last_consonants$LTurkishStemmer$($this)) { + break lab2; + } + } + $this.cursor = $this.limit_backward; + return true; +}; + +TurkishStemmer.r_postlude$LTurkishStemmer$ = TurkishStemmer$r_postlude$LTurkishStemmer$; + +TurkishStemmer.prototype.stem$ = function () { + var v_1; + var lab0; + var lab1; + var limit$0; + var cursor$0; + if (! TurkishStemmer$r_more_than_one_syllable_word$LTurkishStemmer$(this)) { + return false; + } + this.limit_backward = this.cursor; + cursor$0 = this.cursor = limit$0 = this.limit; + v_1 = ((limit$0 - cursor$0) | 0); + lab0 = true; +lab0: + while (lab0 === true) { + lab0 = false; + if (! TurkishStemmer$r_stem_nominal_verb_suffixes$LTurkishStemmer$(this)) { + break lab0; + } + } + this.cursor = ((this.limit - v_1) | 0); + if (! this.B_continue_stemming_noun_suffixes) { + return false; + } + lab1 = true; +lab1: + while (lab1 === true) { + lab1 = false; + if (! TurkishStemmer$r_stem_noun_suffixes$LTurkishStemmer$(this)) { + break lab1; + } + } + this.cursor = this.limit_backward; + return (! TurkishStemmer$r_postlude$LTurkishStemmer$(this) ? false : true); +}; + +TurkishStemmer.prototype.stem = TurkishStemmer.prototype.stem$; + +TurkishStemmer.prototype.equals$X = function (o) { + return o instanceof TurkishStemmer; +}; + +TurkishStemmer.prototype.equals = TurkishStemmer.prototype.equals$X; + +function TurkishStemmer$equals$LTurkishStemmer$X($this, o) { + return o instanceof TurkishStemmer; +}; + +TurkishStemmer.equals$LTurkishStemmer$X = TurkishStemmer$equals$LTurkishStemmer$X; + +TurkishStemmer.prototype.hashCode$ = function () { + var classname; + var hash; + var i; + var char; + classname = "TurkishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +TurkishStemmer.prototype.hashCode = TurkishStemmer.prototype.hashCode$; + +function TurkishStemmer$hashCode$LTurkishStemmer$($this) { + var classname; + var hash; + var i; + var char; + classname = "TurkishStemmer"; + hash = 0; + for (i = 0; i < classname.length; i++) { + char = classname.charCodeAt(i); + hash = (hash << 5) - hash + char; + hash = hash & hash; + } + return (hash | 0); +}; + +TurkishStemmer.hashCode$LTurkishStemmer$ = TurkishStemmer$hashCode$LTurkishStemmer$; + +TurkishStemmer.serialVersionUID = 1; +$__jsx_lazy_init(TurkishStemmer, "methodObject", function () { + return new TurkishStemmer(); +}); +$__jsx_lazy_init(TurkishStemmer, "a_0", function () { + return [ new Among("m", -1, -1), new Among("n", -1, -1), new Among("miz", -1, -1), new Among("niz", -1, -1), new Among("muz", -1, -1), new Among("nuz", -1, -1), new Among("m\u00FCz", -1, -1), new Among("n\u00FCz", -1, -1), new Among("m\u0131z", -1, -1), new Among("n\u0131z", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_1", function () { + return [ new Among("leri", -1, -1), new Among("lar\u0131", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_2", function () { + return [ new Among("ni", -1, -1), new Among("nu", -1, -1), new Among("n\u00FC", -1, -1), new Among("n\u0131", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_3", function () { + return [ new Among("in", -1, -1), new Among("un", -1, -1), new Among("\u00FCn", -1, -1), new Among("\u0131n", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_4", function () { + return [ new Among("a", -1, -1), new Among("e", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_5", function () { + return [ new Among("na", -1, -1), new Among("ne", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_6", function () { + return [ new Among("da", -1, -1), new Among("ta", -1, -1), new Among("de", -1, -1), new Among("te", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_7", function () { + return [ new Among("nda", -1, -1), new Among("nde", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_8", function () { + return [ new Among("dan", -1, -1), new Among("tan", -1, -1), new Among("den", -1, -1), new Among("ten", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_9", function () { + return [ new Among("ndan", -1, -1), new Among("nden", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_10", function () { + return [ new Among("la", -1, -1), new Among("le", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_11", function () { + return [ new Among("ca", -1, -1), new Among("ce", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_12", function () { + return [ new Among("im", -1, -1), new Among("um", -1, -1), new Among("\u00FCm", -1, -1), new Among("\u0131m", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_13", function () { + return [ new Among("sin", -1, -1), new Among("sun", -1, -1), new Among("s\u00FCn", -1, -1), new Among("s\u0131n", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_14", function () { + return [ new Among("iz", -1, -1), new Among("uz", -1, -1), new Among("\u00FCz", -1, -1), new Among("\u0131z", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_15", function () { + return [ new Among("siniz", -1, -1), new Among("sunuz", -1, -1), new Among("s\u00FCn\u00FCz", -1, -1), new Among("s\u0131n\u0131z", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_16", function () { + return [ new Among("lar", -1, -1), new Among("ler", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_17", function () { + return [ new Among("niz", -1, -1), new Among("nuz", -1, -1), new Among("n\u00FCz", -1, -1), new Among("n\u0131z", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_18", function () { + return [ new Among("dir", -1, -1), new Among("tir", -1, -1), new Among("dur", -1, -1), new Among("tur", -1, -1), new Among("d\u00FCr", -1, -1), new Among("t\u00FCr", -1, -1), new Among("d\u0131r", -1, -1), new Among("t\u0131r", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_19", function () { + return [ new Among("cas\u0131na", -1, -1), new Among("cesine", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_20", function () { + return [ new Among("di", -1, -1), new Among("ti", -1, -1), new Among("dik", -1, -1), new Among("tik", -1, -1), new Among("duk", -1, -1), new Among("tuk", -1, -1), new Among("d\u00FCk", -1, -1), new Among("t\u00FCk", -1, -1), new Among("d\u0131k", -1, -1), new Among("t\u0131k", -1, -1), new Among("dim", -1, -1), new Among("tim", -1, -1), new Among("dum", -1, -1), new Among("tum", -1, -1), new Among("d\u00FCm", -1, -1), new Among("t\u00FCm", -1, -1), new Among("d\u0131m", -1, -1), new Among("t\u0131m", -1, -1), new Among("din", -1, -1), new Among("tin", -1, -1), new Among("dun", -1, -1), new Among("tun", -1, -1), new Among("d\u00FCn", -1, -1), new Among("t\u00FCn", -1, -1), new Among("d\u0131n", -1, -1), new Among("t\u0131n", -1, -1), new Among("du", -1, -1), new Among("tu", -1, -1), new Among("d\u00FC", -1, -1), new Among("t\u00FC", -1, -1), new Among("d\u0131", -1, -1), new Among("t\u0131", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_21", function () { + return [ new Among("sa", -1, -1), new Among("se", -1, -1), new Among("sak", -1, -1), new Among("sek", -1, -1), new Among("sam", -1, -1), new Among("sem", -1, -1), new Among("san", -1, -1), new Among("sen", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_22", function () { + return [ new Among("mi\u015F", -1, -1), new Among("mu\u015F", -1, -1), new Among("m\u00FC\u015F", -1, -1), new Among("m\u0131\u015F", -1, -1) ]; +}); +$__jsx_lazy_init(TurkishStemmer, "a_23", function () { + return [ new Among("b", -1, 1), new Among("c", -1, 2), new Among("d", -1, 3), new Among("\u011F", -1, 4) ]; +}); +TurkishStemmer.g_vowel = [ 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 ]; +TurkishStemmer.g_U = [ 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 ]; +TurkishStemmer.g_vowel1 = [ 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 ]; +TurkishStemmer.g_vowel2 = [ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 130 ]; +TurkishStemmer.g_vowel3 = [ 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 ]; +TurkishStemmer.g_vowel4 = [ 17 ]; +TurkishStemmer.g_vowel5 = [ 65 ]; +TurkishStemmer.g_vowel6 = [ 65 ]; + +var $__jsx_classMap = { + "src/among.jsx": { + Among: Among, + Among$SII: Among, + Among$SIIF$LBaseStemmer$B$LBaseStemmer$: Among$0 + }, + "src/stemmer.jsx": { + Stemmer: Stemmer, + Stemmer$: Stemmer + }, + "src/base-stemmer.jsx": { + BaseStemmer: BaseStemmer, + BaseStemmer$: BaseStemmer + }, + "src/turkish-stemmer.jsx": { + TurkishStemmer: TurkishStemmer, + TurkishStemmer$: TurkishStemmer + } +}; + + +})(JSX); + +var Among = JSX.require("src/among.jsx").Among; +var Among$SII = JSX.require("src/among.jsx").Among$SII; +var Stemmer = JSX.require("src/stemmer.jsx").Stemmer; +var BaseStemmer = JSX.require("src/base-stemmer.jsx").BaseStemmer; +var TurkishStemmer = JSX.require("src/turkish-stemmer.jsx").TurkishStemmer; diff --git a/sphinx/search/pt.py b/sphinx/search/pt.py index cb93f26d7..ba9f2529b 100644 --- a/sphinx/search/pt.py +++ b/sphinx/search/pt.py @@ -262,6 +262,7 @@ var Stemmer = JSX.require("src/portuguese-stemmer.jsx").PortugueseStemmer; class SearchPortuguese(SearchLanguage): lang = 'pt' language_name = 'Portuguese' + js_stemmer_rawcode = 'portuguese-stemmer.js' js_stemmer_code = js_stemmer stopwords = portuguese_stopwords diff --git a/sphinx/search/ro.py b/sphinx/search/ro.py index c4336f8b4..78ae01851 100644 --- a/sphinx/search/ro.py +++ b/sphinx/search/ro.py @@ -22,6 +22,7 @@ var Stemmer = JSX.require("src/romanian-stemmer.jsx").RomanianStemmer; class SearchRomanian(SearchLanguage): lang = 'ro' language_name = 'Romanian' + js_stemmer_rawcode = 'romanian-stemmer.js' js_stemmer_code = js_stemmer stopwords = [] diff --git a/sphinx/search/ru.py b/sphinx/search/ru.py index af019ea2f..8eb6c3dbb 100644 --- a/sphinx/search/ru.py +++ b/sphinx/search/ru.py @@ -251,6 +251,7 @@ var Stemmer = JSX.require("src/russian-stemmer.jsx").RussianStemmer; class SearchRussian(SearchLanguage): lang = 'ru' language_name = 'Russian' + js_stemmer_rawcode = 'russian-stemmer.js' js_stemmer_code = js_stemmer stopwords = russian_stopwords diff --git a/sphinx/search/sv.py b/sphinx/search/sv.py index eb4ab2ee1..64883381e 100644 --- a/sphinx/search/sv.py +++ b/sphinx/search/sv.py @@ -140,6 +140,7 @@ var Stemmer = JSX.require("src/swedish-stemmer.jsx").SwedishStemmer; class SearchSwedish(SearchLanguage): lang = 'sv' language_name = 'Swedish' + js_stemmer_rawcode = 'swedish-stemmer.js' js_stemmer_code = js_stemmer stopwords = swedish_stopwords diff --git a/sphinx/search/tr.py b/sphinx/search/tr.py index 52c5bb2a9..33c5c5192 100644 --- a/sphinx/search/tr.py +++ b/sphinx/search/tr.py @@ -22,6 +22,7 @@ var Stemmer = JSX.require("src/turkish-stemmer.jsx").TurkishStemmer; class SearchTurkish(SearchLanguage): lang = 'tr' language_name = 'Turkish' + js_stemmer_rawcode = 'turkish-stemmer.js' js_stemmer_code = js_stemmer stopwords = [] diff --git a/sphinx/themes/basic/static/searchtools.js_t b/sphinx/themes/basic/static/searchtools.js_t index 38515a99e..1ab708ea0 100644 --- a/sphinx/themes/basic/static/searchtools.js_t +++ b/sphinx/themes/basic/static/searchtools.js_t @@ -2,13 +2,15 @@ * searchtools.js_t * ~~~~~~~~~~~~~~~~ * - * Sphinx JavaScript utilties for the full-text search. + * Sphinx JavaScript utilities for the full-text search. * * :copyright: Copyright 2007-2015 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ +{% if search_language_stemming_code %} +/* Non-minified version JS is _stemmer.js if file is provided */ {% endif -%} {{ search_language_stemming_code|safe }} {% if search_scorer_tool %} @@ -414,7 +416,7 @@ var Search = { * helper function to return a node containing the * search summary for a given text. keywords is a list * of stemmed words, hlwords is the list of normal, unstemmed - * words. the first one is used to find the occurance, the + * words. the first one is used to find the occurrence, the * latter for highlighting it. */ makeSearchSummary : function(text, keywords, hlwords) { diff --git a/sphinx/themes/basic/static/websupport.js b/sphinx/themes/basic/static/websupport.js index 28d65db4a..ef3a5714c 100644 --- a/sphinx/themes/basic/static/websupport.js +++ b/sphinx/themes/basic/static/websupport.js @@ -2,7 +2,7 @@ * websupport.js * ~~~~~~~~~~~~~ * - * sphinx.websupport utilties for all documentation. + * sphinx.websupport utilities for all documentation. * * :copyright: Copyright 2007-2015 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. diff --git a/sphinx/themes/default/static/default.css b/sphinx/themes/default/static/default.css new file mode 100644 index 000000000..81b936363 --- /dev/null +++ b/sphinx/themes/default/static/default.css @@ -0,0 +1 @@ +@import url("classic.css"); diff --git a/sphinx/themes/pyramid/layout.html b/sphinx/themes/pyramid/layout.html index 318a3662a..2f891158d 100644 --- a/sphinx/themes/pyramid/layout.html +++ b/sphinx/themes/pyramid/layout.html @@ -1,8 +1,8 @@ {%- extends "basic/layout.html" %} {%- block extrahead %} - - + + diff --git a/sphinx/theming.py b/sphinx/theming.py index 6c2d3ad9d..49bd707d0 100644 --- a/sphinx/theming.py +++ b/sphinx/theming.py @@ -71,28 +71,28 @@ class Theme(object): @classmethod def load_extra_theme(cls, name): - if name == 'alabaster': - cls.themes[name] = (os.path.join(alabaster.get_path(), name), None) - # alabaster theme also requires 'alabaster' extension, it will be loaded at - # sphinx.******* module. - return + if name in ('alabaster', 'sphinx_rtd_theme'): + if name == 'alabaster': + themedir = alabaster.get_path() + # alabaster theme also requires 'alabaster' extension, it will be loaded + # at sphinx.application module. + elif name == 'sphinx_rtd_theme': + themedir = sphinx_rtd_theme.get_html_theme_path() + else: + raise NotImplementedError('Programming Error') - if name == 'sphinx_rtd_theme': - cls.themes[name] = ( - os.path.join(sphinx_rtd_theme.get_html_theme_path(), name), None) - return - - for themedir in load_theme_plugins(): - if not path.isdir(themedir): - continue - for theme in os.listdir(themedir): - if theme != name: - continue - if not path.isfile(path.join(themedir, theme, THEMECONF)): - continue - cls.themes[theme] = (path.join(themedir, theme), None) + else: + for themedir in load_theme_plugins(): + if path.isfile(path.join(themedir, name, THEMECONF)): + break + else: + # specified theme is not found return + cls.themepath.append(themedir) + cls.themes[name] = (path.join(themedir, name), None) + return + def __init__(self, name, warn=None): if name not in self.themes: self.load_extra_theme(name) @@ -101,11 +101,13 @@ class Theme(object): '(missing theme.conf?)' % name) self.name = name - if name == 'default' and warn: - warn("'default' html theme has been renamed to 'classic'. " - "Please change your html_theme setting either to " - "the new 'alabaster' default theme, or to 'classic' " - "to keep using the old default.") + # Do not warn yet -- to be compatible with old Sphinxes, people *have* + # to use "default". + # if name == 'default' and warn: + # warn("'default' html theme has been renamed to 'classic'. " + # "Please change your html_theme setting either to " + # "the new 'alabaster' default theme, or to 'classic' " + # "to keep using the old default.") tdir, tinfo = self.themes[name] if tinfo is None: @@ -133,6 +135,11 @@ class Theme(object): inherit = self.themeconf.get('theme', 'inherit') except configparser.NoOptionError: raise ThemeError('theme %r doesn\'t have "inherit" setting' % name) + + if inherit in ['alabaster', 'sphinx_rtd_theme']: + # include 'alabaster' or 'sphinx_themes' automatically #1794 + self.load_extra_theme(inherit) + if inherit == 'none': self.base = None elif inherit not in self.themes: @@ -211,7 +218,7 @@ def load_theme_plugins(): func_or_path = plugin.load() try: path = func_or_path() - except: + except Exception: path = func_or_path if isinstance(path, string_types): diff --git a/sphinx/util/console.py b/sphinx/util/console.py index ee6e4ea91..acba52a9f 100644 --- a/sphinx/util/console.py +++ b/sphinx/util/console.py @@ -33,9 +33,7 @@ def get_terminal_width(): struct.pack('hhhh', 0, 0, 0, 0)) height, width = struct.unpack('hhhh', call)[:2] terminal_width = width - except (SystemExit, KeyboardInterrupt): - raise - except: + except Exception: # FALLBACK terminal_width = int(os.environ.get('COLUMNS', 80)) - 1 return terminal_width diff --git a/sphinx/websupport/search/__init__.py b/sphinx/websupport/search/__init__.py index bae6fa73c..3aafbda55 100644 --- a/sphinx/websupport/search/__init__.py +++ b/sphinx/websupport/search/__init__.py @@ -119,6 +119,10 @@ class BaseSearch(object): """Required by the HTML builder.""" return {} + def get_js_stemmer_rawcode(self): + """Required by the HTML builder.""" + return None + # The built-in search adapters. SEARCH_ADAPTERS = { diff --git a/sphinx/writers/html.py b/sphinx/writers/html.py index 26bc6057b..13480d4fc 100644 --- a/sphinx/writers/html.py +++ b/sphinx/writers/html.py @@ -349,8 +349,9 @@ class HTMLTranslator(BaseTranslator): if isinstance(node.parent, nodes.container) and node.parent.get('literal_block'): self.add_permalink_ref(node.parent, _('Permalink to this code')) elif isinstance(node.parent, nodes.figure): - self.add_permalink_ref( - node.parent.traverse(nodes.image)[0], _('Permalink to this image')) + image_nodes = node.parent.traverse(nodes.image) + target_node = image_nodes and image_nodes[0] or node.parent + self.add_permalink_ref(target_node, _('Permalink to this image')) elif node.parent.get('toctree'): self.add_permalink_ref(node.parent.parent, _('Permalink to this toctree')) diff --git a/tests/test_ext_napoleon_docstring.py b/tests/test_ext_napoleon_docstring.py index bfd067ade..0e98a8fdc 100644 --- a/tests/test_ext_napoleon_docstring.py +++ b/tests/test_ext_napoleon_docstring.py @@ -31,6 +31,9 @@ class NamedtupleSubclass(namedtuple('NamedtupleSubclass', ('attr1', 'attr2'))): Quick description of attr1 attr2 : Another arbitrary type Quick description of attr2 + attr3 : Type + + Adds a newline after the type """ # To avoid creating a dict, as a namedtuple doesn't have it: @@ -50,21 +53,21 @@ class NamedtupleSubclassTest(BaseDocstringTest): actual = str(NumpyDocstring(cleandoc(NamedtupleSubclass.__doc__), config=config, app=None, what='class', name='NamedtupleSubclass', obj=NamedtupleSubclass)) - expected = dedent("""\ - Sample namedtuple subclass + expected = """\ +Sample namedtuple subclass - .. attribute:: attr1 +.. attribute:: attr1 - *Arbitrary type* + *Arbitrary type* -- Quick description of attr1 - Quick description of attr1 +.. attribute:: attr2 - .. attribute:: attr2 + *Another arbitrary type* -- Quick description of attr2 - *Another arbitrary type* +.. attribute:: attr3 - Quick description of attr2 - """) + *Type* -- Adds a newline after the type +""" self.assertEqual(expected, actual) @@ -96,9 +99,9 @@ class GoogleDocstringTest(BaseDocstringTest): """ Single line summary - :Parameters: **arg1** (*str*) -- - Extended - description of arg1""" + :Parameters: **arg1** (*str*) -- Extended + description of arg1 + """ ), ( """ Single line summary @@ -117,19 +120,16 @@ class GoogleDocstringTest(BaseDocstringTest): """ Single line summary - :Parameters: * **arg1** (*str*) -- - Extended + :Parameters: * **arg1** (*str*) -- Extended description of arg1 - * **arg2** (*int*) -- - Extended + * **arg2** (*int*) -- Extended description of arg2 - :Keyword Arguments: * **kwarg1** (*str*) -- - Extended + :Keyword Arguments: * **kwarg1** (*str*) -- Extended description of kwarg1 - * **kwarg2** (*int*) -- - Extended - description of kwarg2""" + * **kwarg2** (*int*) -- Extended + description of kwarg2 + """ ), ( """ Single line summary @@ -148,19 +148,16 @@ class GoogleDocstringTest(BaseDocstringTest): """ Single line summary - :Parameters: * **arg1** (*str*) -- - Extended + :Parameters: * **arg1** (*str*) -- Extended description of arg1 - * **arg2** (*int*) -- - Extended + * **arg2** (*int*) -- Extended description of arg2 - :Keyword Arguments: * **kwarg1** (*str*) -- - Extended + :Keyword Arguments: * **kwarg1** (*str*) -- Extended description of kwarg1 - * **kwarg2** (*int*) -- - Extended - description of kwarg2""" + * **kwarg2** (*int*) -- Extended + description of kwarg2 + """ ), ( """ Single line summary @@ -172,9 +169,9 @@ class GoogleDocstringTest(BaseDocstringTest): """ Single line summary - :returns: *str* -- - Extended - description of return value""" + :returns: *str* -- Extended + description of return value + """ ), ( """ Single line summary @@ -186,9 +183,9 @@ class GoogleDocstringTest(BaseDocstringTest): """ Single line summary - :returns: *str* -- - Extended - description of return value""" + :returns: *str* -- Extended + description of return value + """ ), ( """ Single line summary @@ -201,7 +198,8 @@ class GoogleDocstringTest(BaseDocstringTest): Single line summary :returns: Extended - description of return value""" + description of return value + """ ), ( """ Single line summary @@ -215,13 +213,11 @@ class GoogleDocstringTest(BaseDocstringTest): """ Single line summary - :Parameters: * **arg1** (*str*) -- - Extended + :Parameters: * **arg1** (*str*) -- Extended description of arg1 - * **\\*args** -- - Variable length argument list. - * **\\*\\*kwargs** -- - Arbitrary keyword arguments.""" + * **\\*args** -- Variable length argument list. + * **\\*\\*kwargs** -- Arbitrary keyword arguments. + """ ), ( """ Single line summary @@ -233,9 +229,9 @@ class GoogleDocstringTest(BaseDocstringTest): """ Single line summary - :Yields: *str* -- - Extended - description of yielded value""" + :Yields: *str* -- Extended + description of yielded value + """ ), ( """ Single line summary @@ -248,7 +244,8 @@ class GoogleDocstringTest(BaseDocstringTest): Single line summary :Yields: Extended - description of yielded value""" + description of yielded value + """ )] def test_docstrings(self): @@ -305,9 +302,7 @@ Attributes: expected = """\ .. attribute:: in_attr - :class:`numpy.ndarray` - - super-dooper attribute + :class:`numpy.ndarray` -- super-dooper attribute """ self.assertEqual(expected, actual) @@ -320,9 +315,7 @@ Attributes: expected = """\ .. attribute:: in_attr - *numpy.ndarray* - - super-dooper attribute + *numpy.ndarray* -- super-dooper attribute """ self.assertEqual(expected, actual) @@ -360,6 +353,183 @@ Returns: actual = str(GoogleDocstring(docstring)) self.assertEqual(expected, actual) + def test_xrefs_in_return_type(self): + docstring = """Example Function + +Returns: + :class:`numpy.ndarray`: A :math:`n \\times 2` array containing + a bunch of math items +""" + expected = """Example Function + +:returns: A :math:`n \\times 2` array containing + a bunch of math items +:rtype: :class:`numpy.ndarray` +""" + actual = str(GoogleDocstring(docstring)) + self.assertEqual(expected, actual) + + def test_raises_types(self): + docstrings = [(""" +Example Function + +Raises: + RuntimeError: + A setting wasn't specified, or was invalid. + ValueError: + Something something value error. + +""", """ +Example Function + +:raises: * :exc:`RuntimeError` -- A setting wasn't specified, or was invalid. + * :exc:`ValueError` -- Something something value error. +"""), + ################################ + (""" +Example Function + +Raises: + InvalidDimensionsError + +""", """ +Example Function + +:raises: :exc:`InvalidDimensionsError` +"""), + ################################ + (""" +Example Function + +Raises: + Invalid Dimensions Error + +""", """ +Example Function + +:raises: Invalid Dimensions Error +"""), + ################################ + (""" +Example Function + +Raises: + Invalid Dimensions Error: With description + +""", """ +Example Function + +:raises: *Invalid Dimensions Error* -- With description +"""), + ################################ + (""" +Example Function + +Raises: + InvalidDimensionsError: If the dimensions couldn't be parsed. + +""", """ +Example Function + +:raises: :exc:`InvalidDimensionsError` -- If the dimensions couldn't be parsed. +"""), + ################################ + (""" +Example Function + +Raises: + Invalid Dimensions Error: If the dimensions couldn't be parsed. + +""", """ +Example Function + +:raises: *Invalid Dimensions Error* -- If the dimensions couldn't be parsed. +"""), + ################################ + (""" +Example Function + +Raises: + If the dimensions couldn't be parsed. + +""", """ +Example Function + +:raises: If the dimensions couldn't be parsed. +"""), + ################################ + (""" +Example Function + +Raises: + :class:`exc.InvalidDimensionsError` + +""", """ +Example Function + +:raises: :class:`exc.InvalidDimensionsError` +"""), + ################################ + (""" +Example Function + +Raises: + :class:`exc.InvalidDimensionsError`: If the dimensions couldn't be parsed. + +""", """ +Example Function + +:raises: :class:`exc.InvalidDimensionsError` -- If the dimensions couldn't """ + """be parsed. +"""), + ################################ + (""" +Example Function + +Raises: + :class:`exc.InvalidDimensionsError`: If the dimensions couldn't be parsed, + then a :class:`exc.InvalidDimensionsError` will be raised. + +""", """ +Example Function + +:raises: :class:`exc.InvalidDimensionsError` -- If the dimensions couldn't """ + """be parsed, + then a :class:`exc.InvalidDimensionsError` will be raised. +"""), + ################################ + (""" +Example Function + +Raises: + :class:`exc.InvalidDimensionsError`: If the dimensions couldn't be parsed. + :class:`exc.InvalidArgumentsError`: If the arguments are invalid. + +""", """ +Example Function + +:raises: * :class:`exc.InvalidDimensionsError` -- If the dimensions """ + """couldn't be parsed. + * :class:`exc.InvalidArgumentsError` -- If the arguments are invalid. +"""), + ################################ + (""" +Example Function + +Raises: + :class:`exc.InvalidDimensionsError` + :class:`exc.InvalidArgumentsError` + +""", """ +Example Function + +:raises: * :class:`exc.InvalidDimensionsError` + * :class:`exc.InvalidArgumentsError` +""")] + for docstring, expected in docstrings: + actual = str(GoogleDocstring(docstring)) + self.assertEqual(expected, actual) + def test_kwargs_in_arguments(self): docstring = """Allows to create attributes binded to this device. @@ -421,9 +591,9 @@ class NumpyDocstringTest(BaseDocstringTest): """ Single line summary - :Parameters: **arg1** (*str*) -- - Extended - description of arg1""" + :Parameters: **arg1** (*str*) -- Extended + description of arg1 + """ ), ( """ Single line summary @@ -449,19 +619,16 @@ class NumpyDocstringTest(BaseDocstringTest): """ Single line summary - :Parameters: * **arg1** (*str*) -- - Extended + :Parameters: * **arg1** (*str*) -- Extended description of arg1 - * **arg2** (*int*) -- - Extended + * **arg2** (*int*) -- Extended description of arg2 - :Keyword Arguments: * **kwarg1** (*str*) -- - Extended + :Keyword Arguments: * **kwarg1** (*str*) -- Extended description of kwarg1 - * **kwarg2** (*int*) -- - Extended - description of kwarg2""" + * **kwarg2** (*int*) -- Extended + description of kwarg2 + """ ), ( """ Single line summary @@ -475,9 +642,9 @@ class NumpyDocstringTest(BaseDocstringTest): """ Single line summary - :returns: *str* -- - Extended - description of return value""" + :returns: *str* -- Extended + description of return value + """ ), ( """ Single line summary @@ -491,9 +658,9 @@ class NumpyDocstringTest(BaseDocstringTest): """ Single line summary - :returns: *str* -- - Extended - description of return value""" + :returns: *str* -- Extended + description of return value + """ ), ( """ Single line summary @@ -510,12 +677,10 @@ class NumpyDocstringTest(BaseDocstringTest): """ Single line summary - :Parameters: * **arg1** (*str*) -- - Extended description of arg1 - * ***args** -- - Variable length argument list. - * ****kwargs** -- - Arbitrary keyword arguments.""" + :Parameters: * **arg1** (*str*) -- Extended description of arg1 + * ***args** -- Variable length argument list. + * ****kwargs** -- Arbitrary keyword arguments. + """ ), ( """ Single line summary @@ -529,9 +694,9 @@ class NumpyDocstringTest(BaseDocstringTest): """ Single line summary - :Yields: *str* -- - Extended - description of yielded value""" + :Yields: *str* -- Extended + description of yielded value + """ ), ( """ Single line summary @@ -545,10 +710,10 @@ class NumpyDocstringTest(BaseDocstringTest): """ Single line summary - :Yields: *str* -- - Extended - description of yielded value""" - )] + :Yields: *str* -- Extended + description of yielded value + """ + )] def test_docstrings(self): config = Config(napoleon_use_param=False, napoleon_use_rtype=False) @@ -696,3 +861,210 @@ arg_ : type actual = str(NumpyDocstring(docstring, config, app, "class")) self.assertEqual(expected, actual) + + def test_raises_types(self): + docstrings = [(""" +Example Function + +Raises +------ + RuntimeError + + A setting wasn't specified, or was invalid. + ValueError + + Something something value error. + +""", """ +Example Function + +:raises: * :exc:`RuntimeError` -- A setting wasn't specified, or was invalid. + * :exc:`ValueError` -- Something something value error. +"""), + ################################ + (""" +Example Function + +Raises +------ +InvalidDimensionsError + +""", """ +Example Function + +:raises: :exc:`InvalidDimensionsError` +"""), + ################################ + (""" +Example Function + +Raises +------ +Invalid Dimensions Error + +""", """ +Example Function + +:raises: Invalid Dimensions Error +"""), + ################################ + (""" +Example Function + +Raises +------ +Invalid Dimensions Error + With description + +""", """ +Example Function + +:raises: *Invalid Dimensions Error* -- With description +"""), + ################################ + (""" +Example Function + +Raises +------ +InvalidDimensionsError + If the dimensions couldn't be parsed. + +""", """ +Example Function + +:raises: :exc:`InvalidDimensionsError` -- If the dimensions couldn't be parsed. +"""), + ################################ + (""" +Example Function + +Raises +------ +Invalid Dimensions Error + If the dimensions couldn't be parsed. + +""", """ +Example Function + +:raises: *Invalid Dimensions Error* -- If the dimensions couldn't be parsed. +"""), + ################################ + (""" +Example Function + +Raises +------ +If the dimensions couldn't be parsed. + +""", """ +Example Function + +:raises: If the dimensions couldn't be parsed. +"""), + ################################ + (""" +Example Function + +Raises +------ +:class:`exc.InvalidDimensionsError` + +""", """ +Example Function + +:raises: :class:`exc.InvalidDimensionsError` +"""), + ################################ + (""" +Example Function + +Raises +------ +:class:`exc.InvalidDimensionsError` + If the dimensions couldn't be parsed. + +""", """ +Example Function + +:raises: :class:`exc.InvalidDimensionsError` -- If the dimensions couldn't """ + """be parsed. +"""), + ################################ + (""" +Example Function + +Raises +------ +:class:`exc.InvalidDimensionsError` + If the dimensions couldn't be parsed, + then a :class:`exc.InvalidDimensionsError` will be raised. + +""", """ +Example Function + +:raises: :class:`exc.InvalidDimensionsError` -- If the dimensions couldn't """ + """be parsed, + then a :class:`exc.InvalidDimensionsError` will be raised. +"""), + ################################ + (""" +Example Function + +Raises +------ +:class:`exc.InvalidDimensionsError` + If the dimensions couldn't be parsed. +:class:`exc.InvalidArgumentsError` + If the arguments are invalid. + +""", """ +Example Function + +:raises: * :class:`exc.InvalidDimensionsError` -- If the dimensions """ + """couldn't be parsed. + * :class:`exc.InvalidArgumentsError` -- If the arguments """ + """are invalid. +"""), + ################################ + (""" +Example Function + +Raises +------ +:class:`exc.InvalidDimensionsError` +:class:`exc.InvalidArgumentsError` + +""", """ +Example Function + +:raises: * :class:`exc.InvalidDimensionsError` + * :class:`exc.InvalidArgumentsError` +""")] + for docstring, expected in docstrings: + config = Config() + app = mock.Mock() + actual = str(NumpyDocstring(docstring, config, app, "method")) + self.assertEqual(expected, actual) + + def test_xrefs_in_return_type(self): + docstring = """ +Example Function + +Returns +------- +:class:`numpy.ndarray` + A :math:`n \\times 2` array containing + a bunch of math items +""" + expected = """ +Example Function + +:returns: A :math:`n \\times 2` array containing + a bunch of math items +:rtype: :class:`numpy.ndarray` +""" + config = Config() + app = mock.Mock() + actual = str(NumpyDocstring(docstring, config, app, "method")) + self.assertEqual(expected, actual)