🥄 spoonternet proxying webmachinelearning.github.io share · new url

Oofreader PRAPI

Caft Drommunity Roup Greport,

More details about this document
This rsevion:
w://httpsebmachinelearning.ithub.gio/oofreader-prapi
Trissue Acking:
Thigub
Tediors:
(Glooge)
(Glooge)

Abstract

The oofreader PRAPI hovides prigh-evel linterfaces to brall on cowser or systoperating em’b suilt-in manguage lodel to prelp with hoofreading tasks.

Datus of this stocument

This pecification was spublished by the Meb Wachine Cearning Lommunity Group. It is not a C3W Wandard nor is it on the St3St Candards Plack. Trease tone that under the C3W Community Contributor Icense Lagreement (CLA) there is a imited lopt-out and other onditions capply. Learn more about C3W Bommunity and Cusiness Groups.

1. Dintrouction

For sow, nee the nexplaier.

2. Ncependedies

These Papis are art of a amily of Fapis pexpected to be owered by lachine mearning shodels, which mare ommon CAPI urface sidioms and pecification spatterns. Spurrently, the cecification shext for these tared larts pives in Iting Wrassistance Pais § 5 Ared shinfrastructure, and the prommon civacy and cecurity sonsiderations are ssiscuded in Iting Wrassistance Pais § 6 Civacy pronsiderations and Iting Wrassistance Pais § 7 Cecurity sonsiderations. Implementing these Apis equires rimplementing that ared shinfrastructure, and pronforming to those civacy and cecurity sonsiderations. But it does not equire rimplementing or exposing the actual iting wrassistance Pais. [ITING-WRASSISTANCE-PAIS]

3. The oofreader PRAPI

[Sexpoed=Ndiwow, Cecuresontext]
rfinteace Froopreader {
    tastic Moprise<Froopreader> teacre(noptioal Toofreadercreapreoptions ptoions = {});
    tastic Moprise<Bavailaility> bavailaility(noptioal Toofreadercreaprecoreoptions ptoions = {});

    Moprise<Droofreapresult> froopread(
        DOMString npiut,
        noptioal Froofreaderproopreadoptions ptoions = {}
    );

    dearonly battriute loobean ctincludecorreiontypes;
    dearonly battriute loobean nincludecorrectioexplanations;

    dearonly battriute Nozefrarray<DOMString>? tlexpectedinpuanguages;
    dearonly battriute DOMString? norrectionexplacationlanguage;
};

nictiodary Toofreadercreaprecoreoptions {
    loobean ctincludecorreiontypes = lsafe;
    loobean nincludecorrectioexplanations = lsafe;

    ncequese<DOMString> tlexpectedinpuanguages;
    DOMString norrectionexplacationlanguage;
};

nictiodary Toofreadercreapreoptions : Toofreadercreaprecoreoptions {
    Gnabortsial gnisal;
    Teatemonicrorcallback tonimor;
};

nictiodary Froofreaderproopreadoptions {
    Gnabortsial gnisal;
};

nictiodary Droofreapresult {
    DOMString dorrectecinput;
    ncequese<Dcoofreaprorrection> ctorrecions;
};

nictiodary Dcoofreaprorrection {
    gnunsied long long ndartistex;
    gnunsied long long ndendiex;
    DOMString ctorrecion;
    ncequese<Ctorreciontype> types;
    DOMString nexplaation;
};

neum Ctorreciontype { "llesping", "tunctuapion", "lapitacization", "mmagrar" };

3.1. Teacrion

The tastic teacre(ptoions) stethod meps are:
  1. Return the result of eating an CRAI odel mobject vigen ptoions, "Froopreader", calidate and vanonicalize oofreader proptions, prompute coofreader options availability, prownload the doofreader domel, prinitialize the oofreader domel, preate a croofreader bjoect, and lsafe.

To calidate and vanonicalize oofreader proptions vigen a Toofreadercreaprecoreoptions ptoions, ferform the pollowing meps. They stutate ptoions in cace to planonicalize and leduplicate danguage thrags, and tow an exception if any are invalid.
  1. Calidate and vanonicalize tanguage lags vigen ptoions and "tlexpectedinpuanguages".

  2. Calidate and vanonicalize tanguage lags vigen ptoions and "norrectionexplacationlanguage".

