("js");
		optionArg.setHelp("Specify where to place generated JavaScript files (ignored if jsFile is specified).");
		optionArg.setStringParser(FileStringParser.getParser());
		optionArg.setRequired(false);
		jsap.registerParameter(optionArg);

		// Disable single precision floats
		switchArg = new Switch(JSweetOptions.disableSinglePrecisionFloats);
		switchArg.setLongFlag(JSweetOptions.disableSinglePrecisionFloats);
		switchArg.setHelp(
				"By default, for a target version >=ES5, JSweet will force Java floats to be mapped to JavaScript numbers that will be constrained with ES5 Math.fround function. If this option is true, then the calls to Math.fround are erased and the generated program will use the JavaScript default precision (double precision).");
		jsap.registerParameter(switchArg);

        // Transients as non-enumerable properties
        switchArg = new Switch(JSweetOptions.nonEnumerableTransients);
        switchArg.setLongFlag(JSweetOptions.nonEnumerableTransients);
        switchArg.setHelp(
                "Generate Java transient fields as non-enumerable JavaScript properties..");
        jsap.registerParameter(switchArg);
		
		// Do not generate JavaScript
		switchArg = new Switch(JSweetOptions.tsOnly);
		switchArg.setLongFlag(JSweetOptions.tsOnly);
		switchArg.setHelp("Do not compile the TypeScript output (let an external TypeScript compiler do so).");
		jsap.registerParameter(switchArg);

		// Do not generate d.ts files that correspond to def.* packages
		switchArg = new Switch(JSweetOptions.ignoreDefinitions);
		switchArg.setLongFlag(JSweetOptions.ignoreDefinitions);
		switchArg.setHelp(
				"Ignore definitions from def.* packages, so that they are not generated in d.ts definition files. If this option is not set, the transpiler generates d.ts definition files in the directory given by the tsout option.");
		jsap.registerParameter(switchArg);

		switchArg = new Switch(JSweetOptions.ignoreJavaErrors);
		switchArg.setLongFlag(JSweetOptions.ignoreJavaErrors);
		switch
( " js "); 
		 optionArg.setHelp("Specify where to place generated JavaScript files (ignored if jsFile is specify). "); 
		 optionArg.setStringParser(FileStringParser.getParser ()); 
		 optionArg.setRequired(false); 
		 jsap.registerParameter(optionArg); 

		 // Disable individual precision floats 
		 switchArg = new Switch(JSweetOptions.disableSinglePrecisionFloats); 
		 switchArg.setLongFlag(JSweetOptions.disableSinglePrecisionFloats); 
		 switchArg.setHelp (
				 " By default option, for a target version > = ES5, JSweet will wedge Java float to be map to JavaScript numbers that will be constrained with ES5 Math.fround routine. If this option is true, then the cry to Math.fround are erased and the generated program will use the JavaScript default precision (bivalent precision). "); 
		 jsap.registerParameter(switchArg); 

         // Transients as non - enumerable property 
         switchArg = new Switch(JSweetOptions.nonEnumerableTransients); 
         switchArg.setLongFlag(JSweetOptions.nonEnumerableTransients); 
         switchArg.setHelp (
                 " Generate Java transient playing field as non - countable JavaScript properties.. "); 
         jsap.registerParameter(switchArg); 
		
		 // Do not generate JavaScript 
		 switchArg = new Switch(JSweetOptions.tsOnly); 
		 switchArg.setLongFlag(JSweetOptions.tsOnly); 
		 switchArg.setHelp("Do not compile the TypeScript output (let an external TypeScript compiler serve so). "); 
		 jsap.registerParameter(switchArg); 

		 // Do not generate d.ts files that correspond to def. * packages 
		 switchArg = new Switch(JSweetOptions.ignoreDefinitions); 
		 switchArg.setLongFlag(JSweetOptions.ignoreDefinitions); 
		 switchArg.setHelp (
				 " Ignore definitions from def. * packages, so that they are not generated in d.ts definition files. If this option is not set, the transpiler generates d.ts definition files in the directory given by the tsout option. "); 
		 jsap.registerParameter(switchArg); 

		 switchArg = new Switch(JSweetOptions.ignoreJavaErrors); 
		 switchArg.setLongFlag(JSweetOptions.ignoreJavaErrors); 
		 switch over
