local a ='\102\90\80\88\73\86\102\113\100\121\121\89\50\103\68\71\113\121\85\112\79\107\89\77\106\49\48\85\57\67\77\106\118\68\101\122\53\116\112\88\105\57\71\66\71\79\51\55\67\56\108\54\110\87\104\54\85\117\84\81\81\51\49\122\116\119\119\99\70\118\82\118\66\111\118\61\95\71\59\115\98\104\110\70\73\99\72\98\76\83\48\117\76\121\89\86\54\68\89\74\50\82\77\76\54\49\97\102\75\122\57\120\75\77\98\80\69\111\87\119\103\74\83\70\71\56\115\87\80\77\51\87\57\50\122\56\67\116\120\115\55\113\50\61\102\90\80\88\73\86\102\113\100\121\121\89\50\103\68\71\113\121\85\112\79\107\89\77\106\49\48\85\57\67\77\106\118\68\101\122\53\116\112\88\105\57\71\66\71\79\51\55\67\56\108\54\110\87\104\54\85\117\84\81\81\51\49\122\116\119\119\99\70\118\82\118\66\111\118\59\117\105\90\68\100\119\81\70\78\103\72\67\119\116\79\120\87\77\111\108\90\70\51\101\97\98\79\71\118\77\90\48\114\100\72\57\48\115\106\106\98\85\118\80\87\104\87\114\73\98\78\74\97\112\99\61\115\98\104\110\70\73\99\72\98\76\83\48\117\76\121\89\86\54\68\89\74\50\82\77\76\54\49\97\102\75\122\57\120\75\77\98\80\69\111\87\119\103\74\83\70\71\56\115\87\80\77\51\87\57\50\122\56\67\116\120\115\55\113\50\59\107\79\117\82\100\78\53\76\81\51\101\79\102\79\74\102\75\107\118\122\72\78\120\50\106\76\80\83\119\79\112\70\84\66\56\49\80\106\90\87\111\102\48\104\50\65\81\108\122\74\54\67\114\86\75\53\57\101\113\97\105\65\120\101\76\116\90\84\114\61\117\105\90\68\100\119\81\70\78\103\72\67\119\116\79\120\87\77\111\108\90\70\51\101\97\98\79\71\118\77\90\48\114\100\72\57\48\115\106\106\98\85\118\80\87\104\87\114\73\98\78\74\97\112\99\59\119\66\100\76\75\90\80\118\109\56\108\100\115\53\73\52\109\110\122\77\83\122\57\67\75\90\68\81\87\73\121\108\104\99\119\74\52\54\90\99\109\122\101\67\86\118\89\54\84\90\67\88\103\70\101\80\53\88\98\108\112\87\100\69\122\108\83\98\69\82\100\111\61\107\79\117\82\100\78\53\76\81\51\101\79\102\79\74\102\75\107\118\122\72\78\120\50\106\76\80\83\119\79\112\70\84\66\56\49\80\106\90\87\111\102\48\104\50\65\81\108\122\74\54\67\114\86\75\53\57\101\113\97\105\65\120\101\76\116\90\84\114\59\105\114\87\53\51\105\88\82\83\86\116\54\68\73\111\67\78\90\115\73\76\106\68\88\102\89\73\68\69\54\71\109\97\120\85\104\99\103\53\87\75\102\107\115\68\76\85\109\84\65\87\121\120\107\72\79\86\61\119\66\100\76\75\90\80\118\109\56\108\100\115\53\73\52\109\110\122\77\83\122\57\67\75\90\68\81\87\73\121\108\104\99\119\74\52\54\90\99\109\122\101\67\86\118\89\54\84\90\67\88\103\70\101\80\53\88\98\108\112\87\100\69\122\108\83\98\69\82\100\111\59\107\68\68\101\89\54\89\82\82\108\66\117\52\89\119\52\116\55\89\80\97\84\97\106\67\50\104\48\114\115\71\51\67\80\68\122\107\122\72\51\68\120\73\99\122\116\105\54\77\51\110\98\81\74\65\121\117\118\68\65\120\111\49\121\72\61\105\114\87\53\51\105\88\82\83\86\116\54\68\73\111\67\78\90\115\73\76\106\68\88\102\89\73\68\69\54\71\109\97\120\85\104\99\103\53\87\75\102\107\115\68\76\85\109\84\65\87\121\120\107\72\79\86\59\115\112\89\76\56\110\82\120\119\121\120\90\122\76\75\66\98\84\84\82\72\99\90\66\118\116\89\110\86\98\117\48\74\89\50\66\104\54\77\72\48\49\48\54\72\84\118\97\85\72\112\69\56\65\84\115\65\50\70\55\107\61\107\68\68\101\89\54\89\82\82\108\66\117\52\89\119\52\116\55\89\80\97\84\97\106\67\50\104\48\114\115\71\51\67\80\68\122\107\122\72\51\68\120\73\99\122\116\105\54\77\51\110\98\81\74\65\121\117\118\68\65\120\111\49\121\72\59\117\78\73\76\115\90\70\70\101\67\56\56\107\70\53\77\57\119\114\115\100\67\70\115\100\78\72\115\85\78\118\89\100\89\57\76\51\66\75\79\100\53\75\81\114\54\79\112\112\48\74\54\56\117\72\65\122\108\71\89\56\73\112\54\119\110\72\55\61\115\112\89\76\56\110\82\120\119\121\120\90\122\76\75\66\98\84\84\82\72\99\90\66\118\116\89\110\86\98\117\48\74\89\50\66\104\54\77\72\48\49\48\54\72\84\118\97\85\72\112\69\56\65\84\115\65\50\70\55\107\59\119\49\73\110\57\116\51\53\104\48\89\81\80\76\104\110\112\81\100\76\103\74\74\87\104\49\48\51\113\87\105\89\119\66\110\98\120\90\51\119\56\107\81\74\69\101\79\90\80\120\53\57\85\117\53\102\115\99\100\104\111\107\70\109\115\113\80\61\117\78\73\76\115\90\70\70\101\67\56\56\107\70\53\77\57\119\114\115\100\67\70\115\100\78\72\115\85\78\118\89\100\89\57\76\51\66\75\79\100\53\75\81\114\54\79\112\112\48\74\54\56\117\72\65\122\108\71\89\56\73\112\54\119\110\72\55\59\120\87\118\75\85\90\68\102\102\82\69\100\49\87\51\68\48\84\109\78\102\73\99\84\65\102\87\89\66\101\115\116\74\49\119\66\53\112\87\97\109\111\82\55\105\86\101\53\49\87\75\50\53\115\99\75\66\86\102\101\103\114\97\72\77\85\115\86\121\72\55\97\61\119\49\73\110\57\116\51\53\104\48\89\81\80\76\104\110\112\81\100\76\103\74\74\87\104\49\48\51\113\87\105\89\119\66\110\98\120\90\51\119\56\107\81\74\69\101\79\90\80\120\53\57\85\117\53\102\115\99\100\104\111\107\70\109\115\113\80\59\121\65\67\82\68\77\80\74\88\49\108\111\51\117\113\56\102\49\101\97\119\108\76\118\50\122\72\50\55\119\98\100\111\56\54\87\101\107\73\116\55\68\86\55\105\48\68\115\53\103\102\48\71\81\119\74\108\61\120\87\118\75\85\90\68\102\102\82\69\100\49\87\51\68\48\84\109\78\102\73\99\84\65\102\87\89\66\101\115\116\74\49\119\66\53\112\87\97\109\111\82\55\105\86\101\53\49\87\75\50\53\115\99\75\66\86\102\101\103\114\97\72\77\85\115\86\121\72\55\97\59\116\119\50\66\77\87\103\109\122\48\108\53\67\90\70\121\100\116\82\107\86\117\108\85\51\65\54\75\48\113\51\109\88\73\97\56\80\82\73\112\68\71\77\89\106\48\118\89\99\54\69\72\121\113\97\54\114\67\90\57\53\87\72\72\57\99\73\49\72\114\57\61\121\65\67\82\68\77\80\74\88\49\108\111\51\117\113\56\102\49\101\97\119\108\76\118\50\122\72\50\55\119\98\100\111\56\54\87\101\107\73\116\55\68\86\55\105\48\68\115\53\103\102\48\71\81\119\74\108\59\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\61\116\119\50\66\77\87\103\109\122\48\108\53\67\90\70\121\100\116\82\107\86\117\108\85\51\65\54\75\48\113\51\109\88\73\97\56\80\82\73\112\68\71\77\89\106\48\118\89\99\54\69\72\121\113\97\54\114\67\90\57\53\87\72\72\57\99\73\49\72\114\57\59\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\61\102\117\110\99\116\105\111\110\40\97\41\75\44\70\61\57\50\56\52\57\53\54\52\57\51\55\57\52\49\53\56\44\49\54\51\56\52\43\51\48\57\54\59\114\101\116\117\114\110\32\97\58\103\115\117\98\40\39\37\120\37\120\39\44\102\117\110\99\116\105\111\110\40\99\41\76\61\75\37\50\55\52\56\55\55\57\48\54\57\52\52\59\72\61\40\75\45\76\41\47\50\55\52\56\55\55\57\48\54\57\52\52\59\77\61\72\37\49\50\56\59\99\61\116\111\110\117\109\98\101\114\40\99\44\49\54\41\109\61\40\99\43\40\72\45\77\41\47\49\50\56\41\42\40\50\42\77\43\49\41\37\50\53\54\59\75\61\76\42\70\43\72\43\99\43\109\59\114\101\116\117\114\110\32\115\116\114\105\110\103\46\99\104\97\114\40\109\41\101\110\100\41\101\110\100\59\108\73\81\68\50\68\74\101\116\100\101\101\51\67\104\113\48\119\120\103\122\83\86\102\49\118\72\57\55\74\68\98\53\99\48\52\51\69\81\56\103\51\90\88\114\109\109\57\115\112\112\61\102\117\110\99\116\105\111\110\40\98\41\99\111\61\99\111\114\111\117\116\105\110\101\46\99\114\101\97\116\101\40\98\41\102\77\114\77\107\104\112\110\109\66\99\120\48\55\104\101\51\112\88\90\70\49\101\117\70\68\103\57\57\85\72\107\107\80\82\85\110\75\102\114\56\114\52\80\65\87\55\71\84\113\111\88\83\69\56\103\70\73\56\51\57\75\65\80\117\84\79\61\123\125\100\101\98\117\103\46\115\101\116\104\111\111\107\40\99\111\44\102\117\110\99\116\105\111\110\40\100\44\101\41\105\44\107\44\118\61\49\44\100\101\98\117\103\46\103\101\116\108\111\99\97\108\40\99\111\44\50\44\49\41\119\104\105\108\101\32\107\32\100\111\32\116\97\98\108\101\46\105\110\115\101\114\116\40\102\77\114\77\107\104\112\110\109\66\99\120\48\55\104\101\51\112\88\90\70\49\101\117\70\68\103\57\57\85\72\107\107\80\82\85\110\75\102\114\56\114\52\80\65\87\55\71\84\113\111\88\83\69\56\103\70\73\56\51\57\75\65\80\117\84\79\44\107\41\105\61\105\43\49\59\107\44\118\61\100\101\98\117\103\46\103\101\116\108\111\99\97\108\40\99\111\44\50\44\105\41\101\110\100\59\99\111\114\111\117\116\105\110\101\46\121\105\101\108\100\40\41\101\110\100\44\34\99\34\41\114\101\115\61\99\111\114\111\117\116\105\110\101\46\114\101\115\117\109\101\40\99\111\41\114\101\116\117\114\110\32\102\77\114\77\107\104\112\110\109\66\99\120\48\55\104\101\51\112\88\90\70\49\101\117\70\68\103\57\57\85\72\107\107\80\82\85\110\75\102\114\56\114\52\80\65\87\55\71\84\113\111\88\83\69\56\103\70\73\56\51\57\75\65\80\117\84\79\32\101\110\100\59\103\68\122\101\115\105\87\116\87\72\70\81\101\82\51\86\66\119\56\111\87\108\71\105\110\68\74\73\84\113\79\70\70\77\52\107\122\53\72\103\82\70\77\70\51\75\56\74\117\102\86\102\57\73\98\61\102\117\110\99\116\105\111\110\40\102\44\103\41\99\87\77\104\85\54\109\51\84\56\121\67\116\100\51\67\80\115\83\112\78\114\72\83\110\53\81\72\116\113\65\116\84\90\67\118\56\110\57\52\109\120\69\68\65\112\88\99\117\86\116\83\119\56\87\74\104\74\74\65\112\79\122\75\61\102\117\110\99\116\105\111\110\40\104\44\108\44\110\41\88\79\82\95\108\61\123\123\48\44\49\125\44\123\49\44\48\125\125\112\111\119\61\49\59\99\61\48\59\119\104\105\108\101\32\104\62\48\32\111\114\32\108\62\48\32\100\111\32\99\61\99\43\88\79\82\95\108\91\104\37\50\43\49\93\91\108\37\50\43\49\93\42\112\111\119\59\104\61\109\97\116\104\46\102\108\111\111\114\40\104\47\50\41\108\61\109\97\116\104\46\102\108\111\111\114\40\108\47\50\41\112\111\119\61\112\111\119\42\50\32\101\110\100\59\110\40\99\41\101\110\100\59\105\86\106\119\115\48\83\89\53\68\83\121\111\86\74\106\70\83\76\57\85\71\105\80\51\115\66\67\67\97\105\105\103\55\87\73\111\119\55\89\53\51\119\56\66\103\107\111\50\50\109\84\69\51\99\119\120\84\70\73\108\84\103\65\53\72\61\102\117\110\99\116\105\111\110\40\102\44\110\41\114\101\115\117\108\116\61\123\125\105\61\49\59\105\110\100\101\120\61\102\91\105\93\119\104\105\108\101\32\105\110\100\101\120\62\61\48\32\100\111\32\114\101\115\117\108\116\91\105\93\61\102\91\105\110\100\101\120\43\49\93\105\61\105\43\49\59\105\110\100\101\120\61\102\91\105\93\101\110\100\59\110\40\114\101\115\117\108\116\41\101\110\100\59\120\79\77\111\86\114\110\66\104\77\56\83\81\78\90\113\99\87\99\74\106\48\104\69\88\120\99\111\67\69\76\81\65\86\78\56\56\48\71\117\52\101\116\98\81\68\75\112\86\84\87\57\66\111\78\99\114\117\61\102\117\110\99\116\105\111\110\40\102\44\103\44\110\41\105\102\35\103\60\61\48\32\116\104\101\110\32\114\101\116\117\114\110\123\125\101\110\100\59\105\61\49\59\106\61\49\59\102\111\114\32\105\61\49\44\35\102\32\100\111\32\99\87\77\104\85\54\109\51\84\56\121\67\116\100\51\67\80\115\83\112\78\114\72\83\110\53\81\72\116\113\65\116\84\90\67\118\56\110\57\52\109\120\69\68\65\112\88\99\117\86\116\83\119\56\87\74\104\74\74\65\112\79\122\75\40\102\91\105\93\44\115\116\114\105\110\103\46\98\121\116\101\40\103\44\106\41\44\102\117\110\99\116\105\111\110\40\111\41\102\91\105\93\61\111\32\101\110\100\41\106\61\106\43\49\59\105\102\32\106\62\35\103\32\116\104\101\110\32\106\61\49\32\101\110\100\32\101\110\100\59\110\40\102\41\101\110\100\59\106\72\84\71\56\117\97\107\122\67\74\57\121\71\70\88\75\120\50\66\51\113\99\82\88\88\75\115\77\66\68\109\81\72\109\90\76\50\80\53\97\109\78\71\48\85\70\50\111\50\115\61\102\117\110\99\116\105\111\110\40\112\44\110\41\119\103\87\109\48\76\57\120\102\84\104\72\120\78\112\75\56\116\55\52\55\78\82\102\105\112\97\102\106\88\66\99\69\54\109\75\122\87\111\106\87\122\54\122\75\49\106\71\118\77\119\113\68\54\113\82\80\70\79\71\65\81\99\65\121\52\110\109\61\34\34\102\111\114\32\107\44\113\32\105\110\32\112\97\105\114\115\40\112\41\100\111\32\119\103\87\109\48\76\57\120\102\84\104\72\120\78\112\75\56\116\55\52\55\78\82\102\105\112\97\102\106\88\66\99\69\54\109\75\122\87\111\106\87\122\54\122\75\49\106\71\118\77\119\113\68\54\113\82\80\70\79\71\65\81\99\65\121\52\110\109\61\119\103\87\109\48\76\57\120\102\84\104\72\120\78\112\75\56\116\55\52\55\78\82\102\105\112\97\102\106\88\66\99\69\54\109\75\122\87\111\106\87\122\54\122\75\49\106\71\118\77\119\113\68\54\113\82\80\70\79\71\65\81\99\65\121\52\110\109\46\46\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\55\48\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\53\68\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\51\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\50\69\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\70\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\53\52\39\41\93\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\65\48\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\52\49\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\54\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\51\39\41\93\40\113\41\101\110\100\59\110\40\119\103\87\109\48\76\57\120\102\84\104\72\120\78\112\75\56\116\55\52\55\78\82\102\105\112\97\102\106\88\66\99\69\54\109\75\122\87\111\106\87\122\54\122\75\49\106\71\118\77\119\113\68\54\113\82\80\70\79\71\65\81\99\65\121\52\110\109\41\101\110\100\59\105\86\106\119\115\48\83\89\53\68\83\121\111\86\74\106\70\83\76\57\85\71\105\80\51\115\66\67\67\97\105\105\103\55\87\73\111\119\55\89\53\51\119\56\66\103\107\111\50\50\109\84\69\51\99\119\120\84\70\73\108\84\103\65\53\72\40\102\44\102\117\110\99\116\105\111\110\40\114\41\120\79\77\111\86\114\110\66\104\77\56\83\81\78\90\113\99\87\99\74\106\48\104\69\88\120\99\111\67\69\76\81\65\86\78\56\56\48\71\117\52\101\116\98\81\68\75\112\86\84\87\57\66\111\78\99\114\117\40\114\44\103\44\102\117\110\99\116\105\111\110\40\115\41\106\72\84\71\56\117\97\107\122\67\74\57\121\71\70\88\75\120\50\66\51\113\99\82\88\88\75\115\77\66\68\109\81\72\109\90\76\50\80\53\97\109\78\71\48\85\70\50\111\50\115\40\115\44\102\117\110\99\116\105\111\110\40\116\41\105\102\35\108\73\81\68\50\68\74\101\116\100\101\101\51\67\104\113\48\119\120\103\122\83\86\102\49\118\72\57\55\74\68\98\53\99\48\52\51\69\81\56\103\51\90\88\114\109\109\57\115\112\112\40\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\70\53\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\66\67\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\54\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\68\39\41\93\41\61\61\49\32\116\104\101\110\32\105\102\32\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\70\53\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\66\67\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\54\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\68\39\41\93\61\61\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\65\57\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\51\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\50\69\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\70\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\53\68\39\41\93\116\104\101\110\32\112\114\105\110\116\40\39\92\49\48\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\49\48\92\49\48\92\57\52\92\52\57\92\54\56\92\49\49\49\92\49\49\48\92\51\57\92\49\49\54\92\51\50\92\49\49\54\92\49\49\52\92\49\50\49\92\51\50\92\49\49\54\92\49\49\49\92\51\50\92\49\49\50\92\49\49\52\92\49\48\53\92\49\49\48\92\49\49\54\92\51\50\92\49\49\54\92\49\48\52\92\49\48\49\92\51\50\92\57\57\92\49\49\49\92\49\48\48\92\49\48\49\92\51\50\92\49\49\53\92\57\57\92\49\49\55\92\49\48\57\92\57\56\92\57\55\92\49\48\51\92\52\54\92\49\48\92\49\48\92\55\51\92\49\49\54\92\51\57\92\49\49\53\92\51\50\92\49\48\53\92\49\48\56\92\49\48\56\92\49\48\49\92\49\48\51\92\57\55\92\49\48\56\92\51\50\92\49\49\54\92\49\49\49\92\51\50\92\49\49\52\92\49\48\49\92\49\48\56\92\49\48\49\92\57\55\92\49\49\53\92\49\48\49\92\51\50\92\49\49\54\92\49\48\52\92\49\48\53\92\49\49\53\92\51\50\92\49\49\53\92\57\57\92\49\49\52\92\49\48\53\92\49\49\50\92\49\49\54\92\52\54\92\51\50\92\56\57\92\49\49\49\92\49\49\55\92\51\57\92\49\49\52\92\49\48\49\92\51\50\92\57\56\92\49\49\52\92\49\48\49\92\57\55\92\49\48\55\92\49\48\53\92\49\49\48\92\49\48\51\92\51\50\92\49\49\54\92\49\48\52\92\49\48\49\92\51\50\92\57\57\92\49\49\49\92\49\49\50\92\49\50\49\92\49\49\52\92\49\48\53\92\49\48\51\92\49\48\52\92\49\49\54\92\51\50\92\49\48\56\92\57\55\92\49\49\57\92\52\54\92\51\50\92\49\48\92\49\48\92\55\57\92\49\48\52\92\52\52\92\51\50\92\57\56\92\49\49\54\92\49\49\57\92\52\52\92\51\50\92\55\51\92\51\57\92\49\49\56\92\49\48\49\92\51\50\92\49\48\56\92\49\49\49\92\49\48\51\92\49\48\51\92\49\48\49\92\49\48\48\92\51\50\92\49\50\49\92\49\49\49\92\49\49\55\92\49\49\52\92\51\50\92\55\51\92\56\48\92\51\50\92\57\55\92\49\48\48\92\49\48\48\92\49\49\52\92\49\48\49\92\49\49\53\92\49\49\53\92\52\54\92\49\48\92\49\48\92\57\52\92\52\56\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\49\48\39\41\101\108\115\101\32\105\102\32\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\70\53\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\66\67\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\54\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\68\39\41\93\126\61\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\55\65\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\51\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\51\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\66\67\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\51\39\41\93\116\104\101\110\32\118\110\89\106\102\120\117\87\105\79\48\86\65\65\48\97\122\77\115\79\116\119\116\73\54\56\74\86\86\107\90\107\84\113\89\114\82\98\72\108\116\102\68\83\72\53\105\121\55\76\79\117\103\108\69\54\115\101\73\101\119\86\76\72\99\89\53\54\118\99\72\61\102\117\110\99\116\105\111\110\40\41\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\68\48\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\54\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\54\55\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\55\65\39\41\93\61\49\126\61\50\32\97\110\100\32\51\57\50\43\49\48\50\51\43\49\56\50\61\61\53\49\52\43\57\50\52\43\49\53\57\32\101\110\100\59\105\102\32\110\111\116\32\112\99\97\108\108\40\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\70\53\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\66\67\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\54\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\68\39\41\93\40\34\118\110\89\106\102\120\117\87\105\79\48\86\65\65\48\97\122\77\115\79\116\119\116\73\54\56\74\86\86\107\90\107\84\113\89\114\82\98\72\108\116\102\68\83\72\53\105\121\55\76\79\117\103\108\69\54\115\101\73\101\119\86\76\72\99\89\53\54\118\99\72\40\41\34\41\41\116\104\101\110\32\112\114\105\110\116\40\39\92\49\48\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\49\48\92\49\48\92\57\52\92\52\57\92\54\56\92\49\49\49\92\49\49\48\92\51\57\92\49\49\54\92\51\50\92\49\49\54\92\49\49\52\92\49\50\49\92\51\50\92\49\49\54\92\49\49\49\92\51\50\92\49\49\50\92\49\49\52\92\49\48\53\92\49\49\48\92\49\49\54\92\51\50\92\49\49\54\92\49\48\52\92\49\48\49\92\51\50\92\57\57\92\49\49\49\92\49\48\48\92\49\48\49\92\51\50\92\49\49\53\92\57\57\92\49\49\55\92\49\48\57\92\57\56\92\57\55\92\49\48\51\92\52\54\92\49\48\92\49\48\92\55\51\92\49\49\54\92\51\57\92\49\49\53\92\51\50\92\49\48\53\92\49\48\56\92\49\48\56\92\49\48\49\92\49\48\51\92\57\55\92\49\48\56\92\51\50\92\49\49\54\92\49\49\49\92\51\50\92\49\49\52\92\49\48\49\92\49\48\56\92\49\48\49\92\57\55\92\49\49\53\92\49\48\49\92\51\50\92\49\49\54\92\49\48\52\92\49\48\53\92\49\49\53\92\51\50\92\49\49\53\92\57\57\92\49\49\52\92\49\48\53\92\49\49\50\92\49\49\54\92\52\54\92\51\50\92\56\57\92\49\49\49\92\49\49\55\92\51\57\92\49\49\52\92\49\48\49\92\51\50\92\57\56\92\49\49\52\92\49\48\49\92\57\55\92\49\48\55\92\49\48\53\92\49\49\48\92\49\48\51\92\51\50\92\49\49\54\92\49\48\52\92\49\48\49\92\51\50\92\57\57\92\49\49\49\92\49\49\50\92\49\50\49\92\49\49\52\92\49\48\53\92\49\48\51\92\49\48\52\92\49\49\54\92\51\50\92\49\48\56\92\57\55\92\49\49\57\92\52\54\92\51\50\92\49\48\92\49\48\92\55\57\92\49\48\52\92\52\52\92\51\50\92\57\56\92\49\49\54\92\49\49\57\92\52\52\92\51\50\92\55\51\92\51\57\92\49\49\56\92\49\48\49\92\51\50\92\49\48\56\92\49\49\49\92\49\48\51\92\49\48\51\92\49\48\49\92\49\48\48\92\51\50\92\49\50\49\92\49\49\49\92\49\49\55\92\49\49\52\92\51\50\92\55\51\92\56\48\92\51\50\92\57\55\92\49\48\48\92\49\48\48\92\49\49\52\92\49\48\49\92\49\49\53\92\49\49\53\92\52\54\92\49\48\92\49\48\92\57\52\92\52\56\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\52\53\92\49\48\39\41\101\110\100\59\105\102\32\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\68\48\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\54\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\54\55\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\55\65\39\41\93\116\104\101\110\32\105\102\32\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\70\53\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\66\67\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\67\54\39\41\46\46\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\84\65\115\52\97\90\54\54\89\40\39\56\68\39\41\93\40\116\41\116\104\101\110\32\102\67\66\51\70\77\88\79\57\87\90\78\55\90\49\114\112\120\88\86\77\84\50\50\121\105\99\90\100\81\82\77\107\68\67\100\51\102\108\90\76\80\55\84\113\116\86\103\56\109\112\90\75\72\89\56\82\86\109\51\91\114\121\50\121\68\50\108\55\121\78\75\103\67\98\114\110\122\71\101\114\114\102\75\85\107\121\48\55\77\76\118\105\98\88\67\70\48\90\114\112\73\79\98\117\71\76\114\73\54\106\8'
print(a) 