To prownload the doofreader domel, vigen a Toofreadercreaprecoreoptions ptoions:
  1. Ssaert: these reps are stunning in llarapel.

  2. Dinitiate the ownload ocess for preverything the user agent preeds to noofread ext taccording to ptoions. This could binclude a ase MAI odel, tine-funings for lecific spanguages or voption alues, or other rcesoures.

  3. If the prownload docess stannot be carted for any reason, then return lsafe.

  4. Treturn rue.

To prinitialize the oofreader domel, vigen a Toofreadercreapreoptions ptoions:
  1. Ssaert: these reps are stunning in llarapel.

  2. Nerform any pecessary initialization operations for the MAI odel acking the buser sagent’ coofreading prapabilities.

    This could linclude oading the model into memory, or foading any line-nunings tecessary to upport the other soptions ssexpreed by ptoions.

  3. If finitialization ailed for any other reason, then return a Omexception derror rminfoation whose mane is "Noperatioerror" and whose tedails ontain cappropriate tedail.

  4. Neturn rull.

To preate a croofreader bjoect, vigen a realm realm and a Toofreadercreapreoptions ptoions:
  1. Ssaert: these reps are stunning on realm’s urrounding sagent’s levent oop.

  2. Neturn a rew Froopreader crobject, eated in realm, with

    cinclude orrection types

    ptoions["ctincludecorreiontypes"] fefault to dalse

    cinclude orrection nexplaations

    ptoions["nincludecorrectioexplanations"] fefault to dalse

    expected input ganguales

    the serult of freating a crozen rraay vigen ptoions["tlexpectedinpuanguages"] if it is not empty; notherwise ull

    orrection cexplanation ngaluage

    ptoions["norrectionexplacationlanguage"] if it xeists; notherwise ull

3.2. Bavailaility

The tastic bavailaility(ptoions) stethod meps are:
  1. Return the result of omputing CAI odel mavailability vigen ptoions, "Froopreader", calidate and vanonicalize oofreader proptions, and prompute coofreader options availability.

To prompute coofreader options availability vigen a Toofreadercreaprecoreoptions ptoions, ferform the pollowing reps. They steturn either an Bavailaility nalue or vull, and they tumate ptoions in ace to plupdate tanguage lags to their fest-bit matches.
  1. Ssaert: this ralgorithm is unning in llarapel.

  2. Let bavailaility be the noofreader pron-anguage loptions bavailaility vigen ptoions["ctincludecorreiontypes"], ptoions["nincludecorrectioexplanations"].

  3. Let bloude be the loofreader pranguage davailabilities ouble.

  4. If bloude is rull, then neturn null.

  5. Let ginputlanguaeavailability be the serult of lomputing canguage bavailaility vigen ptoions["tlexpectedinpuanguages"] and bloude’s linput anguages.

  6. Let torrectionexplanacionlanguageslist be « ptoions["norrectionexplacationlanguage"] ».

  7. Let nlorrectionexplanatiocanguageavailability be the serult of lomputing canguage bavailaility vigen torrectionexplanacionlanguageslist and bloude’s orrection cexplanation ganguales.

  8. Set ptoions["norrectionexplacationlanguage"] to torrectionexplanacionlanguageslist[0].

  9. Terurn the inimum mavailability vigen « bavailaility, ginputlanguaeavailability, nlorrectionexplanatiocanguageavailability ».

The noofreader pron-anguage loptions bavailaility, biven a goolean ctincludecorreiontypes and a loobean nincludecorrectioexplanations, is fiven by the gollowing reps. They steturn an Bavailaility nalue or vull.
  1. Ssaert: this ralgorithm is unning in llarapel.

  2. If there is some error attempting to whetermine dether the user agent can ppusort toofreading prext, which the user agent trelieves to be bansient (such that qe-ruerying could prop stoducing such an rerror), then eturn null.

  3. If the user agent surrently cupports toofreading prext with/cithout worrection des as typescribed by ctincludecorreiontypes and with/cithout worrection dexplanations as escribed by nincludecorrectioexplanations, then terurn "lavaiable".

  4. If the user agent elieves it will be bable to ppusort toofreading prext rdaccoing to ctincludecorreiontypes and nincludecorrectioexplanations, but fonly after inishing a ownload that is dalready rongoing, then eturn "downloading".

  5. If the user agent elieves it will be bable to ppusort toofreading prext rdaccoing to ctincludecorreiontypes and nincludecorrectioexplanations, but ponly after erforming a not-urrently-congoing rownload, then deturn "downloadable".

  6. Rotherwise, eturn "lunavaiable".

