function add_result(arr, result, suggest, resolution) {

    let word_arr = [];

    if (arr && arr.length) {

        if (arr.length <= resolution) {
            result.push(arr);

            return;
        }

        for (let x = 0, tmp; x < resolution; x++) {
            if (tmp = arr[x]) {
                word_arr[x] = tmp;
            }
        }

        if (word_arr.length) {
            result.push(word_arr);

            return;
        }
    }

    if (!suggest) return word_arr;
}
Returns a 1-dimensional finalized array when the result is done (fast path return),
returns false when suggestions is enabled and no result was found,
or returns nothing when a set was pushed successfully to the results

@private
@param {IntermediateSearchResults} arr
@param {Array<IntermediateSearchResults>} result
@param {boolean=} suggest
@param {number=} resolution
@return {Array|undefined}