{"id":2972,"date":"2022-09-03T07:13:46","date_gmt":"2022-09-03T02:13:46","guid":{"rendered":"https:\/\/www.edopedia.com\/blog\/?p=2972"},"modified":"2022-09-03T07:13:49","modified_gmt":"2022-09-03T02:13:49","slug":"build-random-song-lyrics-generator-using-javascript-html5-css3","status":"publish","type":"post","link":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/","title":{"rendered":"Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3"},"content":{"rendered":"\n<p>In this tutorial, I will guide you how to create a <strong>random song lyrics generator<\/strong>. We will use HTML5, CSS3, and JavaScript to write this software.<\/p>\n\n\n\n<p>You can easily copy\/paste or download the complete source code of our <strong>random song lyrics generator<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Folder Structure of Random Song Lyrics Generator<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>data<ul><li>dictionary_ENG.js<\/li><li>syntax_ENG.dsl<\/li><\/ul><\/li><li>bg.jpg<\/li><li>config.js<\/li><li>generator.js<\/li><li>index.html<\/li><li>styles.css<\/li><li>utils.js<\/li><\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">data\/dictionary_ENG.js<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre class=\"CodeMirror\" data-setting=\"{&quot;showPanel&quot;:true,&quot;languageLabel&quot;:&quot;language&quot;,&quot;fullScreenButton&quot;:true,&quot;copyButton&quot;:true,&quot;mode&quot;:&quot;javascript&quot;,&quot;mime&quot;:&quot;text\/javascript&quot;,&quot;theme&quot;:&quot;material&quot;,&quot;lineNumbers&quot;:true,&quot;styleActiveLine&quot;:true,&quot;lineWrapping&quot;:false,&quot;readOnly&quot;:true,&quot;fileName&quot;:&quot;&quot;,&quot;language&quot;:&quot;JavaScript&quot;,&quot;maxHeight&quot;:&quot;400px&quot;,&quot;modeName&quot;:&quot;js&quot;}\">var adjectives={any:[&quot;different&quot;,&quot;used&quot;,&quot;important&quot;,&quot;every&quot;,&quot;large&quot;,&quot;available&quot;,&quot;popular&quot;,&quot;able&quot;,&quot;basic&quot;,&quot;known&quot;,&quot;various&quot;,&quot;difficult&quot;,&quot;several&quot;,&quot;united&quot;,&quot;historical&quot;,&quot;hot&quot;,&quot;useful&quot;,&quot;mental&quot;,&quot;scared&quot;,&quot;additional&quot;,&quot;emotional&quot;,&quot;old&quot;,&quot;political&quot;,&quot;similar&quot;,&quot;healthy&quot;,&quot;financial&quot;,&quot;medical&quot;,&quot;traditional&quot;,&quot;federal&quot;,&quot;entire&quot;,&quot;strong&quot;,&quot;actual&quot;,&quot;significant&quot;,&quot;successful&quot;,&quot;electrical&quot;,&quot;expensive&quot;,&quot;pregnant&quot;,&quot;intelligent&quot;,&quot;interesting&quot;,&quot;poor&quot;,&quot;happy&quot;,&quot;responsible&quot;,&quot;cute&quot;,&quot;helpful&quot;,&quot;recent&quot;,&quot;willing&quot;,&quot;nice&quot;,&quot;wonderful&quot;,&quot;impossible&quot;,&quot;serious&quot;,&quot;huge&quot;,&quot;rare&quot;,&quot;technical&quot;,&quot;typical&quot;,&quot;competitive&quot;,&quot;critical&quot;,&quot;electronic&quot;,&quot;immediate&quot;,&quot;aware&quot;,&quot;educational&quot;,&quot;environmental&quot;,&quot;global&quot;,&quot;legal&quot;,&quot;relevant&quot;,&quot;accurate&quot;,&quot;capable&quot;,&quot;dangerous&quot;,&quot;dramatic&quot;,&quot;efficient&quot;,&quot;powerful&quot;,&quot;foreign&quot;,&quot;hungry&quot;,&quot;practical&quot;,&quot;psychological&quot;,&quot;severe&quot;,&quot;suitable&quot;,&quot;numerous&quot;,&quot;sufficient&quot;,&quot;unusual&quot;,&quot;consistent&quot;,&quot;cultural&quot;,&quot;existing&quot;,&quot;famous&quot;,&quot;pure&quot;,&quot;afraid&quot;,&quot;obvious&quot;,&quot;careful&quot;,&quot;latter&quot;,&quot;obviously&quot;,&quot;unhappy&quot;,&quot;acceptable&quot;,&quot;aggressive&quot;,&quot;boring&quot;,&quot;distinct&quot;,&quot;eastern&quot;,&quot;logical&quot;,&quot;reasonable&quot;,&quot;strict&quot;,&quot;successfully&quot;,&quot;administrative&quot;,&quot;automatic&quot;,&quot;civil&quot;,&quot;former&quot;,&quot;massive&quot;,&quot;southern&quot;,&quot;unfair&quot;,&quot;visible&quot;,&quot;alive&quot;,&quot;angry&quot;,&quot;desperate&quot;,&quot;exciting&quot;,&quot;friendly&quot;,&quot;lucky&quot;,&quot;realistic&quot;,&quot;sorry&quot;,&quot;ugly&quot;,&quot;unlikely&quot;,&quot;anxious&quot;,&quot;comprehensive&quot;,&quot;curious&quot;,&quot;impressive&quot;,&quot;informal&quot;,&quot;inner&quot;,&quot;pleasant&quot;,&quot;sexual&quot;,&quot;sudden&quot;,&quot;terrible&quot;,&quot;unable&quot;,&quot;weak&quot;,&quot;wooden&quot;,&quot;asleep&quot;,&quot;confident&quot;,&quot;conscious&quot;,&quot;decent&quot;,&quot;embarrassed&quot;,&quot;guilty&quot;,&quot;lonely&quot;,&quot;mad&quot;,&quot;nervous&quot;,&quot;odd&quot;,&quot;remarkable&quot;,&quot;substantial&quot;,&quot;suspicious&quot;,&quot;tall&quot;,&quot;tiny&quot;]}\nvar modal_verbs={any:[&quot;might&quot;,&quot;can&quot;,&quot;must&quot;,&quot;could&quot;,&quot;may&quot;,&quot;shall&quot;,&quot;should&quot;,&quot;will&quot;,&quot;would&quot;]}\nvar modal_verbs_to={any:[&quot;want&quot;,&quot;like&quot;,&quot;love&quot;,&quot;need&quot;,&quot;try&quot;]}\nvar nouns={any:[&quot;people&quot;,&quot;history&quot;,&quot;way&quot;,&quot;art&quot;,&quot;world&quot;,&quot;information&quot;,&quot;map&quot;,&quot;two&quot;,&quot;family&quot;,&quot;government&quot;,&quot;health&quot;,&quot;system&quot;,&quot;computer&quot;,&quot;meat&quot;,&quot;year&quot;,&quot;thanks&quot;,&quot;music&quot;,&quot;person&quot;,&quot;reading&quot;,&quot;method&quot;,&quot;data&quot;,&quot;food&quot;,&quot;understanding&quot;,&quot;theory&quot;,&quot;law&quot;,&quot;bird&quot;,&quot;literature&quot;,&quot;problem&quot;,&quot;software&quot;,&quot;control&quot;,&quot;knowledge&quot;,&quot;power&quot;,&quot;ability&quot;,&quot;economics&quot;,&quot;love&quot;,&quot;internet&quot;,&quot;television&quot;,&quot;science&quot;,&quot;library&quot;,&quot;nature&quot;,&quot;fact&quot;,&quot;product&quot;,&quot;idea&quot;,&quot;temperature&quot;,&quot;investment&quot;,&quot;area&quot;,&quot;society&quot;,&quot;activity&quot;,&quot;story&quot;,&quot;industry&quot;,&quot;media&quot;,&quot;thing&quot;,&quot;oven&quot;,&quot;community&quot;,&quot;definition&quot;,&quot;safety&quot;,&quot;quality&quot;,&quot;development&quot;,&quot;language&quot;,&quot;management&quot;,&quot;player&quot;,&quot;variety&quot;,&quot;video&quot;,&quot;week&quot;,&quot;security&quot;,&quot;country&quot;,&quot;exam&quot;,&quot;movie&quot;,&quot;organization&quot;,&quot;equipment&quot;,&quot;physics&quot;,&quot;analysis&quot;,&quot;policy&quot;,&quot;series&quot;,&quot;thought&quot;,&quot;basis&quot;,&quot;boyfriend&quot;,&quot;direction&quot;,&quot;strategy&quot;,&quot;technology&quot;,&quot;army&quot;,&quot;camera&quot;,&quot;freedom&quot;,&quot;paper&quot;,&quot;environment&quot;,&quot;child&quot;,&quot;instance&quot;,&quot;month&quot;,&quot;truth&quot;,&quot;marketing&quot;,&quot;university&quot;,&quot;writing&quot;,&quot;article&quot;,&quot;department&quot;,&quot;difference&quot;,&quot;goal&quot;,&quot;news&quot;,&quot;audience&quot;,&quot;fishing&quot;,&quot;growth&quot;,&quot;income&quot;,&quot;marriage&quot;,&quot;user&quot;,&quot;combination&quot;,&quot;failure&quot;,&quot;meaning&quot;,&quot;medicine&quot;,&quot;philosophy&quot;,&quot;teacher&quot;,&quot;communication&quot;,&quot;night&quot;,&quot;chemistry&quot;,&quot;disease&quot;,&quot;disk&quot;,&quot;energy&quot;,&quot;nation&quot;,&quot;road&quot;,&quot;role&quot;,&quot;soup&quot;,&quot;advertising&quot;,&quot;location&quot;,&quot;success&quot;,&quot;addition&quot;,&quot;apartment&quot;,&quot;education&quot;,&quot;math&quot;,&quot;moment&quot;,&quot;painting&quot;,&quot;politics&quot;,&quot;attention&quot;,&quot;decision&quot;,&quot;event&quot;,&quot;property&quot;,&quot;shopping&quot;,&quot;student&quot;,&quot;wood&quot;,&quot;competition&quot;,&quot;distribution&quot;,&quot;entertainment&quot;,&quot;office&quot;,&quot;population&quot;,&quot;president&quot;,&quot;unit&quot;,&quot;category&quot;,&quot;cigarette&quot;,&quot;context&quot;,&quot;introduction&quot;,&quot;opportunity&quot;,&quot;performance&quot;,&quot;driver&quot;,&quot;flight&quot;,&quot;length&quot;,&quot;magazine&quot;,&quot;newspaper&quot;,&quot;relationship&quot;,&quot;teaching&quot;,&quot;cell&quot;,&quot;dealer&quot;,&quot;finding&quot;,&quot;lake&quot;,&quot;member&quot;,&quot;message&quot;,&quot;phone&quot;,&quot;scene&quot;,&quot;appearance&quot;,&quot;association&quot;,&quot;concept&quot;,&quot;customer&quot;,&quot;death&quot;,&quot;discussion&quot;,&quot;housing&quot;,&quot;inflation&quot;,&quot;insurance&quot;,&quot;mood&quot;,&quot;woman&quot;,&quot;advice&quot;,&quot;blood&quot;,&quot;effort&quot;,&quot;expression&quot;,&quot;importance&quot;,&quot;opinion&quot;,&quot;payment&quot;,&quot;reality&quot;,&quot;responsibility&quot;,&quot;situation&quot;,&quot;skill&quot;,&quot;statement&quot;,&quot;wealth&quot;,&quot;application&quot;,&quot;city&quot;,&quot;county&quot;,&quot;depth&quot;,&quot;estate&quot;,&quot;foundation&quot;,&quot;grandmother&quot;,&quot;heart&quot;,&quot;perspective&quot;,&quot;photo&quot;,&quot;recipe&quot;,&quot;studio&quot;,&quot;topic&quot;,&quot;collection&quot;,&quot;depression&quot;,&quot;imagination&quot;,&quot;passion&quot;,&quot;percentage&quot;,&quot;resource&quot;,&quot;setting&quot;,&quot;ad&quot;,&quot;agency&quot;,&quot;college&quot;,&quot;connection&quot;,&quot;criticism&quot;,&quot;debt&quot;,&quot;description&quot;,&quot;memory&quot;,&quot;patience&quot;,&quot;secretary&quot;,&quot;solution&quot;,&quot;administration&quot;,&quot;aspect&quot;,&quot;attitude&quot;,&quot;director&quot;,&quot;personality&quot;,&quot;psychology&quot;,&quot;recommendation&quot;,&quot;response&quot;,&quot;selection&quot;,&quot;storage&quot;,&quot;version&quot;,&quot;alcohol&quot;,&quot;argument&quot;,&quot;complaint&quot;,&quot;contract&quot;,&quot;emphasis&quot;,&quot;highway&quot;,&quot;loss&quot;,&quot;membership&quot;,&quot;possession&quot;,&quot;preparation&quot;,&quot;steak&quot;,&quot;union&quot;,&quot;agreement&quot;,&quot;cancer&quot;,&quot;currency&quot;,&quot;employment&quot;,&quot;engineering&quot;,&quot;entry&quot;,&quot;interaction&quot;,&quot;mixture&quot;,&quot;preference&quot;,&quot;region&quot;,&quot;republic&quot;,&quot;tradition&quot;,&quot;virus&quot;,&quot;actor&quot;,&quot;classroom&quot;,&quot;delivery&quot;,&quot;device&quot;,&quot;difficulty&quot;,&quot;drama&quot;,&quot;election&quot;,&quot;engine&quot;,&quot;football&quot;,&quot;guidance&quot;,&quot;hotel&quot;,&quot;owner&quot;,&quot;priority&quot;,&quot;protection&quot;,&quot;suggestion&quot;,&quot;tension&quot;,&quot;variation&quot;,&quot;anxiety&quot;,&quot;atmosphere&quot;,&quot;awareness&quot;,&quot;bath&quot;,&quot;bread&quot;,&quot;candidate&quot;,&quot;climate&quot;,&quot;comparison&quot;,&quot;confusion&quot;,&quot;construction&quot;,&quot;elevator&quot;,&quot;emotion&quot;,&quot;employee&quot;,&quot;employer&quot;,&quot;guest&quot;,&quot;height&quot;,&quot;leadership&quot;,&quot;mall&quot;,&quot;manager&quot;,&quot;operation&quot;,&quot;recording&quot;,&quot;sample&quot;,&quot;transportation&quot;,&quot;charity&quot;,&quot;cousin&quot;,&quot;disaster&quot;,&quot;editor&quot;,&quot;efficiency&quot;,&quot;excitement&quot;,&quot;extent&quot;,&quot;feedback&quot;,&quot;guitar&quot;,&quot;homework&quot;,&quot;leader&quot;,&quot;mom&quot;,&quot;outcome&quot;,&quot;permission&quot;,&quot;presentation&quot;,&quot;promotion&quot;,&quot;reflection&quot;,&quot;refrigerator&quot;,&quot;resolution&quot;,&quot;revenue&quot;,&quot;session&quot;,&quot;singer&quot;,&quot;tennis&quot;,&quot;basket&quot;,&quot;bonus&quot;,&quot;cabinet&quot;,&quot;childhood&quot;,&quot;church&quot;,&quot;clothes&quot;,&quot;coffee&quot;,&quot;dinner&quot;,&quot;drawing&quot;,&quot;hair&quot;,&quot;hearing&quot;,&quot;initiative&quot;,&quot;judgment&quot;,&quot;lab&quot;,&quot;measurement&quot;,&quot;mode&quot;,&quot;mud&quot;,&quot;orange&quot;,&quot;poetry&quot;,&quot;police&quot;,&quot;possibility&quot;,&quot;procedure&quot;,&quot;queen&quot;,&quot;ratio&quot;,&quot;relation&quot;,&quot;restaurant&quot;,&quot;satisfaction&quot;,&quot;sector&quot;,&quot;signature&quot;,&quot;significance&quot;,&quot;song&quot;,&quot;tooth&quot;,&quot;town&quot;,&quot;vehicle&quot;,&quot;volume&quot;,&quot;wife&quot;,&quot;accident&quot;,&quot;airport&quot;,&quot;appointment&quot;,&quot;arrival&quot;,&quot;assumption&quot;,&quot;baseball&quot;,&quot;chapter&quot;,&quot;committee&quot;,&quot;conversation&quot;,&quot;database&quot;,&quot;enthusiasm&quot;,&quot;error&quot;,&quot;explanation&quot;,&quot;farmer&quot;,&quot;gate&quot;,&quot;girl&quot;,&quot;hall&quot;,&quot;historian&quot;,&quot;hospital&quot;,&quot;injury&quot;,&quot;instruction&quot;,&quot;maintenance&quot;,&quot;manufacturer&quot;,&quot;meal&quot;,&quot;perception&quot;,&quot;pie&quot;,&quot;poem&quot;,&quot;presence&quot;,&quot;proposal&quot;,&quot;reception&quot;,&quot;replacement&quot;,&quot;revolution&quot;,&quot;river&quot;,&quot;son&quot;,&quot;speech&quot;,&quot;tea&quot;,&quot;village&quot;,&quot;warning&quot;,&quot;winner&quot;,&quot;worker&quot;,&quot;writer&quot;,&quot;assistance&quot;,&quot;breath&quot;,&quot;buyer&quot;,&quot;chest&quot;,&quot;chocolate&quot;,&quot;conclusion&quot;,&quot;contribution&quot;,&quot;cookie&quot;,&quot;courage&quot;,&quot;dad&quot;,&quot;desk&quot;,&quot;drawer&quot;,&quot;establishment&quot;,&quot;examination&quot;,&quot;garbage&quot;,&quot;grocery&quot;,&quot;honey&quot;,&quot;impression&quot;,&quot;improvement&quot;,&quot;independence&quot;,&quot;insect&quot;,&quot;inspection&quot;,&quot;inspector&quot;,&quot;king&quot;,&quot;ladder&quot;,&quot;menu&quot;,&quot;penalty&quot;,&quot;piano&quot;,&quot;potato&quot;,&quot;profession&quot;,&quot;professor&quot;,&quot;quantity&quot;,&quot;reaction&quot;,&quot;requirement&quot;,&quot;salad&quot;,&quot;sister&quot;,&quot;supermarket&quot;,&quot;tongue&quot;,&quot;weakness&quot;,&quot;wedding&quot;,&quot;affair&quot;,&quot;ambition&quot;,&quot;analyst&quot;,&quot;apple&quot;,&quot;assignment&quot;,&quot;assistant&quot;,&quot;bathroom&quot;,&quot;bedroom&quot;,&quot;beer&quot;,&quot;birthday&quot;,&quot;celebration&quot;,&quot;championship&quot;,&quot;cheek&quot;,&quot;client&quot;,&quot;consequence&quot;,&quot;departure&quot;,&quot;diamond&quot;,&quot;dirt&quot;,&quot;ear&quot;,&quot;fortune&quot;,&quot;friendship&quot;,&quot;funeral&quot;,&quot;gene&quot;,&quot;girlfriend&quot;,&quot;hat&quot;,&quot;indication&quot;,&quot;intention&quot;,&quot;lady&quot;,&quot;midnight&quot;,&quot;negotiation&quot;,&quot;obligation&quot;,&quot;passenger&quot;,&quot;pizza&quot;,&quot;platform&quot;,&quot;poet&quot;,&quot;pollution&quot;,&quot;recognition&quot;,&quot;reputation&quot;,&quot;shirt&quot;,&quot;sir&quot;,&quot;speaker&quot;,&quot;stranger&quot;,&quot;surgery&quot;,&quot;sympathy&quot;,&quot;tale&quot;,&quot;throat&quot;,&quot;trainer&quot;,&quot;uncle&quot;,&quot;youth&quot;]}\nvar verbs={any:[&quot;be&quot;,&quot;have&quot;,&quot;do&quot;,&quot;say&quot;,&quot;get&quot;,&quot;make&quot;,&quot;go&quot;,&quot;see&quot;,&quot;know&quot;,&quot;take&quot;,&quot;think&quot;,&quot;come&quot;,&quot;give&quot;,&quot;look&quot;,&quot;use&quot;,&quot;find&quot;,&quot;want&quot;,&quot;tell&quot;,&quot;put&quot;,&quot;mean&quot;,&quot;become&quot;,&quot;leave&quot;,&quot;work&quot;,&quot;need&quot;,&quot;feel&quot;,&quot;seem&quot;,&quot;ask&quot;,&quot;show&quot;,&quot;try&quot;,&quot;call&quot;,&quot;keep&quot;,&quot;provide&quot;,&quot;hold&quot;,&quot;turn&quot;,&quot;follow&quot;,&quot;begin&quot;,&quot;bring&quot;,&quot;like&quot;,&quot;going&quot;,&quot;help&quot;,&quot;start&quot;,&quot;run&quot;,&quot;write&quot;,&quot;set&quot;,&quot;move&quot;,&quot;play&quot;,&quot;pay&quot;,&quot;hear&quot;,&quot;include&quot;,&quot;believe&quot;,&quot;allow&quot;,&quot;meet&quot;,&quot;lead&quot;,&quot;live&quot;,&quot;stand&quot;,&quot;happen&quot;,&quot;carry&quot;,&quot;talk&quot;,&quot;appear&quot;,&quot;produce&quot;,&quot;sit&quot;,&quot;offer&quot;,&quot;consider&quot;,&quot;expect&quot;,&quot;suggest&quot;,&quot;let&quot;,&quot;read&quot;,&quot;require&quot;,&quot;continue&quot;,&quot;lose&quot;,&quot;add&quot;,&quot;change&quot;,&quot;fall&quot;,&quot;remain&quot;,&quot;remember&quot;,&quot;buy&quot;,&quot;speak&quot;,&quot;stop&quot;,&quot;send&quot;,&quot;receive&quot;,&quot;decide&quot;,&quot;win&quot;,&quot;understand&quot;,&quot;describe&quot;,&quot;develop&quot;,&quot;agree&quot;,&quot;open&quot;,&quot;reach&quot;,&quot;build&quot;,&quot;involve&quot;,&quot;spend&quot;,&quot;return&quot;,&quot;draw&quot;,&quot;die&quot;,&quot;hope&quot;,&quot;create&quot;,&quot;walk&quot;,&quot;sell&quot;,&quot;wait&quot;,&quot;cause&quot;,&quot;pass&quot;,&quot;lie&quot;,&quot;accept&quot;,&quot;watch&quot;,&quot;raise&quot;,&quot;base&quot;,&quot;apply&quot;,&quot;break&quot;,&quot;explain&quot;,&quot;learn&quot;,&quot;increase&quot;,&quot;cover&quot;,&quot;grow&quot;,&quot;claim&quot;,&quot;report&quot;,&quot;support&quot;,&quot;cut&quot;,&quot;form&quot;,&quot;stay&quot;,&quot;contain&quot;,&quot;reduce&quot;,&quot;establish&quot;,&quot;join&quot;,&quot;wish&quot;,&quot;achieve&quot;,&quot;seek&quot;,&quot;choose&quot;,&quot;deal&quot;,&quot;face&quot;,&quot;fail&quot;,&quot;serve&quot;,&quot;end&quot;,&quot;kill&quot;,&quot;occur&quot;,&quot;drive&quot;,&quot;represent&quot;,&quot;rise&quot;,&quot;discuss&quot;,&quot;love&quot;,&quot;pick&quot;,&quot;place&quot;,&quot;argue&quot;,&quot;prove&quot;,&quot;wear&quot;,&quot;catch&quot;,&quot;enjoy&quot;,&quot;eat&quot;,&quot;introduce&quot;,&quot;enter&quot;,&quot;present&quot;,&quot;arrive&quot;,&quot;ensure&quot;,&quot;point&quot;,&quot;plan&quot;,&quot;pull&quot;,&quot;refer&quot;,&quot;act&quot;,&quot;relate&quot;,&quot;affect&quot;,&quot;close&quot;,&quot;identify&quot;,&quot;manage&quot;,&quot;thank&quot;,&quot;compare&quot;,&quot;announce&quot;,&quot;obtain&quot;,&quot;note&quot;,&quot;forget&quot;,&quot;indicate&quot;,&quot;wonder&quot;,&quot;maintain&quot;,&quot;publish&quot;,&quot;suffer&quot;,&quot;avoid&quot;,&quot;express&quot;,&quot;suppose&quot;,&quot;finish&quot;,&quot;determine&quot;,&quot;design&quot;,&quot;listen&quot;,&quot;save&quot;,&quot;tend&quot;,&quot;treat&quot;,&quot;control&quot;,&quot;share&quot;,&quot;remove&quot;,&quot;throw&quot;,&quot;visit&quot;,&quot;exist&quot;,&quot;encourage&quot;,&quot;force&quot;,&quot;reflect&quot;,&quot;admit&quot;,&quot;assume&quot;,&quot;smile&quot;,&quot;prepare&quot;,&quot;replace&quot;,&quot;fill&quot;,&quot;improve&quot;,&quot;mention&quot;,&quot;fight&quot;,&quot;intend&quot;,&quot;miss&quot;,&quot;discover&quot;,&quot;drop&quot;,&quot;hit&quot;,&quot;push&quot;,&quot;prevent&quot;,&quot;refuse&quot;,&quot;regard&quot;,&quot;lay&quot;,&quot;reveal&quot;,&quot;teach&quot;,&quot;answer&quot;,&quot;operate&quot;,&quot;state&quot;,&quot;depend&quot;,&quot;enable&quot;,&quot;record&quot;,&quot;check&quot;,&quot;complete&quot;,&quot;cost&quot;,&quot;sound&quot;,&quot;laugh&quot;,&quot;realise&quot;,&quot;extend&quot;,&quot;arise&quot;,&quot;notice&quot;,&quot;define&quot;,&quot;examine&quot;,&quot;fit&quot;,&quot;study&quot;,&quot;bear&quot;,&quot;hang&quot;,&quot;recognise&quot;,&quot;shake&quot;,&quot;sign&quot;,&quot;attend&quot;,&quot;fly&quot;,&quot;gain&quot;,&quot;perform&quot;,&quot;result&quot;,&quot;travel&quot;,&quot;adopt&quot;,&quot;confirm&quot;,&quot;protect&quot;,&quot;demand&quot;,&quot;stare&quot;,&quot;imagine&quot;,&quot;attempt&quot;,&quot;beat&quot;,&quot;born&quot;,&quot;associate&quot;,&quot;care&quot;,&quot;marry&quot;,&quot;collect&quot;,&quot;voice&quot;,&quot;employ&quot;,&quot;issue&quot;,&quot;release&quot;,&quot;emerge&quot;,&quot;mind&quot;,&quot;aim&quot;,&quot;deny&quot;,&quot;mark&quot;,&quot;shoot&quot;,&quot;appoint&quot;,&quot;order&quot;,&quot;supply&quot;,&quot;drink&quot;,&quot;observe&quot;,&quot;reply&quot;,&quot;ignore&quot;,&quot;link&quot;,&quot;propose&quot;,&quot;ring&quot;,&quot;settle&quot;,&quot;strike&quot;,&quot;press&quot;,&quot;respond&quot;,&quot;arrange&quot;,&quot;survive&quot;,&quot;concentrate&quot;,&quot;lift&quot;,&quot;approach&quot;,&quot;cross&quot;,&quot;test&quot;,&quot;charge&quot;,&quot;experience&quot;,&quot;touch&quot;,&quot;acquire&quot;,&quot;commit&quot;,&quot;demonstrate&quot;,&quot;grant&quot;,&quot;prefer&quot;,&quot;repeat&quot;,&quot;sleep&quot;,&quot;threaten&quot;,&quot;feed&quot;,&quot;insist&quot;,&quot;launch&quot;,&quot;limit&quot;,&quot;promote&quot;,&quot;deliver&quot;,&quot;measure&quot;,&quot;own&quot;,&quot;retain&quot;,&quot;assess&quot;,&quot;attract&quot;,&quot;belong&quot;,&quot;consist&quot;,&quot;contribute&quot;,&quot;hide&quot;,&quot;promise&quot;,&quot;reject&quot;,&quot;cry&quot;,&quot;impose&quot;,&quot;invite&quot;,&quot;sing&quot;,&quot;vary&quot;,&quot;warn&quot;,&quot;address&quot;,&quot;declare&quot;,&quot;destroy&quot;,&quot;worry&quot;,&quot;divide&quot;,&quot;head&quot;,&quot;name&quot;,&quot;stick&quot;,&quot;nod&quot;,&quot;recognize&quot;,&quot;train&quot;,&quot;attack&quot;,&quot;clear&quot;,&quot;combine&quot;,&quot;handle&quot;,&quot;influence&quot;,&quot;realize&quot;,&quot;recommend&quot;,&quot;shout&quot;,&quot;spread&quot;,&quot;undertake&quot;,&quot;account&quot;,&quot;select&quot;,&quot;climb&quot;,&quot;contact&quot;,&quot;recall&quot;,&quot;secure&quot;,&quot;step&quot;,&quot;transfer&quot;,&quot;welcome&quot;,&quot;conclude&quot;,&quot;disappear&quot;,&quot;display&quot;,&quot;dress&quot;,&quot;illustrate&quot;,&quot;imply&quot;,&quot;organise&quot;,&quot;direct&quot;,&quot;escape&quot;,&quot;generate&quot;,&quot;investigate&quot;,&quot;remind&quot;,&quot;advise&quot;,&quot;afford&quot;,&quot;earn&quot;,&quot;hand&quot;,&quot;inform&quot;,&quot;rely&quot;,&quot;succeed&quot;,&quot;approve&quot;,&quot;burn&quot;,&quot;fear&quot;,&quot;vote&quot;,&quot;conduct&quot;,&quot;cope&quot;,&quot;derive&quot;,&quot;elect&quot;,&quot;gather&quot;,&quot;jump&quot;,&quot;last&quot;,&quot;match&quot;,&quot;matter&quot;,&quot;persuade&quot;,&quot;ride&quot;,&quot;shut&quot;,&quot;blow&quot;,&quot;estimate&quot;,&quot;recover&quot;,&quot;score&quot;,&quot;slip&quot;,&quot;count&quot;,&quot;hate&quot;,&quot;attach&quot;,&quot;exercise&quot;,&quot;house&quot;,&quot;lean&quot;,&quot;roll&quot;,&quot;wash&quot;,&quot;accompany&quot;,&quot;accuse&quot;,&quot;bind&quot;,&quot;explore&quot;,&quot;judge&quot;,&quot;rest&quot;,&quot;steal&quot;,&quot;comment&quot;,&quot;exclude&quot;,&quot;focus&quot;,&quot;hurt&quot;,&quot;stretch&quot;,&quot;withdraw&quot;,&quot;back&quot;,&quot;fix&quot;,&quot;justify&quot;,&quot;knock&quot;,&quot;pursue&quot;,&quot;switch&quot;,&quot;appreciate&quot;,&quot;benefit&quot;,&quot;lack&quot;,&quot;list&quot;,&quot;occupy&quot;,&quot;permit&quot;,&quot;surround&quot;,&quot;abandon&quot;,&quot;blame&quot;,&quot;complain&quot;,&quot;connect&quot;,&quot;construct&quot;,&quot;dominate&quot;,&quot;engage&quot;,&quot;paint&quot;,&quot;quote&quot;,&quot;view&quot;,&quot;acknowledge&quot;,&quot;dismiss&quot;,&quot;incorporate&quot;,&quot;interpret&quot;,&quot;proceed&quot;,&quot;search&quot;,&quot;separate&quot;,&quot;stress&quot;,&quot;alter&quot;,&quot;analyse&quot;,&quot;arrest&quot;,&quot;bother&quot;,&quot;defend&quot;,&quot;expand&quot;,&quot;implement&quot;,&quot;possess&quot;,&quot;review&quot;,&quot;suit&quot;,&quot;tie&quot;,&quot;assist&quot;,&quot;calculate&quot;,&quot;glance&quot;,&quot;mix&quot;,&quot;question&quot;,&quot;resolve&quot;,&quot;rule&quot;,&quot;suspect&quot;,&quot;wake&quot;,&quot;appeal&quot;,&quot;challenge&quot;,&quot;clean&quot;,&quot;damage&quot;,&quot;guess&quot;,&quot;reckon&quot;,&quot;restore&quot;,&quot;restrict&quot;,&quot;specify&quot;,&quot;constitute&quot;,&quot;convert&quot;,&quot;distinguish&quot;,&quot;submit&quot;,&quot;trust&quot;,&quot;urge&quot;,&quot;feature&quot;,&quot;land&quot;,&quot;locate&quot;,&quot;predict&quot;,&quot;preserve&quot;,&quot;solve&quot;,&quot;sort&quot;,&quot;struggle&quot;,&quot;cast&quot;,&quot;cook&quot;,&quot;dance&quot;,&quot;invest&quot;,&quot;lock&quot;,&quot;owe&quot;,&quot;pour&quot;,&quot;shift&quot;,&quot;kick&quot;,&quot;kiss&quot;,&quot;light&quot;,&quot;purchase&quot;,&quot;race&quot;,&quot;retire&quot;,&quot;bend&quot;,&quot;breathe&quot;,&quot;celebrate&quot;,&quot;date&quot;,&quot;fire&quot;,&quot;monitor&quot;,&quot;print&quot;,&quot;register&quot;,&quot;resist&quot;,&quot;behave&quot;,&quot;comprise&quot;,&quot;decline&quot;,&quot;detect&quot;,&quot;finance&quot;,&quot;organize&quot;,&quot;overcome&quot;,&quot;range&quot;,&quot;swing&quot;,&quot;differ&quot;,&quot;drag&quot;,&quot;guarantee&quot;,&quot;oppose&quot;,&quot;pack&quot;,&quot;pause&quot;,&quot;relax&quot;,&quot;resign&quot;,&quot;rush&quot;,&quot;store&quot;,&quot;waste&quot;,&quot;compete&quot;,&quot;expose&quot;,&quot;found&quot;,&quot;install&quot;,&quot;mount&quot;,&quot;negotiate&quot;,&quot;sink&quot;,&quot;split&quot;,&quot;whisper&quot;,&quot;assure&quot;,&quot;award&quot;,&quot;borrow&quot;,&quot;bury&quot;,&quot;capture&quot;,&quot;deserve&quot;,&quot;distribute&quot;,&quot;doubt&quot;,&quot;enhance&quot;,&quot;phone&quot;,&quot;sweep&quot;,&quot;tackle&quot;,&quot;advance&quot;,&quot;cease&quot;,&quot;concern&quot;,&quot;emphasise&quot;,&quot;exceed&quot;,&quot;qualify&quot;,&quot;slide&quot;,&quot;strengthen&quot;,&quot;transform&quot;,&quot;favour&quot;,&quot;grab&quot;,&quot;lend&quot;,&quot;participate&quot;,&quot;perceive&quot;,&quot;pose&quot;,&quot;practise&quot;,&quot;satisfy&quot;,&quot;scream&quot;,&quot;smoke&quot;,&quot;sustain&quot;,&quot;tear&quot;,&quot;adapt&quot;,&quot;adjust&quot;,&quot;ban&quot;,&quot;consult&quot;,&quot;dig&quot;,&quot;dry&quot;,&quot;highlight&quot;,&quot;outline&quot;,&quot;reinforce&quot;,&quot;shrug&quot;,&quot;snap&quot;,&quot;absorb&quot;,&quot;amount&quot;,&quot;block&quot;,&quot;confine&quot;,&quot;delay&quot;,&quot;encounter&quot;,&quot;entitle&quot;,&quot;plant&quot;,&quot;pretend&quot;,&quot;request&quot;,&quot;rid&quot;,&quot;sail&quot;,&quot;trace&quot;,&quot;trade&quot;,&quot;wave&quot;,&quot;cite&quot;,&quot;dream&quot;,&quot;flow&quot;,&quot;fulfil&quot;,&quot;lower&quot;,&quot;process&quot;,&quot;react&quot;,&quot;seize&quot;,&quot;allocate&quot;,&quot;burst&quot;,&quot;communicate&quot;,&quot;defeat&quot;,&quot;double&quot;,&quot;exploit&quot;,&quot;fund&quot;,&quot;govern&quot;,&quot;hurry&quot;,&quot;injure&quot;,&quot;pray&quot;,&quot;protest&quot;,&quot;sigh&quot;,&quot;smell&quot;,&quot;stir&quot;,&quot;swim&quot;,&quot;undergo&quot;,&quot;wander&quot;,&quot;anticipate&quot;,&quot;collapse&quot;,&quot;compose&quot;,&quot;confront&quot;,&quot;ease&quot;,&quot;eliminate&quot;,&quot;evaluate&quot;,&quot;grin&quot;,&quot;interview&quot;,&quot;remark&quot;,&quot;suspend&quot;,&quot;weigh&quot;,&quot;wipe&quot;,&quot;wrap&quot;,&quot;attribute&quot;,&quot;balance&quot;,&quot;bet&quot;,&quot;bound&quot;,&quot;cancel&quot;,&quot;condemn&quot;,&quot;convince&quot;,&quot;correspond&quot;,&quot;dare&quot;,&quot;devise&quot;,&quot;free&quot;,&quot;gaze&quot;,&quot;guide&quot;,&quot;inspire&quot;,&quot;modify&quot;,&quot;murder&quot;,&quot;prompt&quot;,&quot;reverse&quot;,&quot;rub&quot;,&quot;slow&quot;,&quot;spot&quot;,&quot;swear&quot;,&quot;telephone&quot;,&quot;wind&quot;,&quot;admire&quot;,&quot;bite&quot;,&quot;crash&quot;,&quot;disturb&quot;,&quot;greet&quot;,&quot;hesitate&quot;,&quot;induce&quot;,&quot;integrate&quot;,&quot;knit&quot;,&quot;line&quot;,&quot;load&quot;,&quot;murmur&quot;,&quot;render&quot;,&quot;shine&quot;,&quot;swallow&quot;,&quot;tap&quot;,&quot;translate&quot;,&quot;yield&quot;,&quot;accommodate&quot;,&quot;age&quot;,&quot;assert&quot;,&quot;await&quot;,&quot;book&quot;,&quot;brush&quot;,&quot;chase&quot;,&quot;comply&quot;,&quot;copy&quot;,&quot;criticise&quot;,&quot;devote&quot;,&quot;evolve&quot;,&quot;flee&quot;,&quot;forgive&quot;,&quot;initiate&quot;,&quot;interrupt&quot;,&quot;leap&quot;,&quot;mutter&quot;,&quot;overlook&quot;,&quot;risk&quot;,&quot;shape&quot;,&quot;spell&quot;,&quot;squeeze&quot;,&quot;trap&quot;,&quot;undermine&quot;,&quot;witness&quot;,&quot;beg&quot;,&quot;drift&quot;,&quot;echo&quot;,&quot;emphasize&quot;,&quot;enforce&quot;,&quot;exchange&quot;,&quot;fade&quot;,&quot;float&quot;,&quot;freeze&quot;,&quot;hire&quot;,&quot;in&quot;,&quot;object&quot;,&quot;pop&quot;,&quot;provoke&quot;,&quot;recruit&quot;,&quot;research&quot;,&quot;sense&quot;,&quot;situate&quot;,&quot;stimulate&quot;,&quot;abolish&quot;,&quot;administer&quot;,&quot;allege&quot;,&quot;command&quot;,&quot;consume&quot;,&quot;convey&quot;,&quot;correct&quot;,&quot;educate&quot;,&quot;equip&quot;,&quot;execute&quot;,&quot;fetch&quot;,&quot;frown&quot;,&quot;invent&quot;,&quot;march&quot;,&quot;park&quot;,&quot;progress&quot;,&quot;reserve&quot;,&quot;respect&quot;,&quot;twist&quot;,&quot;unite&quot;,&quot;value&quot;,&quot;assign&quot;,&quot;cater&quot;,&quot;concede&quot;,&quot;conceive&quot;,&quot;disclose&quot;,&quot;envisage&quot;,&quot;exhibit&quot;,&quot;export&quot;,&quot;extract&quot;,&quot;fancy&quot;,&quot;inherit&quot;,&quot;insert&quot;,&quot;instruct&quot;,&quot;interfere&quot;,&quot;isolate&quot;,&quot;opt&quot;,&quot;peer&quot;,&quot;persist&quot;,&quot;plead&quot;,&quot;price&quot;,&quot;regret&quot;,&quot;regulate&quot;,&quot;repair&quot;,&quot;resemble&quot;,&quot;resume&quot;,&quot;speed&quot;,&quot;spin&quot;,&quot;spring&quot;,&quot;update&quot;,&quot;advocate&quot;,&quot;assemble&quot;,&quot;boost&quot;,&quot;breed&quot;,&quot;cling&quot;,&quot;commission&quot;,&quot;conceal&quot;,&quot;contemplate&quot;,&quot;criticize&quot;,&quot;decorate&quot;,&quot;descend&quot;,&quot;drain&quot;,&quot;edit&quot;,&quot;embrace&quot;,&quot;excuse&quot;,&quot;explode&quot;,&quot;facilitate&quot;,&quot;flash&quot;,&quot;fold&quot;,&quot;function&quot;,&quot;grasp&quot;,&quot;incur&quot;,&quot;intervene&quot;,&quot;label&quot;,&quot;please&quot;,&quot;rescue&quot;,&quot;strip&quot;,&quot;tip&quot;,&quot;upset&quot;,&quot;advertise&quot;,&quot;aid&quot;,&quot;centre&quot;,&quot;classify&quot;,&quot;coincide&quot;,&quot;confess&quot;,&quot;contract&quot;,&quot;crack&quot;,&quot;creep&quot;,&quot;decrease&quot;,&quot;deem&quot;,&quot;dispose&quot;,&quot;dissolve&quot;,&quot;dump&quot;,&quot;endorse&quot;,&quot;formulate&quot;,&quot;import&quot;,&quot;impress&quot;,&quot;market&quot;,&quot;reproduce&quot;,&quot;scatter&quot;,&quot;schedule&quot;,&quot;ship&quot;,&quot;shop&quot;,&quot;spare&quot;,&quot;sponsor&quot;,&quot;stage&quot;,&quot;suck&quot;,&quot;sue&quot;,&quot;tempt&quot;,&quot;vanish&quot;,&quot;access&quot;,&quot;commence&quot;,&quot;contrast&quot;,&quot;depict&quot;,&quot;discharge&quot;,&quot;draft&quot;,&quot;enclose&quot;,&quot;enquire&quot;,&quot;erect&quot;,&quot;file&quot;,&quot;halt&quot;,&quot;hunt&quot;,&quot;inspect&quot;,&quot;omit&quot;,&quot;originate&quot;,&quot;praise&quot;,&quot;precede&quot;,&quot;relieve&quot;,&quot;reward&quot;,&quot;round&quot;,&quot;seal&quot;,&quot;signal&quot;,&quot;smash&quot;,&quot;spoil&quot;,&quot;subject&quot;,&quot;target&quot;,&quot;taste&quot;,&quot;tighten&quot;,&quot;top&quot;,&quot;tremble&quot;,&quot;tuck&quot;,&quot;warm&quot;,&quot;activate&quot;,&quot;amend&quot;,&quot;arouse&quot;,&quot;bang&quot;,&quot;bid&quot;,&quot;bow&quot;,&quot;campaign&quot;,&quot;characterise&quot;,&quot;circulate&quot;,&quot;clarify&quot;,&quot;compensate&quot;,&quot;compile&quot;,&quot;cool&quot;,&quot;couple&quot;,&quot;depart&quot;,&quot;deprive&quot;,&quot;desire&quot;,&quot;diminish&quot;,&quot;drown&quot;,&quot;embark&quot;,&quot;entail&quot;,&quot;entertain&quot;,&quot;figure&quot;,&quot;fling&quot;,&quot;guard&quot;,&quot;manufacture&quot;,&quot;melt&quot;,&quot;neglect&quot;,&quot;plunge&quot;,&quot;project&quot;,&quot;rain&quot;,&quot;reassure&quot;,&quot;rent&quot;,&quot;revive&quot;,&quot;sentence&quot;,&quot;shed&quot;,&quot;slam&quot;,&quot;spill&quot;,&quot;stem&quot;,&quot;sum&quot;,&quot;summon&quot;,&quot;supplement&quot;,&quot;suppress&quot;,&quot;surprise&quot;,&quot;tax&quot;,&quot;thrust&quot;,&quot;tour&quot;,&quot;transmit&quot;,&quot;transport&quot;,&quot;weaken&quot;,&quot;widen&quot;,&quot;bounce&quot;,&quot;calm&quot;,&quot;characterize&quot;,&quot;chat&quot;,&quot;clutch&quot;,&quot;confer&quot;,&quot;conform&quot;,&quot;confuse&quot;,&quot;convict&quot;,&quot;counter&quot;,&quot;debate&quot;,&quot;dedicate&quot;,&quot;dictate&quot;,&quot;disagree&quot;,&quot;effect&quot;,&quot;flood&quot;,&quot;forbid&quot;,&quot;grip&quot;,&quot;heat&quot;,&quot;long&quot;,&quot;manipulate&quot;,&quot;merge&quot;,&quot;part&quot;,&quot;pin&quot;,&quot;position&quot;,&quot;prescribe&quot;,&quot;proclaim&quot;,&quot;punish&quot;,&quot;rebuild&quot;,&quot;regain&quot;,&quot;sack&quot;,&quot;strain&quot;,&quot;stroke&quot;,&quot;substitute&quot;,&quot;supervise&quot;,&quot;term&quot;,&quot;time&quot;,&quot;toss&quot;,&quot;underline&quot;,&quot;abuse&quot;,&quot;accumulate&quot;,&quot;alert&quot;,&quot;arm&quot;,&quot;attain&quot;,&quot;boast&quot;,&quot;boil&quot;,&quot;carve&quot;,&quot;cheer&quot;,&quot;colour&quot;,&quot;compel&quot;,&quot;crawl&quot;,&quot;crush&quot;,&quot;curl&quot;,&quot;deposit&quot;,&quot;differentiate&quot;,&quot;dip&quot;,&quot;dislike&quot;,&quot;divert&quot;,&quot;embody&quot;,&quot;exert&quot;,&quot;exhaust&quot;,&quot;fine&quot;,&quot;frighten&quot;,&quot;fuck&quot;,&quot;gasp&quot;,&quot;honour&quot;,&quot;inhibit&quot;,&quot;motivate&quot;,&quot;multiply&quot;,&quot;narrow&quot;,&quot;obey&quot;,&quot;penetrate&quot;,&quot;picture&quot;,&quot;presume&quot;,&quot;prevail&quot;,&quot;pronounce&quot;,&quot;rate&quot;,&quot;renew&quot;,&quot;revise&quot;,&quot;rip&quot;,&quot;scan&quot;,&quot;scratch&quot;,&quot;shiver&quot;]}\nvar article={singular:{any:[&quot;a&quot;,&quot;the&quot;]},plural:{any:[&quot;the&quot;]}}\nvar personal_pronouns_subject={singular:{first:[&quot;I&quot;],second:[&quot;you&quot;],third:[&quot;he&quot;,&quot;she&quot;,&quot;it&quot;]},plural:{first:[&quot;we&quot;],second:[&quot;you&quot;],third:[&quot;they&quot;]}}\nvar personal_pronouns_object={singular:{first:[&quot;me&quot;],second:[&quot;you&quot;],third:[&quot;him&quot;,&quot;her&quot;,&quot;it&quot;]},plural:{first:[&quot;us&quot;],second:[&quot;you&quot;],third:[&quot;them&quot;]}}\nvar possessive_pronouns={singular:{first:[&quot;my&quot;],second:[&quot;your&quot;],third:[&quot;his&quot;,&quot;her&quot;,&quot;its&quot;]},plural:{first:[&quot;our&quot;],second:[&quot;your&quot;],third:[&quot;their&quot;]}}\nvar indefinite_pronouns={singular:{any:[&quot;anybody&quot;,&quot;anyone&quot;,&quot;anything&quot;,&quot;nobody&quot;,&quot;noone&quot;,&quot;everybody&quot;,&quot;everyone&quot;,&quot;everything&quot;]}}\nvar demonstrative_pronouns={singular:{any:[&quot;this&quot;,&quot;that&quot;],},plural:{any:[&quot;these&quot;,&quot;those&quot;]}}\n\nvar persons=[&quot;first&quot;,&quot;second&quot;,&quot;third&quot;]\nvar number=[&quot;singular&quot;,&quot;plural&quot;]\nvar tenses=[&quot;present&quot;,&quot;future&quot;,&quot;futureperfect&quot;,&quot;past&quot;,&quot;presentperfect&quot;,&quot;imperfect&quot;,&quot;conditional&quot;,&quot;pastconditional&quot;,&quot;pastperfect&quot;,&quot;presentprogressive&quot;,&quot;futureprogressive&quot;]\nvar genders=[&quot;masculine&quot;,&quot;feminine&quot;,&quot;neuter&quot;]\n\nvar wordTypes={ART: article,NOU: nouns,VRB: verbs,ADJ: adjectives,PPS: personal_pronouns_subject,PPO: personal_pronouns_object,PSP: possessive_pronouns,MVB: modal_verbs,MVT: modal_verbs_to,IDP: indefinite_pronouns,DEP: demonstrative_pronouns}<\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">data\/syntax_ENG.dsl<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre class=\"CodeMirror\" data-setting=\"{&quot;showPanel&quot;:true,&quot;languageLabel&quot;:&quot;language&quot;,&quot;fullScreenButton&quot;:true,&quot;copyButton&quot;:true,&quot;mode&quot;:&quot;null&quot;,&quot;mime&quot;:&quot;text\/plain&quot;,&quot;theme&quot;:&quot;material&quot;,&quot;lineNumbers&quot;:true,&quot;styleActiveLine&quot;:true,&quot;lineWrapping&quot;:false,&quot;readOnly&quot;:true,&quot;fileName&quot;:&quot;&quot;,&quot;language&quot;:&quot;Plain Text&quot;,&quot;maxHeight&quot;:&quot;400px&quot;,&quot;modeName&quot;:&quot;text&quot;}\"># ---- Syntax documentation----\n# each non-comment line in this file represents a sentence structure\n# every literal (e.g. XYZ) must have a corresponding field in the generator's wordTypes array, like wordTypes.XYZ, which holds all the applicable words of that type\n#\n# ---- Special characters ----\n#   # line comment\n#     (blank space) and (high precedence)\n#   | xor (low precedence)\n#   ? optional\n#   : apply function\n# &quot;xyz&quot;: xyz as an absolute string (will not be modified)\n#\n# ============ EXAMPLE ============\n#\n# ((A|B) C:x D? E F&quot;.&quot;)\n#\n# yields an array with 4 sentences\n# \n# A x(C) D E F.\n# A x(C) E F.\n# B x(C) D E F.\n# B x(C) E F.\n\n(((ART|DEP|PSP) ADJ? NOU)|PPS|IDP) (VRB:conjugate|MVB:conjugate|(MVT:conjugate VRB)) ((((ART|DEP|PSP) ADJ? NOU)|PPO) ADJ?:adverb)?(&quot;.&quot;|&quot;!&quot;|&quot;...&quot;)\nART ADJ NOU VRB:conjugate<\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">bg.jpg<\/h2>\n\n\n\n<p>You can <a href=\"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/09\/bg.jpg\" target=\"_blank\" rel=\"noreferrer noopener\" download=\"\">click here<\/a> to download this image file.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/09\/bg-1024x640.jpg\" alt=\"\" class=\"wp-image-2974\" srcset=\"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/09\/bg-1024x640.jpg 1024w, https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/09\/bg-300x188.jpg 300w, https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/09\/bg-768x480.jpg 768w, https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/09\/bg-1536x960.jpg 1536w, https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/09\/bg-2048x1280.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">config.js<\/h2>\n\n\n\n<p>Here we will use Ultralingua API and Datamuse API to get multilingual translation dictionary and word-finding query engine functionality respectively.<\/p>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre class=\"CodeMirror\" data-setting=\"{&quot;showPanel&quot;:true,&quot;languageLabel&quot;:&quot;language&quot;,&quot;fullScreenButton&quot;:true,&quot;copyButton&quot;:true,&quot;mode&quot;:&quot;javascript&quot;,&quot;mime&quot;:&quot;text\/javascript&quot;,&quot;theme&quot;:&quot;material&quot;,&quot;lineNumbers&quot;:true,&quot;styleActiveLine&quot;:true,&quot;lineWrapping&quot;:false,&quot;readOnly&quot;:true,&quot;fileName&quot;:&quot;&quot;,&quot;language&quot;:&quot;JavaScript&quot;,&quot;maxHeight&quot;:&quot;400px&quot;,&quot;modeName&quot;:&quot;js&quot;}\">var config = {\n    conjugationApiUrl: &quot;http:\/\/api.ultralingua.com\/api\/2.0\/conjugations\/eng\/&quot;,\n    semanticsApiUrl: &quot;http:\/\/api.datamuse.com\/words&quot;,\n    defaultSettings: {\n        language: &quot;ENG&quot;\n    }\n}<\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">generator.js<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre class=\"CodeMirror\" data-setting=\"{&quot;showPanel&quot;:true,&quot;languageLabel&quot;:&quot;language&quot;,&quot;fullScreenButton&quot;:true,&quot;copyButton&quot;:true,&quot;mode&quot;:&quot;javascript&quot;,&quot;mime&quot;:&quot;text\/javascript&quot;,&quot;theme&quot;:&quot;material&quot;,&quot;lineNumbers&quot;:true,&quot;styleActiveLine&quot;:true,&quot;lineWrapping&quot;:false,&quot;readOnly&quot;:true,&quot;fileName&quot;:&quot;&quot;,&quot;language&quot;:&quot;JavaScript&quot;,&quot;maxHeight&quot;:&quot;400px&quot;,&quot;modeName&quot;:&quot;js&quot;}\">function generator(initSettings) {\n\tvar settings\n\tvar sentenceStructures\n\n\tvar initGenerator = function() {\n\t\tsetSettings(initSettings)\n\t\tgetDslFile(&quot;data\/syntax_&quot; + settings.language + &quot;.dsl&quot;)\n\t}\n\n\tvar addSentenceStructure = function(newSentenceStructure) {\n\t\tif(newSentenceStructure instanceof SentenceStructure) {\n\t\t\tsentenceStructures.concat(newSentenceStructure)\n\t\t}\n\t}\n\n\tvar getSettings = function() {\n\t\treturn settings\n\t}\n\n\tvar setSettings = function(newSettings) {\n\t\tif(newSettings &amp;&amp; newSettings instanceof GeneratorSettings) {\n\t\t\tsettings = newSettings\n\t\t} else {\n\t\t\tsettings = new GeneratorSettings(config.defaultSettings.language)\n\t\t}\n\t}\n\n\tvar createSentence = function() {\n\t\treturn getRandomSentence()\n\t}\n\n\tfunction conjugate() {\n\t\tfunction getConjugationResult(result) {\n\t\t\tvar conjugation = result[0][&quot;conjugations&quot;].filter(function(c) {\n\t\t\t\tvar tenseMatches = c[&quot;partofspeech&quot;][&quot;tense&quot;] == sentence.tense\n\t\t\t\tvar personMatches = !c[&quot;partofspeech&quot;][&quot;person&quot;] || c[&quot;partofspeech&quot;][&quot;person&quot;].indexOf(sentence.person) &gt;= 0\n\t\t\t\tvar numberMatches = !c[&quot;partofspeech&quot;][&quot;number&quot;] || c[&quot;partofspeech&quot;][&quot;number&quot;].indexOf(sentence.number) &gt;= 0\n\t\t\t\treturn tenseMatches &amp;&amp; personMatches &amp;&amp; numberMatches\n\t\t\t})\n\t\t\tdocument.getElementById(&quot;lyrics&quot;).textContent = conjugation[0][&quot;surfaceform&quot;]\n\t\t}\n\n\t\tutils.conjugationApiCall(verb, sentence, getConjugationResult)\n\t}\n\n\tvar getRandomWord = function (type, sentence, modifyFunction) {\n\t\tif (!type || !wordTypes[type]) {\n\t\t\tvar typeKeys = Object.keys(wordTypes)\n\t\t\ttype = typeKeys[Math.floor(Math.random() * typeKeys.length)]\n\t\t}\n\t\tvar words = getWordArrayForSentence(wordTypes[type], sentence)\n\t\treturn words[Math.floor(Math.random() * words.length)]\n\t}\n\n\tfunction getRandomSentence() {\n\t\tvar person = persons[Math.floor(Math.random() * persons.length)]\n\t\tvar personNumber = number[Math.floor(Math.random() * number.length)]\n\t\tvar tense = tenses[Math.floor(Math.random() * tenses.length)]\n\t\tvar gender = person == &quot;third&quot; &amp;&amp; number == &quot;singular&quot; ? genders[Math.floor(Math.random()*genders.length)] : undefined\n\t\tvar language = settings.language\n\n\t\treturn new Sentence(\n\t\t\t&quot;&quot;,\n\t\t\tperson,\n\t\t\tpersonNumber,\n\t\t\ttense,\n\t\t\tgender,\n\t\t\tnull,\n\t\t\tlanguage\n\t\t)\n\t}\n\n\tfunction getDslFile(url) {\n\t\tvar request = new XMLHttpRequest();\n\t\trequest.open(&quot;GET&quot;, url, true)\n\t\trequest.onreadystatechange = function (){\n\t\t\tif(request.readyState === 4) {\n\t\t\t\tif(request.status === 200 || request.status == 0) {\n\t\t\t\t\tparseDsl(request.responseText);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\trequest.send(null);\n\t}\n\n\tfunction validateDslLine(line) {\n\t\t\/\/ #1 parenthesis and quotation\n\t\tvar parenthesisCount = 0\n\t\tif(line.match(\/\\&quot;\/g) &amp;&amp; line.match(\/\\&quot;\/g).length % 2 != 0) {\n\t\t\tconsole.error(&quot;DSL validation failed: bad quotation&quot;)\n\t\t\treturn false\n\t\t}\n\t\tfor(var c in line) {\n\t\t\tif(!line.hasOwnProperty(c)) continue\n\t\t\tif(!line[c].match(\/[\\w|$|\\(|\\)|:|\\?| |\\||\\&quot;]\/)) {\n\t\t\t\tvar quotationsBefore = line.substring(0, c).match(\/\\&quot;\/g) ? line.substring(0, c).match(\/\\&quot;\/g).length : []\n\t\t\t\tvar quotationsAfter = line.substring(parseInt(c)+1).match(\/\\&quot;\/g) ? line.substring(parseInt(c)+1).match(\/\\&quot;\/g).length : []\n\t\t\t\tif(quotationsBefore % 2 != 1 || quotationsAfter % 2 != 1) {\n\t\t\t\t\tvar blanks = &quot;&quot;\n\t\t\t\t\tvar n = 0\n\t\t\t\t\twhile(n &lt; c) {\n\t\t\t\t\t\tblanks += &quot; &quot;\n\t\t\t\t\t\tn++\n\t\t\t\t\t}\n\t\t\t\t\tconsole.error(&quot;DSL validation failed: unexpected character - '&quot; + line[c] + &quot;'\\n&quot; + line + &quot;\\n&quot; + blanks + &quot;^&quot;)\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\tif(line[c] == &quot;(&quot;) {\n\t\t\t\tparenthesisCount += 1\n\t\t\t} else if(line[c] == &quot;)&quot;) {\n\t\t\t\tparenthesisCount -= 1\n\t\t\t\tif(parenthesisCount &lt; 0) {\n\t\t\t\t\tconsole.error(&quot;DSL validation failed: bad parenthesis&quot;)\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif(parenthesisCount != 0) {\n\t\t\tconsole.error(&quot;DSL validation failed: bad parenthesis&quot;)\n\t\t\treturn false\n\t\t}\n\t\treturn true\n\t}\n\n\tfunction createSentenceStructureFromDslLine(dslLine) {\n\t\tvar sentenceStructure = new SentenceStructure()\n\n\t\tfunction resolve(str, subParts) {\n\t\t\tvar parenthesisIndex = str.indexOf(&quot;(&quot;)\n\t\t\tvar blankIndex = str.indexOf(&quot; &quot;)\n\t\t\tvar pipeIndex = str.indexOf(&quot;|&quot;)\n\n\t\t\tif(parenthesisIndex &gt;= 0 &amp;&amp; parenthesisIndex &lt; blankIndex) {\n\t\t\t\tvar innerPartClose = str.indexOf(&quot;)&quot;)\n\t\t\t\tvar innerPartOpen = str.lastIndexOf(&quot;(&quot;)\n\t\t\t\tvar innerPart = str.substring(innerPartOpen, innerPartClose)\n\t\t\t} else if(blankIndex &gt;= 0 &amp;&amp; parenthesisIndex &gt; blankIndex) {\n\t\t\t\t\/\/ var part = \n\t\t\t} else if(pipeIndex &gt;= 0) {\n\n\t\t\t}\n\t\t}\n\n\t\tvar rawParts = resolve(dslLine, [])\n\n\t\t\/\/ for(var rawPart of rawParts) {\n\t\t\/\/ \tvar part = new SentenceStructurePart(type, modifyFunction)\n\t\t\/\/ \tsentenceStructure.addPart(part)\n\t\t\/\/ }\n\n\t\taddSentenceStructure(sentenceStructure)\n\t}\n\n\tfunction parseDsl(dslContent) {\n\t\tvar lines = dslContent.split(\/\\r?\\n\/)\n\t\tlines = lines.filter(function(line) {\n\t\t\treturn line &amp;&amp; line.indexOf(&quot;#&quot;) != 0\n\t\t})\n\t\tfor(var line of lines) {\n\t\t\tif(validateDslLine(line)) {\n\t\t\t\tvar sentenceStructure = createSentenceStructureFromDslLine(line)\n\t\t\t\taddSentenceStructure(sentenceStructure)\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction getWordArrayForSentence(array, sentence) {\n\t\tif(array &amp;&amp; sentence) {\n\t\t\tif(array.any) return array.any\n\t\t\tif(array[sentence.number]) {\n\t\t\t\tif(array[sentence.number].any) return array[sentence.number].any\n\t\t\t\telse if(array[sentence.number][sentence.person]) return array[sentence.number][sentence.person]\n\t\t\t}\n\t\t}\n\t\treturn null\n\t}\n\n\tinitGenerator()\n\n\treturn {\n\t\tgetSettings: getSettings,\n\t\tsetSettings: setSettings,\n\t\tcreateSentence: createSentence,\n\t\taddSentenceStructure: addSentenceStructure\n\t}\n}\n\nclass Sentence {\n\tconstructor(text, person, number, tense, gender, structure, language) {\n\t\tthis.text = text\n\t\tthis.person = person\n\t\tthis.number = number\n\t\tthis.tense = tense\n\t\tthis.gender = gender\n\t\tthis.structure = structure\n\t\tthis.language = language\n\t}\n}\n\nclass SentenceStructure {\n\tconstructor(parts) {\n\t\tthis.parts = parts\n\t}\n\n\taddPart(part) {\n\t\tpart.added = true\n\t\tif(this.parts) {\n\t\t\tthis.parts = this.parts.concat(part)\n\t\t} else {\n\t\t\tthis.parts = [part]\n\t\t}\n\t}\n}\n\nclass SentenceStructurePart {\n\tconstructor(type, modifyFunction) {\n\t\tthis.type = type\n\t\tthis.modifyFunction = modifyFunction\n\t\tthis.added = false\n\t}\n}\n\nclass GeneratorSettings {\n\tconstructor(language) {\n\t\tthis.language = language\n\t}\n}<\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">index.html<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre class=\"CodeMirror\" data-setting=\"{&quot;showPanel&quot;:true,&quot;languageLabel&quot;:&quot;language&quot;,&quot;fullScreenButton&quot;:true,&quot;copyButton&quot;:true,&quot;mode&quot;:&quot;htmlmixed&quot;,&quot;mime&quot;:&quot;text\/html&quot;,&quot;theme&quot;:&quot;material&quot;,&quot;lineNumbers&quot;:true,&quot;styleActiveLine&quot;:true,&quot;lineWrapping&quot;:false,&quot;readOnly&quot;:true,&quot;fileName&quot;:&quot;&quot;,&quot;language&quot;:&quot;HTML&quot;,&quot;maxHeight&quot;:&quot;400px&quot;,&quot;modeName&quot;:&quot;html&quot;}\">&lt;!DOCTYPE html&gt;\n&lt;html lang=&quot;en&quot;&gt;\n    &lt;head&gt;\n        &lt;meta charset=&quot;utf-8&quot;&gt;\n        &lt;script src=&quot;config.js&quot;&gt;&lt;\/script&gt;\n        &lt;script src=&quot;data\/dictionary_ENG.js&quot;&gt;&lt;\/script&gt;\n        &lt;script src=&quot;utils.js&quot;&gt;&lt;\/script&gt;\n        &lt;script src=&quot;generator.js&quot;&gt;&lt;\/script&gt;\n        &lt;link rel=&quot;stylesheet&quot; href=&quot;styles.css&quot;&gt;\n        &lt;link href=&quot;https:\/\/fonts.googleapis.com\/css?family=Thasadith&quot; rel=&quot;stylesheet&quot;&gt;\n    &lt;\/head&gt;\n    &lt;body&gt;\n        &lt;div id=&quot;background-image&quot;&gt;&lt;\/div&gt;\n        &lt;button onClick=&quot;generator.createSentence()&quot;&gt;Create&lt;\/button&gt;\n        &lt;br&gt;\n        &lt;div id=&quot;lyrics&quot;&gt;&lt;\/div&gt;\n    &lt;\/body&gt;\n    &lt;script&gt;\n        var generator;\n\n        (function() {\n            generator = generator()\n        })()\n    &lt;\/script&gt;\n&lt;\/html&gt;<\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">styles.css<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre class=\"CodeMirror\" data-setting=\"{&quot;showPanel&quot;:true,&quot;languageLabel&quot;:&quot;language&quot;,&quot;fullScreenButton&quot;:true,&quot;copyButton&quot;:true,&quot;mode&quot;:&quot;css&quot;,&quot;mime&quot;:&quot;text\/css&quot;,&quot;theme&quot;:&quot;material&quot;,&quot;lineNumbers&quot;:true,&quot;styleActiveLine&quot;:true,&quot;lineWrapping&quot;:false,&quot;readOnly&quot;:true,&quot;fileName&quot;:&quot;&quot;,&quot;language&quot;:&quot;CSS&quot;,&quot;maxHeight&quot;:&quot;400px&quot;,&quot;modeName&quot;:&quot;css&quot;}\">body {\n    color: #92caff;\n}\n\n* {\n    font-family: 'Thasadith', sans-serif;\n    font-size: 20px;\n}\n\nbutton {\n    background-color: rgba(146, 202, 255, 0.33);\n    border: 1px solid rgba(146, 202, 255, 0.5);\n    color: #92caff;\n    transition: all .2s ease;\n    text-shadow: 0 0 10px white;\n    box-shadow: 0 0 0 0 rgba(146, 202, 255, 0.5);\n}\n\nbutton:hover,\nbutton:active {\n    background-color: rgba(146, 202, 255, 0.5);\n    color: white;\n    cursor: pointer;\n    box-shadow: 0 0 5px 0 rgba(146, 202, 255, 0.5);\n}\n\n#background-image {\n    position: fixed;\n    top: 0;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    background-image: url(bg.jpg);\n    background-size: cover;\n    z-index: -999;\n}\n\n#lyrics {\n    display: inline-block;\n    max-width: calc(100% - 20px);\n    text-overflow: ellipsis;\n    margin: 10px;\n    padding: 10px;\n    border: 1px solid rgba(255,255,255,.2);\n    background-color: rgba(0,0,0,.5);\n}<\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">utils.js<\/h2>\n\n\n\n<div class=\"wp-block-codemirror-blocks-code-block code-block\"><pre class=\"CodeMirror\" data-setting=\"{&quot;showPanel&quot;:true,&quot;languageLabel&quot;:&quot;language&quot;,&quot;fullScreenButton&quot;:true,&quot;copyButton&quot;:true,&quot;mode&quot;:&quot;javascript&quot;,&quot;mime&quot;:&quot;text\/javascript&quot;,&quot;theme&quot;:&quot;material&quot;,&quot;lineNumbers&quot;:true,&quot;styleActiveLine&quot;:true,&quot;lineWrapping&quot;:false,&quot;readOnly&quot;:true,&quot;fileName&quot;:&quot;&quot;,&quot;language&quot;:&quot;JavaScript&quot;,&quot;maxHeight&quot;:&quot;400px&quot;,&quot;modeName&quot;:&quot;js&quot;}\">var utils = {\n    conjugationApiCall: function(verb, sentence, callback) {\n        var xmlhttp = new XMLHttpRequest()\n        xmlhttp.onreadystatechange = function() {\n            if (xmlhttp.readyState == XMLHttpRequest.DONE) {\n               if (xmlhttp.status == 200) {\n                   callback(JSON.parse(xmlhttp.response))\n               }\n            }\n        }\n        var url = config.conjugationApiUrl + verb + &quot;?tense=&quot; + sentence.tense + &quot;&amp;person=&quot; + sentence.person\n        xmlhttp.open(&quot;GET&quot;, url, true);\n        xmlhttp.send();\n    }\n}\n\nObject.prototype.getAt = function(index) {\n    return this[Object.keys(this)[index]]\n}\n\nObject.prototype.getKeyAt = function(index) {\n    return Object.keys(this)[index]\n}<\/pre><\/div>\n","protected":false},"excerpt":{"rendered":"<p>In this tutorial, I will guide you how to create a random song lyrics generator. We will use HTML5, CSS3, and JavaScript to write this software. You can easily copy\/paste or download the complete source code of our random song lyrics generator. Folder Structure of Random Song Lyrics Generator data dictionary_ENG.js syntax_ENG.dsl bg.jpg config.js generator.js &#8230; <a title=\"Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3\" class=\"read-more\" href=\"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/\" aria-label=\"Read more about Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":1762,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[112],"tags":[],"class_list":["post-2972","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorials"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3<\/title>\n<meta name=\"description\" content=\"In this tutorial, I will guide you how to create a random song lyrics generator. We will use HTML5, CSS3, and JavaScript to write this software. You can\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3\" \/>\n<meta property=\"og:description\" content=\"In this tutorial, I will guide you how to create a random song lyrics generator. We will use HTML5, CSS3, and JavaScript to write this software. You can\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/\" \/>\n<meta property=\"og:site_name\" content=\"Edopedia\" \/>\n<meta property=\"article:author\" content=\"trulyfurqan\" \/>\n<meta property=\"article:published_time\" content=\"2022-09-03T02:13:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-03T02:13:49+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/09\/bg-1024x640.jpg\" \/>\n<meta name=\"author\" content=\"Furqan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Furqan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3","description":"In this tutorial, I will guide you how to create a random song lyrics generator. We will use HTML5, CSS3, and JavaScript to write this software. You can","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/","og_locale":"en_US","og_type":"article","og_title":"Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3","og_description":"In this tutorial, I will guide you how to create a random song lyrics generator. We will use HTML5, CSS3, and JavaScript to write this software. You can","og_url":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/","og_site_name":"Edopedia","article_author":"trulyfurqan","article_published_time":"2022-09-03T02:13:46+00:00","article_modified_time":"2022-09-03T02:13:49+00:00","og_image":[{"url":"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/09\/bg-1024x640.jpg","type":"","width":"","height":""}],"author":"Furqan","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Furqan","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/#article","isPartOf":{"@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/"},"author":{"name":"Furqan","@id":"https:\/\/www.edopedia.com\/blog\/#\/schema\/person\/3951cb19e3aa56df09e408c98aa02339"},"headline":"Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3","datePublished":"2022-09-03T02:13:46+00:00","dateModified":"2022-09-03T02:13:49+00:00","mainEntityOfPage":{"@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/"},"wordCount":127,"commentCount":0,"publisher":{"@id":"https:\/\/www.edopedia.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/#primaryimage"},"thumbnailUrl":"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/02\/default_featured_image.jpg","articleSection":["Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/","url":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/","name":"Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3","isPartOf":{"@id":"https:\/\/www.edopedia.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/#primaryimage"},"image":{"@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/#primaryimage"},"thumbnailUrl":"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/02\/default_featured_image.jpg","datePublished":"2022-09-03T02:13:46+00:00","dateModified":"2022-09-03T02:13:49+00:00","description":"In this tutorial, I will guide you how to create a random song lyrics generator. We will use HTML5, CSS3, and JavaScript to write this software. You can","breadcrumb":{"@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/#primaryimage","url":"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/02\/default_featured_image.jpg","contentUrl":"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2022\/02\/default_featured_image.jpg","width":880,"height":495,"caption":"Default Featured Image"},{"@type":"BreadcrumbList","@id":"https:\/\/www.edopedia.com\/blog\/build-random-song-lyrics-generator-using-javascript-html5-css3\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.edopedia.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Build Random Song Lyrics Generator Using JavaScript HTML5 CSS3"}]},{"@type":"WebSite","@id":"https:\/\/www.edopedia.com\/blog\/#website","url":"https:\/\/www.edopedia.com\/blog\/","name":"Edopedia","description":"Coding\/Programming Blog","publisher":{"@id":"https:\/\/www.edopedia.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.edopedia.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.edopedia.com\/blog\/#organization","name":"Edopedia","url":"https:\/\/www.edopedia.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.edopedia.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2017\/10\/edopedia_icon_text_10.jpg","contentUrl":"https:\/\/www.edopedia.com\/blog\/wp-content\/uploads\/2017\/10\/edopedia_icon_text_10.jpg","width":400,"height":100,"caption":"Edopedia"},"image":{"@id":"https:\/\/www.edopedia.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.edopedia.com\/blog\/#\/schema\/person\/3951cb19e3aa56df09e408c98aa02339","name":"Furqan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.edopedia.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e5e68aef3ad8f0b83d56f4953c512c8e57bd2e6dc64daec33b5d0495d9058f51?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e5e68aef3ad8f0b83d56f4953c512c8e57bd2e6dc64daec33b5d0495d9058f51?s=96&d=mm&r=g","caption":"Furqan"},"description":"Well. I've been working for the past three years as a web designer and developer. I have successfully created websites for small to medium sized companies as part of my freelance career. During that time I've also completed my bachelor's in Information Technology.","sameAs":["http:\/\/www.edopedia.com\/blog\/","trulyfurqan"],"url":"https:\/\/www.edopedia.com\/blog\/author\/furqan\/"}]}},"_links":{"self":[{"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/posts\/2972","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/comments?post=2972"}],"version-history":[{"count":4,"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/posts\/2972\/revisions"}],"predecessor-version":[{"id":2977,"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/posts\/2972\/revisions\/2977"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/media\/1762"}],"wp:attachment":[{"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/media?parent=2972"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/categories?post=2972"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.edopedia.com\/blog\/wp-json\/wp\/v2\/tags?post=2972"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}