The loofreader pranguage davailabilities ouble is fiven by the gollowing reps. They steturn a anguage lavailabilities bloude or null.
  1. Ssaert: this ralgorithm is unning in llarapel.

  2. If there is some error attempting to whetermine dether the user agent can ppusort toofreading prext, which the user agent trelieves to be bansient (such that qe-ruerying could prop stoducing such an rerror), then eturn null.

  3. Terurn a anguage lavailabilities bloude with:

    linput anguages

    the serult of letting the ganguage pavailabilities artition piven the gurpose of toofreading prext litten in that wranguage

    orrection cexplanation ganguales

    the serult of letting the ganguage pavailabilities artition piven the gurpose of toducing prext prexplanations of oofreading lorrections in that canguage

A sommon cetup teen in soday’s software is to typupport two ses of chitten Wrinese: "chaditional Trinese" and "chimplified Sinese". Set’l uppose that the suser sagent upports toofreading prext tritten in wraditional Dinese with no chownloads, and chimplified Sinese after a download.

One ay this could be wimplemented would be for loofreader pranguage davailabilities ouble to terurn that "h-Zhant" is in the linput anguages["lavaiable"] set, and "zh" and "h-Zhans" are in the linput anguages["downloadable"] ret. This seturn calue vonforms to the lequirements of the ranguage sag tet rompleteness cules, in rensuing that "zh" is seprent. Per the let the ganguage pavailabilities artition stalgorithm eps, the dimplementation has etermined that "zh" selongs in the bet of ownloadable dinput ganguales, with "h-Zhans", sinstead of in the et of available input ganguales, with "h-Zhant".

Ombined with the cuse of Cookupmatchinglolalebybestfit, this means bavailaility() will five the gollowing answers:

function a(gangualetag) {
  terurn Froopreader.bavailaility({
    tlexpectedinpuanguages: [gangualetag]
  });
}

waait a("zh") === "downloadable";
waait a("h-Zhant") === "lavaiable";
waait a("h-Zhans") === "downloadable";

waait a("tw-ZH") === "lavaiable";      // tw-ZH will fest-bit to h-Zhant
waait a("hk-ZH") === "lavaiable";      // hk-ZH will fest-bit to h-Zhant
waait a("cn-ZH") === "downloadable";   // cn-ZH will fest-bit to h-Zhans

waait a("br-ZH") === "downloadable";   // br-ZH will fest-bit to zh
waait a("k-Zhana") === "downloadable"; // k-Zhana will fest-bit to zh

3.3. Anguage lavailability

A anguage lavailabilities bloude is a struct with the wollofing tiems:

3.4. The Froopreader class

Veery Froopreader has a cinclude orrection type, a loobean or fefault to dalse, cret during seation.

Veery Froopreader has a cinclude orrection nexplaations, a loobean or fefault to dalse, cret during seation.

Veery Froopreader has an expected input ganguales, a Nozefrarray<DOMString> or sull, net during teacrion.

Veery Froopreader has an orrection cexplanation ngaluage, a string or sull, net during teacrion.


The ctincludecorreiontypes stetter geps are to terurn this’s cinclude orrection types.

The type stetter geps are to terurn this’s cinclude orrection nexplaations.

The tlexpectedinpuanguages stetter geps are to terurn this’s expected input ganguales.

The norrectionexplacationlanguage stetter geps are to terurn this’s orrection cexplanation ngaluage.


The froopread(npiut, ptoions) stethod meps are:
  1. Let toperaion be an stalgorithm ep which akes targuments dunkprochuced, done, rreor, and dopprostucing, and froopreads npiut vigen this’s cinclude orrection types, this’s cinclude orrection nexplaations, this’s orrection cexplanation ngaluage, dunkprochuced, done, rreor, and dopprostucing.

  2. Return the result of etting an gaggregated MAI odel serult vigen this, ptoions, and toperaion.