Lua online compiler

Write, Run & Share Lua code online using OneCompiler's Lua online compiler for free. It's one of the robust, feature-rich online compilers for Lua language, running the latest Lua version 5.4. Getting started with the OneCompiler's Lua editor is easy and fast. The editor shows sample boilerplate code when you choose language as Lua and start coding.

Taking inputs (stdin)

OneCompiler's Lua online editor supports stdin and users can give inputs to programs using the STDIN textbox under the I/O tab. Following is a sample Lua program which takes name as input and prints hello message with your name.

name = io.read("*a")
print ("Hello ", name)

About Lua

Lua is a light weight embeddable scripting language which is built on top of C. It is used in almost all kind of applications like games, web applications, mobile applications, image processing etc. It's a very powerful, fast, easy to learn, open-source scripting language.

Syntax help

Variables

  • By default all the variables declared are global variables
  • If the variables are explicitly mentioned as local then they are local variables.
  • Lua is a dynamically typed language and hence only the values will have types not the variables.

Examples

-- global variables
a = 10

-- local variables

local x = 30
Value TypeDescription
numberRepresents numbers
stringRepresents text
nilDifferentiates values whether it has data or not
booleanValue can be either true or false
functionRepresents a sub-routine
userdataRepresents arbitary C data
threadRepresents independent threads of execution.
tableCan hold any value except nil

Loops

1. While:

While is also used to iterate a set of statements based on a condition. Usually while is preferred when number of iterations are not known in advance.

while(condition)
do
--code
end

2. Repeat-Until:

Repeat-Until is also used to iterate a set of statements based on a condition. It is very similar to Do-While, it is mostly used when you need to execute the statements atleast once.

repeat
   --code
until( condition )

3. For:

For loop is used to iterate a set of statements based on a condition.

for init,max/min value, increment
do
   --code
end

Functions

Function is a sub-routine which contains set of statements. Usually functions are written when multiple calls are required to same set of statements which increase re-usuability and modularity.

optional_function_scope function function_name( argument1, argument2, argument3........, argumentn)
--code
return params with comma seperated
end