# ============================================================
# This role class is generated from the file
#   DSL::Shared::Roles::Bulgarian::CommonSpeechParts-template
# using the function AddFuzzyMatch CLI from
#   Grammar::TokenProcessing
# ============================================================

use v6.d;

use DSL::Shared::Utilities::DeterminedWordsMatching;

role DSL::Shared::Roles::Bulgarian::CommonSpeechParts {
    # Single words
    token ID-noun { 'ID' | 'ИД'}
    token IDENTIFIER-adjective { 'IDENTIFIER' | 'ИДЕНТИФИКАТОРЕН' | 'ИДЕНТИФИКАТОРНА' | 'ИДЕНТИФИКАТОРНИ' }
    token IDENTIFIER-noun { 'IDENTIFIER' | 'ИДЕНТИФИКАТОР' }
    token MODULE-noun { 'MODULE' | 'МОДУЛ' }
    token TARGET-noun { 'TARGET' | 'ЦЕЛ' }
    token USER-noun { 'USER' | 'ПОТРЕБИТЕЛ' }
    token a-determiner { '' }
    token add-verb { 'събери' | 'добави' }
    token adhere-verb { 'държи' | 'според' }
    token adjacency-noun { 'аджудант' }
    token adjacent-adjective { 'аджудант' | 'аджудантен' }
    token algorithm-noun { 'алогоритъм' }
    token algorithms-noun { 'алгоритми' }
    token all-determiner { 'всяко' | 'всички' }
    token and-conjunction { 'и' }
    token annex-verb { 'присъедини' }
    token answer-noun { 'отговор' }
    token answer-verb { 'отговори' | 'кажи' }
    token append-verb { 'добави' }
    token apply-verb { 'приложи' }
    token are-verb { 'са' }
    token array-noun { 'масив' }
    token arrays-noun { 'масиви' }
    token as-preposition { 'като' }
    token assign-verb { 'присвои' }
    token at-preposition { 'то' }
    token automatic { 'автоматичен' | 'автоматична' | 'автоматично' | 'автоматични'  }
    token away-adverb { 'away' }
    token axes-noun { 'оси' }
    token axis-noun { 'ос' }
    token be-verb { 'be' }
    token both-determiner { 'и'? 'двете' | 'едновременно' | 'заедно' }
    token bottom-noun { 'дъно' | 'най-ниско' }
    token broaden-verb { 'разшири' }
    token by-preposition { 'от' | 'със' | 'чрез' }
    token calculation { 'изчисление' }
    token case-noun { 'случай' }
    token cases-noun { 'случаи' }
    token channel-adjective { 'канален' | 'канална' | 'канално' | 'канални' }
    token channel-noun { 'канал' }
    token chart-noun { 'чертеж' | 'диаграма' | 'карта' }
    token chart-verb { 'чертай' | 'начертай' }
    token classify-verb { 'класифицирай' }
    token clear-verb { 'чисти' | 'зачисти' | 'изчисти' }
    token cluster { <cluster-noun> }
    token cluster-noun { 'клъстер' | 'група' }
    token clusters-noun { 'клъстери' | 'групи' }
    token code-noun { 'код' }
    token codes-noun { 'кодове' }
    token column-noun { 'колона' }
    token columns { <columns-noun> }
    token columns-noun { 'колони' }
    token complete-adjective { 'пълно' | 'пълни' }
    token compute-directive { 'изчисли' | 'намери' | 'калкулирай' | 'пресметни' }
    token config-noun { 'конфигурирай' }
    token configuration-adjective { 'конфигуриращ' | 'конфигурираща' | 'конфигуриращо' | 'конфигуриращи' }
    token configuration-noun { 'конфигурация' }
    token connect-verb { 'вържи' | 'свържи' }
    token consider-verb { 'разгледай' }
    token context-noun { 'контекст' }
    token contingency-noun { 'контингентен' | 'кръстосано' 'табулиране' }
    token convert-verb { 'превърни' }
    token conveyor-adjective { 'конвейерен' | 'конвейерна' | 'конвейерно' | 'конвейерни' }
    token conveyor-noun { 'конвейер' }
    token count-verb { 'преброй' | 'брой' | 'бройка' | 'размер' }
    token counts-noun { 'броя' | 'броеве' | 'бройки' | 'размери' }
    token create { 'създай' | 'направи' }
    token create-directive { <create-verb> | 'направи' }
    token create-verb { 'създай' }
    token creation-noun { 'създание' | 'дело' }
    token current-adjective { 'текущ' | 'текуща' | 'текущо' }
    token data-adjective { 'даннов' | 'даннова' | 'данново' | 'даннови' }
    token data-noun { 'данни' | 'даннов' | 'даннова' }
    token dataset { <dataset-noun> }
    token dataset-noun { 'дейтасет' | 'дейта' \h+ 'сет' | <array-noun> 'от' <data-noun> | <data-adjective> \h+ <array-noun>}
    token datasets-noun { 'дейтасети' | <arrays-noun> \h+ 'от' \h+ <data-noun> | <data-adjective> \h+ <arrays-noun> }
    token date-adjective { 'датов' | 'датова' | 'датово' | 'датови' }
    token date-noun { 'дата' }
    token dates-noun { 'дати' }
    token datum-noun { 'данна' }
    token default { <default-noun> }
    token default-noun { 'по' 'подразбиране' | 'подразбиращ' \h+ 'се' }
    token delete-directive { 'изтрий' | 'изхвърли' | 'премахни' }
    token detect-verb { 'установи' | 'намери' | 'детектирай' }
    token diagram { <diagram-synonyms> }
    token diagram-noun { 'диаграма' }
    token diagram-synonyms { <diagram-noun> | <plot-noun> | <plots-noun> | <graph-noun> | <chart-noun> }
    token dictionary-noun { 'речник' }
    token difference { 'разлика' }
    token dimension-noun { 'размерност' }
    token dimensions-noun { 'размерности' }
    token directly-adverb { 'директно' }
    token display-directive { <display-verb> | 'покажи' | 'ехо' }
    token display-verb { 'покажи' }
    token distance-noun { 'разстояние' }
    token do-verb { 'прави' }
    token document-noun { 'документ' }
    token documents-noun { 'документи' }
    token domain-noun { 'домейн' | 'област' }
    token drop-verb { 'изхвърли' | 'забрави' | 'захвърли' }
    token during-preposition { 'докато' | 'през' }
    token each-determiner { 'всеки' | 'всяко' | 'всяка' }
    token echo-verb { 'ехо' }
    token element { <element-noun> }
    token element-noun { 'елемент' }
    token elements { <elements-noun> }
    token elements-noun { 'елементи'}
    token empty-noun { 'празно' | 'празнота' }
    token empty-verb { 'празни' | <empty-noun> }
    token every-determiner { 'всеки' | 'всяко' | 'всяка' }
    token extend-verb { 'разшири' }
    token extract-directive { 'измъкни' | 'извади' | 'добий' }
    token filter { <filter-verb> }
    token filter-noun { <filter-verb> }
    token filter-verb { 'филтър' | 'филтрирай' }
    token find-verb { 'търси' | 'намери' }
    token first-adjective { 'първи' | 'първа' | 'първо' }
    token for-preposition { 'за' | 'със' | 'на' }
    token frame-noun { 'рамка' }
    token frames-noun { 'рамки' }
    token from-preposition { 'от' }
    token function { <function-noun> }
    token function-noun { 'функция' }
    token functions { <functions-noun> }
    token functions-noun { 'функции' }
    token generate-directive { <generate-verb> | <create-verb> | 'направи' }
    token generate-verb { 'генерирай' }
    token get-verb { 'вземи' }
    token give-verb { 'дай' | 'давай' }
    token graph-noun { 'граф' }
    token head-adjective { <head-noun> }
    token head-noun { 'чело' | 'начело' | 'глава' }
    token had-verb { 'имах' | 'имаше' | 'имал' | 'имала' | 'имали' }
    token have-verb { 'имам' | 'имаш' | 'има' | 'имат' | 'съм' | 'си' | 'са' | 'е' }
    token high-adjective { 'висок' }
    token higher-adjective { 'по-висок' | 'по-висока' | 'по-високо' | 'по-високи'}
    token highest-adjective { 'най-висок' | 'най-висока' | 'най-високо' | 'най-високи' }
    token histogram { 'хистограма' }
    token histograms { 'хистограми' }
    token how-adverb { 'как' }
    token id-noun { 'ид' }
    token identifier-adjective { <IDENTIFIER-adjective> }
    token identifier-noun { <IDENTIFIER-noun> }
    token in-preposition { 'в' | 'във' }
    token include-verb { 'включи' | 'включвай' }
    token ingest-verb { 'прочети' | 'обработи' }
    token interpreter-noun { 'интерпретатор' | 'тълковник' }
    token interpreting-adjective { 'тълковен' | 'интерпретиращ' }
    token into-preposition { 'в' | 'във' }
    token is-verb { 'е' }
    token it-pronoun { 'това' | 'което' }
    token iterations { 'итерации' }
    token join-verb { 'съедини' }
    token join-noun { 'връзка' | 'съединение' }
    token language-noun { 'език' }
    token largest-adjective { 'най-голям' }
    token last-adjective { 'последен' | 'последни' }
    token left-adjective { 'ляв' | 'лява'  | 'ляво' | 'леви' }
    token left-noun { 'наляво' }
    token link-noun { 'връзка' }
    token list-noun { 'списък' }
    token load-verb { 'зареди' }
    token locate-verb { 'намери' | 'локализирай' }
    token low-adjective { 'долен' | 'нисък' }
    token lower-adjective { 'по-долен' | 'долен' | 'по-нисък' | 'по-ниско' | 'по-ниски' }
    token lowest-adjective { 'най-долен' | 'най-нисък' | 'най-ниско' | 'най-ниски' }
    token make-noun { 'направи' }
    token making-noun { 'правене' }
    # token manner { <manner-noun> }
    token manner-noun { 'начин' | 'маниер' }
    token many-determiner { 'много' }
    token matrices-noun { 'матрици' }
    token matrix-noun { 'матрица' }
    token matrixes-noun { 'матрици' }
    token maximum { 'макс' | 'максимум' | 'максимален' }
    token message-noun { 'съобщение' }
    token method-adjective { 'методен' | 'методна' | 'методно' | 'методни' }
    token method-noun { 'метод' }
    token methods-noun { 'методи' }
    token minimum { 'мин' | 'минимум' | 'минимален' }
    token missing-adjective { 'липсващи' }
    # token model { <model-noun> }
    token model-noun { 'модел' }
    token module-noun { 'модул' }
    token much-pronoun { 'много' | 'многото' | 'доста' }
    token my-determiner { 'мой' | 'моя' | 'моят' }
    token name-noun { 'име' }
    token names-noun { 'имена' }
    token nearest-adjective { 'най-близък' | 'най-близки' }
    token neighbors-noun { 'съседи' | 'съседите' }
    token no-determiner { 'без' }
    token non-prefix { 'не' }
    token number-noun { 'число' }
    token object-noun { 'обект' }
    token obtain-verb { 'придобий' | 'добий' }
    token of-preposition { 'за' | 'на' }
    token off-adverb { 'без' }
    token on-preposition { 'на' | 'по' }
    token one-pronoun { 'едно' | 'първо' | 'нещо' }
    token ones-pronoun { 'първи' | 'нещя' }
    token or-conjunction { 'или' }
    token our-determiner { 'наш' | 'наши' | 'нашите' }
    token out-adverb { 'извън' | 'отвън'  }
    token outlier-adjective { 'извънреден' | 'извънредна' | 'извънредно' | 'извънредни' }
    token outlier-noun { 'извънредност' | 'извънредна' 'стойност' }
    token outliers-noun { 'извънредности' | 'извънредна' 'стойности' }
    token over-preposition { 'върху' | 'чрез' | 'по' }
    token parameter-noun { 'параметър' }
    token parameters-noun { 'параметри' }
    token part-noun { 'част' }
    token pattern-noun { 'шаблон' }
    token per-preposition { 'за' }
    token pipeline-adjective { <tape-adjective> | <conveyor-adjective> | <channel-adjective> }
    token pipeline-noun { <tape-noun> | <conveyor-noun> | <channel-noun> | 'поточна' \h+ 'линия' }
    token plot-noun { 'чертеж' | 'графика' }
    token plots-noun { 'чертежи' | 'графики' }
    token position-noun { 'позиция' }
    token pull-noun { 'изтегляне' | 'издърпване' }
    token pull-verb { 'изтегли' | 'издърпай' }
    token random-adjective { 'случаен' }
    token records { 'записи' }
    token reduce-verb { 'редуцирай' }
    token remove-verb { 'премахни' | 'изтрий'  }
    token repeat-verb { 'повтори' }
    token replace-verb { 'замести' | 'замени' }
    token represent-directive { <represent-verb> | 'чертай' | 'отрази' }
    token represent-verb { 'представи' }
    token rest-noun { 'остатък' }
    token result-noun { 'резултат' }
    token results { <results-noun> }
    token results-noun { 'резултати' }
    token reverse-adjective { 'обратен' | 'обърни' }
    token right-adjective { 'десен' | 'дясна' | 'дясно' | 'десни' }
    token right-noun { 'надясно' }
    token row-noun { 'ред' }
    token rows { <rows-noun> }
    token rows-noun { 'редове' }
    token run-verb { 'run' | 'runs' }
    token running-verb { 'running' }
    token second-adjective { 'втори' | 'втора' | 'второ' | 'втори' }
    token separate-verb { 'раздели' }
    token series-noun { 'серия' | 'ред' | 'редица' }
    token set-directive { 'присвои' }
    token set-noun { 'множество' }
    token setup-adjective { 'настройващ' | 'настройваща' | 'настройващо' | 'настройващи' | 'инициализиращ' | 'инициализираща' | 'инициализиращо' | 'инициализиращи' }
    token setup-noun { 'нагласа' | 'настройване' | 'инициализация' | 'потготовка' | 'потготвяне' }
    token shape-noun { 'форма' }
    token show-verb { 'покажи' | 'показвай' }
    token simple { 'прост' | 'директен' }
    token simply-adverb { 'просто' }
    token simulate { 'симулирай' }
    token simulate-directive { <simulate> }
    token simulation { 'симулация' }
    token single-adjective { 'единичен' | 'един' }
    token site-noun { 'място' | 'позиция' }
    token smallest { 'най-малък' | 'най-малки' }
    token smallest-adjective { 'най-малък' | 'най-малки'  }
    token some-determiner { 'някой' | 'някои' }
    token sparse-adjective { 'разреден' }
    token specific-adjective { 'специфичен' }
    token split-verb { 'раздели' }
    token spot-verb { 'намери' }
    token spread-verb { 'разстели' }
    token statistical { <statistical-adjective> }
    token statistical-adjective { 'статистически' }
    token statistics-noun { 'статистики' }
    token stats-noun { 'статс' }
    token step-noun { 'стъпка' }
    token steps-noun { 'стъпки' }
    token string-noun { 'низ' }
    token sub-prefix { 'съб' | 'под' }
    token summaries { <summaries-noun> }
    token summaries-noun { 'рекапитулации' | 'обобщения' }
    token summarize-directive { 'рекапитулирай' | 'обобщи' }
    token summary { <summary-noun> }
    token summary-noun { 'рекапитулация' | 'обобщение' }
    token system-noun { 'система' }
    token table-noun { 'таблица' }
    token tables-noun { 'таблици' }
    token tabular-adjective { 'табличен' }
    token take-verb { 'вземи' }
    token tape-adjective { 'лентов' | 'лентова' | 'лентово' | 'лентови'  }
    token tape-noun { 'лента' }
    token target-noun { 'цел' }
    token text-adjective { <text-noun> | <textual-adjective> }
    token text-noun { 'текст' }
    token texts-noun { 'текстове' }
    token textual-adjective { 'текстов' | 'текстова' | 'текстово' | 'текстови' }
    token that-pronoun { 'онези' | 'онова' }
    token the-determiner { '' }
    token them-pronoun { 'тях' }
    token this-pronoun { 'този' | 'това' }
    token threshold-adjective { 'прагов' | 'прагова' | 'прагово' | 'прагови' }
    token threshold-noun { 'праг' }
    token time-adjective { 'времеви' | 'времева' }
    token time-noun { 'време' }
    token timeline-noun { <time-adjective> 'линия' }
    token times-noun { 'времена' }
    token to-preposition { 'до' | 'на' | 'към'  }
    token top-adjective { 'най-горен' | 'най-горна' | 'най-горно' | 'най-горни' | 'върхов' | 'върхова' | 'върхово' | 'върхови' }
    token top-noun { 'връх' }
    token transform-verb { 'трансформирай' }
    token translation-noun { 'транслация' }
    token type-noun { 'тип' }
    token types-noun { 'типове' }
    token until-preposition { 'до' | 'докато' }
    token up-adverb { 'горе' | 'нагоре' }
    token use-verb { 'ползвай' | 'използвай' }
    token used-verb { 'ползван' | 'използван' }
    token using-preposition { 'чрез' | 'с' | 'със' }
    token value-noun { 'стойност' }
    token values-noun { 'стойности' }
    token variable-noun { 'променлива' }
    token variables-noun { 'променливи' }
    token versus-preposition { 'срещу' | 'ср.' | 'против' }
    token way-noun { 'път' | 'начин' }
    token weight { <weight-noun> }
    token weight-adjective { 'теглов' | 'теглова' | 'теглово' | 'теглови' | 'теглови' | 'тегловна' | 'тегловно' | 'тегловни' }
    token weight-noun { 'тегло'  }
    token weights { <weights-noun> }
    token weights-noun { 'тегла' }
    token what-pronoun { 'какво' | 'какви' }
    token when-pronoun { 'кога' }
    token which-determiner { 'кой' | 'кои' }
    token with-preposition { 'чрез' | 'с' | 'със' }
    token within-preposition { 'в' | 'във' | 'вътре' }
    token without-preposition { 'без' }
    token word-noun { 'дума' }
    token words-noun { 'думи' }

    # Directives and phrases
    rule data-frame { <data-noun>? <table-noun> }
    rule data-frames { <data-noun>? <tables-noun> }
    rule time-series-data { <time-adjective> <series-noun> <data-noun>? }
    rule number-of { [ <number-noun> | <count-verb> | <counts-noun> ] <of-preposition>? }

}