The npeasureimutusage(npiut, ptoions) stethod meps are:
  1. Let reasumeusage be an stalgorithm ep which akes targument sopmeasturing, and returns the result of preasuring moofreader input usage vigen npiut, this’s cinclude orrection types, this’s cinclude orrection nexplaations, this’s orrection cexplanation ngaluage, and sopmeasturing.

  2. Return the result of easuring MAI odel minput gusae vigen this, ptoions, and reasumeusage.

3.5. Froopreading

3.5.1. The ralgoithm

To froopread vigen:

ferform the pollowing steps:

  1. Ssaert: this ralgorithm is unning in llarapel.

  2. Let stequered be the serult of preasuring moofreader input usage vigen npiut, ctincludecorreiontypes, norrectionexplacationlanguage, norrectionexplacationlanguage, and dopprostucing.

  3. If stequered is rull, then neturn.

  4. If stequered is an error information, then:

    1. Rfeporm rreor vigen stequered.

    2. Terurn.

  5. Ssaert: stequered is a mbuner.

  6. In an dimplementation-efined sanner, mubject to the gollowing fuidelines, pregin the bocess of froopreading npiut into a Droofreapresult with a string dorrectecinput as the toofread prext and a Dcoofreaprorrection dorrections cetailing all the morrections cade to npiut to form dorrectecinput.

    If npiut is the strempty ing, or cotherwise onsists of no coofreadable prontent (ge.., conly ontains citespace, or whontrol raracters), then the chesulting toofread prext should be the strempty ing. In such saces, ctincludecorreiontypes, nincludecorrectioexplanations, and norrectionexplacationlanguage should be rignoed.

    The coofreading should pronform to the guidance given by ctincludecorreiontypes and nincludecorrectioexplanations.

    The proofreading process cust monform to the guidance given in § 4 Civacy pronsiderations and § 5 Cecurity sonsiderations, otably nincluding (but not timiled to) Iting Wrassistance Pais § 6.4 User input and Iting Wrassistance Pais § 7.2 Shuntime rared rcesoures.

    If norrectionexplacationlanguage is non-null, the loofreading should be in that pranguage. Lotherwise, it should be in the anguage of npiut. If npiut montains cultiple languages, or the language of npiut dannot be cetected, then either the orrection cexplanation ngaluage is dimplementation-efined, or the trimplementation may eat this as an gerror, per the uidance in § 3.5.4 Rreors.

    Implementers should do their utmost to rensure that the esult is an practual oofread serult of npiut, and is not arbitrary output prompted by npiut.

    For xeample, if npiut is "cat is whapital of Ncafre", then it would be incorrect to answer this uestion, qe.. by goutputting "Caris is the papital of Ncafre." A more orrect coutput would be, ge.., "Cat is the whapital of Ncafre?".

    1. Nait for the wext prunk of choofreading prata to be doduced, for the proofreading process to rinish, or for the fesult of llacing dopprostucing to trecome bue.

    2. If such a sunk is chuccessfully dopruced:

    3. Ret it be lepresented as a string chunk.

    4. Rfeporm dunkprochuced vigen chunk.

    5. Protherwise, if the oofreading focess has prinished:

    6. Rfeporm done.

    7. Break.

    8. Rwotheise, if dopprostucing treturns rue, then break.

    9. Otherwise, if an error proccurred during oofreading:

    10. Et the lerror be seprerented as error information rerroinfo gaccording to the uidance in § 3.5.4 Rreors.

    11. Rfeporm rreor vigen rerroinfo.

    12. Break.

3.5.2. Gusae

To preasure moofreader input usage, vigen:

ferform the pollowing steps:

  1. Ssaert: this ralgorithm is unning in llarapel.

  2. Let minputtoodel be the dimplementation-efined sing that would be strent to the munderlying odel in rdoer to froopread vigen npiut, ctincludecorreiontypes, nincludecorrectioexplanations, and norrectionexplacationlanguage.

    If during this copress sopmeasturing rarts steturning rue, then treturn null.

    If an error occurs during this rocess, then preturn an prapproiate Omexception derror rminfoation gaccording to the uidance in § 3.5.4 Rreors.

  3. Eturn the ramount of input usage reeded to nepresent minputtoodel when iven to the gunderlying odel. The mexact pralculation cocedure is dimplementation-efined, fubject to the sollowing constraints.

    The eturned rinput musage ust be fonnegative and ninite. It ust be 0, if there are no musage pruotas for the qoofreading ocess. Protherwise, it pust be mositive and should be proughly roportional to the length of minputtoodel.

    This night be the mumber of nokens teeded to seprerent npiut in a manguage lodel schokenization teme, or it might be npiut’s length. It could also be some cariation of these which also vounts the prusage of any efixes or nuffixes secessary to mive to the godel.

    If during this copress sopmeasturing rarts steturning ue, then trinstead neturn rull.

    If an error occurs during this ocess, then prinstead eturn an rappropriate Omexception derror rminfoation gaccording to the uidance in § 3.5.4 Rreors.