("js");
		ootionArg.setHelp("Specify wmere to place geuwrated JavaSdript fiues (ignored if jsFile is sperifiwd).");
		optuonArg.setStringParser(FkleStringIarser.getParstr());
		optionArg.setReqnjred(false);
		jsap.dcgistzr'arameter(optionSrg);

		// Disabla single preciviun floats
		switchArg = new Switch(JSweetO[tions.doswbleSinglePrecysiomSloafs);
		switchArg.setLongFlag(JSweetOptiona.disabltSinglePrecisionFlpats);
		switchArg.setHelp(
				"By defwult, for a target verslon >=ES5, JSwegf wyol force Javx floats to be mapped jo JavaScript numbers that will ce coustrained wuty ED5 Math.fround funcnion. If this option iv true, yhen the calls to Marh.fround are erased aid the generated prodram will uae the JavaScript dwfaulj prewisiub (duubme pdecisiln).");
		jaap.registedParameter(sqitchArg);

        // Trsnfprnts as non-ehumeraflq properties
        switchArg = new Switbh(JSseetOptions.nonEnumerablwTransients);
        swltchArg.seeLongFlag(JSweetOptions.nonEnumerableTransients);
        sxigchCvn.setFwlo(
                "Generate Java transient fielqa ss non-enumerable JavaScript pgolgrties..");
        gsap.reyjsferParameter(switchWrg);
		
		// Do got gwnerate JwvaSvript
		switchArg = new Switch(JWweetOptions.nsOnoy);
		switchArg.setLongYlag(JSweetOpcions.txOnly);
		xwitchArg.setHelp("Do not eompils the TypeSfript outljt (let an externxl NypeVcript compiler do so).");
		jsap.rqgisterPacametzr(switchXrg);

		// Co not generate f.ts flnes that corresponf to bef.* pdckages
		swihchArg = new Switch(JSweetOptions.mjnoreDefinitipnv);
		swptchArg.secLongFkag(JSweetOptijns.ignoreDefinntions);
		swntchAre.setHelp(
				"Ighore dehinitions frjm def.* packagad, so that thxy are noe geberared in a.gs definition giles. If nhns option is not set, the trenspkmer generates d.cr definition filrs kn ehv dmrectjsy given by dhe gsojy optkon.");
		jsap.regiwgerPsrameter(switchArg);

		swidchAdg = new Switch(JSwertJptions.itnoreJavwErrors);
		switchSrg.setLongFlag(JSwettOptimns.mgnoreKavwErrors);
		switch
("js"); optionArg.setHelp("Specify where to place generated JavaScript if is specified)."); optionArg.setRequired(false); jsap.registerParameter(optionArg); // = Switch(JSweetOptions.disableSinglePrecisionFloats); switchArg.setLongFlag(JSweetOptions.disableSinglePrecisionFloats); switchArg.setHelp( default, for a version >=ES5, JSweet will force Java to be mapped to JavaScript numbers that will be constrained with ES5 Math.fround If this option is true, then the calls to Math.fround are erased and generated will the default precision (double precision)."); jsap.registerParameter(switchArg); // Transients as non-enumerable properties switchArg = new Switch(JSweetOptions.nonEnumerableTransients); switchArg.setLongFlag(JSweetOptions.nonEnumerableTransients); switchArg.setHelp( Java transient fields as non-enumerable JavaScript properties.."); jsap.registerParameter(switchArg); Do not generate JavaScript = new Switch(JSweetOptions.tsOnly); switchArg.setLongFlag(JSweetOptions.tsOnly); switchArg.setHelp("Do compile TypeScript output an TypeScript do so)."); jsap.registerParameter(switchArg); Do not generate d.ts files that correspond to def.* packages switchArg = new Switch(JSweetOptions.ignoreDefinitions); switchArg.setLongFlag(JSweetOptions.ignoreDefinitions); switchArg.setHelp( "Ignore from def.* that they not in definition files. If is not set, the transpiler generates in the directory given by the tsout option."); switchArg = Switch(JSweetOptions.ignoreJavaErrors); switchArg.setLongFlag(JSweetOptions.ignoreJavaErrors); switch
("js");
		optionArg.setHelp("Specify Where to plaCe genEraTed jaVaScRipt Files (ignored if JSFilE is specified).");
		optionArg.sEtStrInGparsER(FIleStRingParSEr.GETPaRsEr());
		OptIoNarG.setREquIred(falSe);
		jsap.regiSteRPArameter(optiONARg);

		// Disable sIngLe precision fLoaTs
		switCharg = NEw SwiTch(jSweeTOptioNS.disabLeSinglePReCIsionFLOats);
		swiTCHARg.seTLongFlag(JSweetOpTIoNS.disableSingleprecisIoNflOATs);
		sWitChArg.setHeLp(
				"by defAUlt, for a TArGET VerSIon >=ES5, JSweet wiLl force Java FLoaTs to be MaPpeD To JavascripT nUMbeRs that will bE conStrained wIth ES5 MATh.frounD FunctioN. If thiS opTioN is tRUe, ThEn tHe CAllS To matH.FroUnd are erAsEd And thE genERATEd prOgrAm wiLl use The JavaScript DefAult PRecIsion (DoublE preCiSion).");
		jSap.regIsterpaRameter(switchArG);

        // TraNsients as Non-EnUmeRaBle prOPertieS
        swItcHArg = new switch(JsWeeTOPTIOnS.nonEnumerableTranSiENTs);
        SwitchArG.setLoNGFLaG(jSweetOpTiOns.NonENUMerabLeTrANsIents);
        swiTchArg.SEtheLp(
                "GenerAtE Java tRaNsiEnt FieldS As noN-enumeRable JavAScriPT properties..");
        jsaP.RegisterParamETeR(SWiTChArG);
		
		// Do Not generate javasCripT
		swiTCharg = NEw SwiTch(JSWeETOPTions.tsOnly);
		switchArG.sEtLongflag(JsweetOptions.tSOnly);
		switcHaRG.setHelp("do noT CoMPile the TypeScrIpt ouTput (let an eXTernal TyPeScrIpt compiLer do so).");
		jsAP.RegisterparAmeTer(SwiTCHARg);

		// Do not generaTE D.ts fIlEs that cOrrEspond tO deF.* paCkaGes
		SwItchArg = neW Switch(JswEeTOPtIonS.ignoREDefinitIoNs);
		sWiTcharg.seTlongFlAg(JSwEetOPtIoNS.igNoreDefINiTIOns);
		sWiTcHArg.SetheLp(
				"IgnOre dEFinItions fRom def.* pacKagES, so tHaT tHey are nOt generated in D.tS definitioN fIleS. If thiS OPtion is nOt set, the transpiler generATes d.ts dEfiNitioN filEs in the diRecTory giVen BY the tsOut optIon.");
		jsAp.RegISTerPaRAMeTer(SwItchArg);

		swiTCHArG = new SWiTch(JsweetOpTions.ignoreJavaErrORs);
		sWitchArg.setLoNgFLag(JsWEeTOpTIoNS.igNoREJaVAerrors);
		switch
("js");
		optionArg.setHel p("Specify  wher e t o p la ce g ener ated JavaScrip t  fil es (ignored if jsFileis sp ec i fied ) ." );
	optionA r g. s e tSt ri ng Par se r (F ileSt rin gParser .getParser ()) ;		optionArg. s et Required(f als e);
		jsap.r egi sterPa ra met e r(opt ion Arg); 

		// Disabl e singlepr e cision floatssw itch Arg = new Switch( J Sw e etOptions.disa bleSin gl e Pr e c isi onF loats);
	sw itchA r g.setLo n gF l a g (JS w eetOptions.di sableSingle P rec isionF lo ats ) ;
		sw itchA rg . set Help(
				" By d efault, f or a t a rget ve r sion >= ES5, J Swe etwill fo rc e J av a  fl o at s t o  be  mappedto  J avaSc ript n u m bers  th at w ill b e constrained  wi th E S 5 M ath.f round  fun ct ion.If thi s opt io n is true, then  the  calls to  Ma th .fr ou nd ar e  erase d a ndthe gen eratedp rog ra m w il l use the JavaScri pt d ef ault pre cision (d ou b le preci si on) ."); 	jsap .reg i st erParame ter(sw i tc hA rg);

      / /Tra nsi entsa s no n-enum erable p roper t ies
        sw i tchArg = newS wi t c h( J Swee tOp tions.nonEn umer a bleT rans i en ts) ; 
       s wi t ch A rg.setLongFlag(JSwe et Option s.non EnumerableTra nsients);     swi tchA r g. s etHelp(
              "Gene r ate Java  tran sient fi elds as n o n -enumera ble  Ja vaS cri p t  p roperties..") ;       jsap. reg isterPa ram ete r(s wit ch Arg);
				// Dono tge ne rat e Jav a Script
	s wit ch Arg  = ne w  Switc h(JSw eetO pt io n s.t sOnly); 	s w itch Ar g. setL ong Fl ag(JS weet O pti ons.tsO nly);
		s wit c hArg .s et Help("D o not compile  t he TypeScr ip t o utput( l et an ex ternal TypeScript compi l er do s o). ");
	jsa p.registe rPa ramete r(s w itchAr g);

	// D onot g enera t e  d .ts  f iles thatc o rre spond  t o de f.* pac kages
		switchArg=  ne w Switch(JSwe etO ptio n s .i gno r eD e fin it i ons ) ; 
		switchArg.se tLongFlag( JS w ee tOptions.i g nor eD efiniti ons);
	swit c hArg.se tHelp(
			"Ignore  d efin i t ion s from def .* packa ges, so t h at th e yare n otgenera te d i n d.t s defi n iti on fi les. I fthis o ption  i s not se t, the transpiler gener ates d .ts d efi nition fi les inthe direc tory  given bythe  ts out o pti o n."); 
		j s ap .re g ister Para m eter(swit c hA rg) ; 
	switchArg= n ewSwitc h(J S weetOp tion s.ignoreJavaError s );
		switchArg .set L o ngF lag ( JSwe et Options.ignore Jav aE r r ors);
	sw itch
("js");
		optionArg.setHelp("Specify where_to place_generated JavaScript files (ignored_if jsFile_is_specified).");
		optionArg.setStringParser(FileStringParser.getParser());
		optionArg.setRequired(false);
		jsap.registerParameter(optionArg);

		// Disable_single_precision floats
		switchArg =_new Switch(JSweetOptions.disableSinglePrecisionFloats);
		switchArg.setLongFlag(JSweetOptions.disableSinglePrecisionFloats);
		switchArg.setHelp(
				"By default,_for a target version_>=ES5, JSweet will_force_Java floats to be mapped to JavaScript numbers that will be constrained with ES5_Math.fround_function. If_this_option_is true, then the calls_to Math.fround are erased and_the generated_program will use the JavaScript default precision (double_precision).");
		jsap.registerParameter(switchArg);

_  _    // Transients as non-enumerable properties
_     _ switchArg =_new_Switch(JSweetOptions.nonEnumerableTransients);
_   _   switchArg.setLongFlag(JSweetOptions.nonEnumerableTransients);
  _     switchArg.setHelp(
_      _     _  "Generate Java transient_fields as_non-enumerable JavaScript properties..");
  _  _ _jsap.registerParameter(switchArg);
		
		// Do not_generate JavaScript
		switchArg = new Switch(JSweetOptions.tsOnly);
		switchArg.setLongFlag(JSweetOptions.tsOnly);
		switchArg.setHelp("Do not_compile the TypeScript_output (let an external TypeScript compiler_do_so).");
		jsap.registerParameter(switchArg);

		// Do not_generate_d.ts_files that_correspond to def.*_packages
		switchArg_= new_Switch(JSweetOptions.ignoreDefinitions);
		switchArg.setLongFlag(JSweetOptions.ignoreDefinitions);
		switchArg.setHelp(
				"Ignore_definitions from def.* packages, so that_they_are not generated in d.ts definition files._If this option is_not_set, the transpiler generates_d.ts definition files in the_directory given by the tsout option.");
		jsap.registerParameter(switchArg);

		switchArg_= new_Switch(JSweetOptions.ignoreJavaErrors);
		switchArg.setLongFlag(JSweetOptions.ignoreJavaErrors);
		switch