All this code is very similar to (and probably copy-pasted from) the [LCResourcesHandler](https://github.com/ariatemplates/ariatemplates/blob/master/src/aria/resources/handlers/LCResourcesHandler.js#L147)

Instead of copy-pasting, please consider **sharing code** when it makes sense.

An `LCRangeResourcesHandler` instance is basically doing the same job as an `LCResourcesHandler` instance except that it is also able to support ranges. So, in the code of the `LCRangeResourcesHandler`, you should only find code to manage ranges, and everything else should be delegated somehow to the parent.

In the previous pull request about the multi-autocomplete (see [here](https://github.com/ariatemplates/ariatemplates/pull/870#discussion-diff-8275012R85)), I already suggested you to call the parent `getSuggestions` method from this method.
Later, you were asked to support something the parent `getSuggestions` method already supported.
If you had followed my advice, support for multi-word matching would have been present right from the beginning in `LCRangeResourcesHandler`.
Sharing code allows to automatically benefit from features and bug fixes implemented in the common code.

So, basically, here, the whole prototype of `LCRangeResourcesHandler` could be as simple as this:

```js
        $prototype : {

            rangePattern : /^[a-z]{1}\d+-\d+/,

            getSuggestions : function (textEntry, callback) {
                if (!typesUtil.isString(textEntry) || textEntry.length < this.threshold) {
                    this.$callback(callback, null);
                    return;
                }
                textEntry = stringUtil.stripAccents(textEntry).toLowerCase();
                if (this.allowRangeValues && this.rangePattern.test(textEntry)) {
                    var firstLetter = textEntry.charAt(0);
                    var rangeV = textEntry.substring(1).split("-");
                    var results = {
                        suggestions : [],
                        multipleValues : true
                    };
                    for (var k = rangeV[0]; k <= rangeV[1]; k++) {
                        var textEntry = firstLetter + k;
                        this.$LCResourcesHandler.getSuggestions.call(this, textEntry, {
                            fn : this.__appendSuggestions,
                            scope : this,
                            args : results
                        });
                    }
                    this.$callback(callback, results);
                } else {
                    this.$LCResourcesHandler.getSuggestions.call(this, textEntry, callback);
                }
            },

            __appendSuggestions : function (suggestions, results) {
                if (suggestions) {
                    results.suggestions = results.suggestions.concat(suggestions);
                }
            }

        }
```