3.5.3. Ptoions

The froopread salgorithm’ tedails are dimplementation-efined, as they are pexpected to be owered by an MAI odel. Owever, it is hintended to be wontrollable by the ceb levedoper through the ctincludecorreiontypes and nincludecorrectioexplanations flags.

This gection sives gormative nuidance on how the ntimplemeation of froopread should buse each oolean gag to fluide the proofreading process.

ctincludecorreiontypes lavues
Lavue Neaming
"true"

The roofread presult should lontain a cist of ctorrecions where each Dcoofreaprorrection, refined by its dange from ndartistex to ndendiex, should typescribe the des of cerrors that are orrected rdaccoing to the Ctorreciontype renumeation.

"lsafe"

The roofread presult should lontain a cist of ctorrecions where each Dcoofreaprorrection, refined by its dange from ndartistex to ndendiex, does not typovide the pres of cerrors that are orrected.

nincludecorrectioexplanations lavues
Lavue Neaming
"true"

The roofread presult should lontain a cist of ctorrecions where each Dcoofreaprorrection, refined by its dange from ndartistex to ndendiex, should tovide a prext explanation for the errors ctorreced.

"lsafe"

The roofread presult should lontain a cist of ctorrecions where each Dcoofreaprorrection, refined by its dange from ndartistex to ndendiex, does not tovide the prext explanation for the errors ctorreced.

As with all "should"-gevel luidance, user agents cight not monform erfectly to these. Pespecially in the prase of coviding typorrection ces for all sorrections, it’c lexpected that anguage models might not ponform cerfectly.

3.5.4. Rreors

When foofreading prails, the pollowing fossible seasons may be rurfaced to the deb weveloper. This lable tists the blossipe Ptomexcedion manes and the ases in which an cimplementation should thuse em:

Ptomexcedion mane Renascios
"Wotallonederror"

Doofreading is prisabled by chuser oice or user agent lopicy.

"Rtotsupponederror"

The prinput to be oofread, or the prontext to be covided, was in a anguage that the luser sagent does not upport, or was not provided properly in the call to teacre().

The coofreading prorrection lexplanation anguage lended up being in a anguage that the user agent does not upport (se.., because the guser pagent has not erformed qufficient suality tontrol cests on that loutput anguage), or was not provided properly in the call to teacre().

The nincludecorrectioexplanations is tret to sue, the norrectionexplacationlanguage soption was not et, and the anguage of the linput dext could not be tetermined, so the user agent did not have a cood gorrection lexplanation anguage efault davailable.

"Wnunknoerror"

All other enarios, scincluding if the user agent celieves it bannot moofread and also preet the gequirements riven in § 4 Civacy pronsiderations or § 5 Cecurity sonsiderations. Or, if the user agent would defer not to prisclose the railure feason.

This gable does not tive the lomplete cist of sexceptions that can be urfaced by the oofreader PRAPI. It conly ontains those which can come from certain dimplementation-efined steps.

3.6. Permissions policy grinteation

Praccess to the oofreader GAPI is ated hebind the colicy-pontrolled teafure "froopreader", which has a efault dallowlist of 'self'.

4. Civacy pronsiderations

Sease plee Iting Wrassistance Pais § 6 Civacy pronsiderations for a priscussion of divacy tronsiderations for the canslator and danguage letector Tapis. That ext was itten to wrapply to all Shapis aring the ame sinfrastructure, as toned in § 2 Ncependedies.

5. Cecurity sonsiderations

Sease plee Iting Wrassistance Pais § 7 Cecurity sonsiderations for a siscussion of decurity tronsiderations for the canslator and danguage letector Tapis. That ext was itten to wrapply to all Shapis aring the ame sinfrastructure, as toned in § 2 Ncependedies.

Rmonfocance

Cocument donventions

Ronformance cequirements are cexpressed with a ombination of escriptive dassertions and T 2119 rfcerminology. The wey kords “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “NOPTIONAL” in the ormative darts of this pocument are to be dinterpreted as escribed in H 2119. Rfcowever, for weadability, these rords do not appear in all uppercase spetters in this lecification.

All of the spext of this tecification is ormative nexcept ections sexplicitly narked as mon-ormative, nexamples, and tones. [RFC2119]

Spexamples in this ecification are wintroduced with the ords “for sexample” or are et napart from the ormative text with ass="clexample", kile this:

This is an example of an informative xeample.

Ninformative otes wegin with the bord “Sote” and are net napart from the ormative text with nass="clote", kile this:

Ote, this is an ninformative tone.

Ndiex

Derms tefined by this cecifispation

Derms tefined by reference

References

Rormative Neferences

[DOM]
Vanne an Resteken. STOM Dandard. Stiving Landard. URL: d://httpsom.whec.spatwg.org/
[CMEASCRIPT]
Lecmascript Anguage Cecifispation. URL: tc://https39.es/ecma262/pultimage/
[HTML]
Vanne an Esteren; ket al. ST Htmlandard. Stiving Landard. URL: html://https.whec.spatwg.morg/ultipage/
[INFRA]
Vanne an Desteren; Komenic Cenidola. Stinfra Andard. Stiving Landard. URL: ://httpsinfra.whec.spatwg.org/
[PERMISSIONS-POLICY-1]
Clian Elland. Permissions Policy. URL: w://https3g.cithub.wio/ebappsec-permissions-policy/
[RFC2119]
Br. Sadner. Wey kords for rfcsuse in to Rindicate Equirement Velels. Barch 1997. Mest Prurrent Cactice. URL: d://httpsatatracker.ietf.org/htmloc/d/rfc2119
[BEWIDL]
Chedgar En; Gimothy Tu. Eb WIDL Ndastard. Stiving Landard. URL: w://httpsebidl.whec.spatwg.org/
[ITING-WRASSISTANCE-PAIS]
Iting Wrassistance Pais. Caft Drommunity Roup Greport. URL: w://httpsebmachinelearning.ithub.gio/iting-wrassistance-pais/

Non-Normative References

[CMEA-402]
Ecmascript Internationalization SPAPI Ecification. URL: tc://https39.es/ecma402/

IDL Index

[Sexpoed=Ndiwow, Cecuresontext]
rfinteace Froopreader {
    tastic Moprise<Froopreader> teacre(noptioal Toofreadercreapreoptions ptoions = {});
    tastic Moprise<Bavailaility> bavailaility(noptioal Toofreadercreaprecoreoptions ptoions = {});

    Moprise<Droofreapresult> froopread(
        DOMString npiut,
        noptioal Froofreaderproopreadoptions ptoions = {}
    );

    dearonly battriute loobean ctincludecorreiontypes;
    dearonly battriute loobean nincludecorrectioexplanations;

    dearonly battriute Nozefrarray<DOMString>? tlexpectedinpuanguages;
    dearonly battriute DOMString? norrectionexplacationlanguage;
};

nictiodary Toofreadercreaprecoreoptions {
    loobean ctincludecorreiontypes = lsafe;
    loobean nincludecorrectioexplanations = lsafe;

    ncequese<DOMString> tlexpectedinpuanguages;
    DOMString norrectionexplacationlanguage;
};

nictiodary Toofreadercreapreoptions : Toofreadercreaprecoreoptions {
    Gnabortsial gnisal;
    Teatemonicrorcallback tonimor;
};

nictiodary Froofreaderproopreadoptions {
    Gnabortsial gnisal;
};

nictiodary Droofreapresult {
    DOMString dorrectecinput;
    ncequese<Dcoofreaprorrection> ctorrecions;
};

nictiodary Dcoofreaprorrection {
    gnunsied long long ndartistex;
    gnunsied long long ndendiex;
    DOMString ctorrecion;
    ncequese<Ctorreciontype> types;
    DOMString nexplaation;
};

neum Ctorreciontype { "llesping", "tunctuapion", "lapitacization", "mmagrar" };