{"id":106740,"date":"2026-09-03T15:25:25","date_gmt":"2026-09-03T19:25:25","guid":{"rendered":"https:\/\/bgodinspired.com\/?page_id=106740"},"modified":"2026-09-03T15:25:25","modified_gmt":"2026-09-03T19:25:25","slug":"snake-game","status":"publish","type":"page","link":"https:\/\/bgodinspired.com\/index.php\/snake-game\/","title":{"rendered":"Snake Game \u2014 Play Free Online (No Download)"},"content":{"rendered":"\n<!-- BGodInspired Snake -->\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&#038;family=Inter:wght@300;400;500;600&#038;display=swap\" rel=\"stylesheet\">\n<style>\n#bgi-game-snake-game *, #bgi-game-snake-game *::before, #bgi-game-snake-game *::after { box-sizing: border-box; margin: 0; padding: 0; }\n#bgi-game-snake-game {\n  --navy:#0D1B2A; --navy-mid:#162233; --cream:#F5F0E8; --gold:#C9A84C; --gold-dim:#8B6E2E;\n  --blue:#7B9AC4; --blue-dim:#4A6A94; --sage:#7B9E87; --clay:#C4847B; --warm-gray:#8B8680;\n  background: var(--navy); width: 100%; display: block; clear: both; position: relative;\n  padding: 36px 20px 64px !important; border-radius: 12px; font-family: 'Inter', system-ui, sans-serif;\n  color: var(--cream); line-height: 1.6; overflow: visible;\n  -webkit-tap-highlight-color: transparent;\n}\n#bgi-game-snake-game .game-inner { display: flex; flex-direction: column; align-items: center; width: 100%; max-width: 640px; margin: 0 auto; }\n#bgi-game-snake-game .sn-screen { width: 100%; display: none; }\n#bgi-game-snake-game .sn-screen.sn-on { display: block; animation: snFade .45s ease both; }\n@keyframes snFade { from { opacity:0; transform: translateY(10px); } to { opacity:1; transform:none; } }\n\n#bgi-game-snake-game .sn-eyebrow { display:block; text-align:center; font-size:.72rem; letter-spacing:.18em; text-transform:uppercase; color: var(--blue); font-weight:600; margin-bottom:14px; }\n#bgi-game-snake-game h2.sn-title { font-family:'Playfair Display', Georgia, serif; font-weight:600; font-size: clamp(1.7rem, 5vw, 2.6rem); line-height:1.2; text-align:center; color: var(--cream); margin-bottom:14px; }\n#bgi-game-snake-game .sn-sub { text-align:center; color:#CFC8BC; font-size:1rem; font-weight:300; max-width:31rem; margin:0 auto 20px; }\n#bgi-game-snake-game .sn-meta { text-align:center; font-size:.8rem; color: var(--warm-gray); letter-spacing:.04em; margin-bottom:24px; }\n#bgi-game-snake-game .sn-meta span { margin:0 7px; }\n\n#bgi-game-snake-game .sn-speedlabel { display:block; text-align:center; font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; color: var(--warm-gray); margin-bottom:10px; }\n#bgi-game-snake-game .sn-speedrow { display:flex; justify-content:center; gap:9px; flex-wrap:wrap; margin-bottom:26px; }\n#bgi-game-snake-game button.sn-speed {\n  border:1px solid rgba(123,154,196,.4); background:transparent; cursor:pointer; color:#CBD6E6;\n  font-family:'Inter',sans-serif; font-size:.85rem; padding:9px 20px !important; border-radius:8px;\n  transition: border-color .18s ease, color .18s ease, background .18s ease;\n  height:auto !important; min-height:0 !important; line-height:1.4 !important; width:auto !important;\n}\n#bgi-game-snake-game button.sn-speed:hover { border-color: var(--blue); color: var(--cream); }\n#bgi-game-snake-game button.sn-speed.sn-picked { background: rgba(123,154,196,.18); border-color: var(--blue); color: var(--cream); font-weight:600; }\n\n#bgi-game-snake-game .sn-btn {\n  display:block; margin:0 auto; border:0; cursor:pointer; font-family:'Inter',sans-serif;\n  background: var(--blue); color: var(--navy); font-weight:600; font-size:1rem; letter-spacing:.02em;\n  padding: 15px 40px !important; border-radius:8px; transition: transform .18s ease, background .18s ease;\n  height:auto !important; min-height:0 !important; line-height:1.4 !important; width:auto !important;\n}\n#bgi-game-snake-game .sn-btn:hover { background:#96B2D8; transform: translateY(-2px); }\n#bgi-game-snake-game .sn-btn-ghost {\n  display:block; margin:16px auto 0; border:1px solid rgba(123,154,196,.42); background:transparent; cursor:pointer;\n  color:#CBD6E6; font-family:'Inter',sans-serif; font-size:.85rem; padding:11px 24px !important; border-radius:8px;\n  transition: border-color .18s ease, color .18s ease;\n  height:auto !important; min-height:0 !important; line-height:1.4 !important; width:auto !important;\n}\n#bgi-game-snake-game .sn-btn-ghost:hover { border-color: var(--blue); color: var(--cream); }\n#bgi-game-snake-game .sn-note { text-align:center; font-size:.78rem; color: var(--warm-gray); margin-top:18px; font-weight:300; max-width:30rem; margin-left:auto; margin-right:auto; }\n\n\/* ---- HUD ---- *\/\n#bgi-game-snake-game .sn-hud {\n  width:100%; max-width:460px; margin:0 auto 16px; background: var(--navy-mid);\n  border:1px solid rgba(123,154,196,.22); border-radius:14px;\n  padding:14px 18px !important; box-sizing:border-box !important; position:relative; overflow:hidden;\n}\n#bgi-game-snake-game .sn-hud::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,rgba(123,154,196,.6),transparent); }\n#bgi-game-snake-game .sn-hudtop { display:flex; justify-content:space-between; align-items:baseline; }\n#bgi-game-snake-game .sn-scorenow { font-family:'Playfair Display',Georgia,serif; font-size: clamp(1.6rem,6vw,2.2rem); line-height:1.05; color: var(--blue); }\n#bgi-game-snake-game .sn-hudlabel { font-size:.66rem; letter-spacing:.18em; text-transform:uppercase; color: var(--warm-gray); display:block; }\n#bgi-game-snake-game .sn-hudright { text-align:right; }\n#bgi-game-snake-game .sn-bestnow { font-family:'Playfair Display',Georgia,serif; font-size:1.25rem; color: var(--cream); }\n#bgi-game-snake-game .sn-stats { display:flex; justify-content:center; gap:20px; flex-wrap:wrap; margin-top:10px; font-size:.78rem; color:#BFB8AC; }\n#bgi-game-snake-game .sn-stats b { color: var(--cream); font-weight:600; }\n\n\/* ---- board ---- *\/\n#bgi-game-snake-game .sn-boardwrap { width:100%; display:flex; justify-content:center; }\n#bgi-game-snake-game canvas.sn-board {\n  display:block; border-radius:12px; border:1px solid rgba(123,154,196,.28);\n  background:#101C2C; touch-action:none; max-width:100%;\n  box-shadow: 0 10px 34px rgba(0,0,0,.35);\n}\n#bgi-game-snake-game .sn-cue { text-align:center; font-size:.8rem; color: var(--warm-gray); letter-spacing:.04em; margin-top:12px; min-height:1.5em; }\n\n\/* ---- d-pad ---- *\/\n#bgi-game-snake-game .sn-pad { display:grid; grid-template-columns:repeat(3,58px); grid-template-rows:repeat(2,52px); gap:8px; justify-content:center; margin-top:16px; }\n#bgi-game-snake-game button.sn-key {\n  border:1px solid rgba(123,154,196,.4); background: rgba(123,154,196,.09); cursor:pointer;\n  color:#CBD6E6; font-family:'Inter',sans-serif; font-size:1.15rem; border-radius:10px;\n  padding:0 !important; height:52px !important; min-height:0 !important; line-height:1 !important; width:100% !important;\n  transition: background .12s ease, border-color .12s ease; touch-action:manipulation; user-select:none; -webkit-user-select:none;\n}\n#bgi-game-snake-game button.sn-key:active { background: rgba(123,154,196,.28); border-color: var(--blue); }\n#bgi-game-snake-game .sn-key-up { grid-column:2; grid-row:1; }\n#bgi-game-snake-game .sn-key-left { grid-column:1; grid-row:2; }\n#bgi-game-snake-game .sn-key-down { grid-column:2; grid-row:2; }\n#bgi-game-snake-game .sn-key-right { grid-column:3; grid-row:2; }\n#bgi-game-snake-game .sn-controls { display:flex; justify-content:center; gap:10px; flex-wrap:wrap; margin-top:18px; }\n#bgi-game-snake-game button.sn-mini {\n  border:1px solid rgba(123,154,196,.38); background:transparent; cursor:pointer; color:#BCC8DA;\n  font-family:'Inter',sans-serif; font-size:.82rem; padding:9px 18px !important; border-radius:8px;\n  transition: border-color .18s ease, color .18s ease;\n  height:auto !important; min-height:0 !important; line-height:1.4 !important; width:auto !important;\n}\n#bgi-game-snake-game button.sn-mini:hover { border-color: var(--blue); color: var(--cream); }\n\n\/* ---- end screen ---- *\/\n#bgi-game-snake-game .sn-card {\n  width:100%; background: var(--navy-mid); border:1px solid rgba(123,154,196,.22); border-radius:16px;\n  padding:30px 26px !important; box-sizing:border-box !important; position:relative; overflow:hidden; margin-bottom:22px;\n}\n#bgi-game-snake-game .sn-card::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,rgba(123,154,196,.6),transparent); }\n#bgi-game-snake-game .sn-score { font-family:'Playfair Display',Georgia,serif; font-size: clamp(2rem,6vw,3.5rem); line-height:1.05; text-align:center; color: var(--blue); display:block; margin-bottom:4px; }\n#bgi-game-snake-game .sn-scoresub { text-align:center; font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; color: var(--warm-gray); margin-bottom:20px; }\n#bgi-game-snake-game h3.sn-endhead { font-family:'Playfair Display',Georgia,serif; font-weight:600; font-size: clamp(1.3rem,4vw,1.8rem); text-align:center; color: var(--cream); margin-bottom:10px; }\n#bgi-game-snake-game .sn-endbody { text-align:center; color:#CFC8BC; font-size:.98rem; font-weight:300; max-width:30rem; margin:0 auto; }\n#bgi-game-snake-game .sn-divider { width:60px; height:1px; background:rgba(123,154,196,.4); margin:26px auto; }\n\n#bgi-game-snake-game .scripture-block {\n  border-left:3px solid var(--sage); background: rgba(123,158,135,.09); border-radius:0 10px 10px 0;\n  padding:22px 24px !important; box-sizing:border-box !important; margin-bottom:24px;\n}\n#bgi-game-snake-game .scripture-text { font-family:'Playfair Display',Georgia,serif; font-style:italic; font-size:1.1rem; color: var(--cream); margin-bottom:8px; }\n#bgi-game-snake-game .scripture-ref { font-size:.8rem; letter-spacing:.1em; text-transform:uppercase; color: var(--sage); font-weight:600; margin-bottom:12px; }\n#bgi-game-snake-game .scripture-angle { font-size:.95rem; color:#C8C1B5; font-weight:300; }\n\n#bgi-game-snake-game .product-card {\n  background: linear-gradient(160deg, rgba(201,168,76,.12), rgba(201,168,76,.03));\n  border:1px solid rgba(201,168,76,.32); border-radius:14px;\n  padding:26px 24px !important; box-sizing:border-box !important; text-align:center; margin-bottom:26px;\n}\n#bgi-game-snake-game .pc-label { display:block; font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; color: var(--gold); font-weight:600; margin-bottom:10px; }\n#bgi-game-snake-game h3.pc-headline { font-family:'Playfair Display',Georgia,serif; font-weight:600; font-size:1.3rem; color: var(--cream); margin-bottom:10px; }\n#bgi-game-snake-game .pc-body { font-size:.95rem; color:#C8C1B5; font-weight:300; max-width:28rem; margin:0 auto 18px; }\n#bgi-game-snake-game a.btn-product {\n  display:inline-block; background: var(--gold); color: var(--navy) !important; text-decoration:none !important;\n  font-weight:600; font-size:.95rem; padding:13px 30px !important; border-radius:8px; transition: background .18s ease, transform .18s ease;\n}\n#bgi-game-snake-game a.btn-product:hover { background:#DBBB5E; transform: translateY(-2px); color: var(--navy) !important; }\n\n#bgi-game-snake-game .share-label { display:block; text-align:center; font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color: var(--warm-gray); margin-bottom:12px; }\n#bgi-game-snake-game .share-row { display:flex; justify-content:center; gap:10px; flex-wrap:wrap; margin-bottom:22px; }\n#bgi-game-snake-game a.btn-share, #bgi-game-snake-game button.btn-share {\n  border:1px solid rgba(123,154,196,.45); background:transparent; cursor:pointer;\n  color:#CBD6E6 !important; text-decoration:none !important; font-family:'Inter',sans-serif; font-size:.84rem;\n  padding:10px 18px !important; border-radius:8px; transition: border-color .18s ease, color .18s ease;\n  height:auto !important; min-height:0 !important; line-height:1.4 !important; width:auto !important; display:inline-block !important;\n}\n#bgi-game-snake-game a.btn-share:hover, #bgi-game-snake-game button.btn-share:hover { border-color: var(--blue); color: var(--cream) !important; }\n#bgi-game-snake-game .sn-hub { display:block; text-align:center; margin-top:20px; font-size:.9rem; color:#A9C0DE !important; text-decoration:none !important; }\n#bgi-game-snake-game .sn-hub:hover { color: var(--cream) !important; text-decoration:underline !important; }\n\n@media (max-width:560px) {\n  #bgi-game-snake-game { padding:26px 12px 48px !important; }\n  #bgi-game-snake-game .sn-card { padding:24px 18px !important; }\n  #bgi-game-snake-game .sn-hud { padding:12px 14px !important; }\n  #bgi-game-snake-game .sn-stats { gap:14px; font-size:.74rem; }\n  #bgi-game-snake-game .sn-pad { grid-template-columns:repeat(3,64px); grid-template-rows:repeat(2,56px); }\n  #bgi-game-snake-game button.sn-key { height:56px !important; }\n}\n@media (prefers-reduced-motion: reduce) {\n  #bgi-game-snake-game .sn-screen.sn-on { animation:none; }\n  #bgi-game-snake-game .sn-btn:hover, #bgi-game-snake-game a.btn-product:hover { transform:none; }\n  #bgi-game-snake-game button.sn-speed, #bgi-game-snake-game button.sn-key, #bgi-game-snake-game .sn-btn { transition:none; }\n}\n<\/style>\n\n<div id=\"bgi-game-snake-game\">\n<div class=\"game-inner\">\n\n  <!-- INTRO -->\n  <div class=\"sn-screen sn-on\" id=\"snIntro\">\n    <span class=\"sn-eyebrow\">Classic Arcade<\/span>\n    <h2 class=\"sn-title\">Snake<\/h2>\n    <p class=\"sn-sub\">The one from the old phone. Arrow keys, a swipe, or the buttons under the board &mdash; eat, grow, don&rsquo;t bite yourself. It gets a little faster with every apple, and the wall is always closer than you think.<\/p>\n    <p class=\"sn-meta\"><span>free<\/span>&middot;<span>nothing to download<\/span>&middot;<span>one more try<\/span><\/p>\n\n    <span class=\"sn-speedlabel\">Pick your speed<\/span>\n    <div class=\"sn-speedrow\">\n      <button type=\"button\" class=\"sn-speed\" id=\"snSpeed0\" onclick=\"snSpeed(0)\">Gentle<\/button>\n      <button type=\"button\" class=\"sn-speed sn-picked\" id=\"snSpeed1\" onclick=\"snSpeed(1)\">Classic<\/button>\n      <button type=\"button\" class=\"sn-speed\" id=\"snSpeed2\" onclick=\"snSpeed(2)\">Fast<\/button>\n    <\/div>\n\n    <button class=\"sn-btn\" onclick=\"snStart()\" type=\"button\">Play Snake<\/button>\n    <p class=\"sn-note\">Every fifth apple drops a gold one worth 50 &mdash; it only sits there for a few seconds. Your best score lives in this browser tab only, so a refresh wipes the slate. Honestly, that is half the fun.<\/p>\n  <\/div>\n\n  <!-- PLAY -->\n  <div class=\"sn-screen\" id=\"snPlay\">\n    <div class=\"sn-hud\">\n      <div class=\"sn-hudtop\">\n        <div>\n          <span class=\"sn-hudlabel\">Score<\/span>\n          <span class=\"sn-scorenow\" id=\"snScore\">0<\/span>\n        <\/div>\n        <div class=\"sn-hudright\">\n          <span class=\"sn-hudlabel\">Best this tab<\/span>\n          <span class=\"sn-bestnow\" id=\"snBest\">0<\/span>\n        <\/div>\n      <\/div>\n      <div class=\"sn-stats\">\n        <span><b id=\"snApples\">0<\/b> apples<\/span>\n        <span>length <b id=\"snLen\">3<\/b><\/span>\n        <span id=\"snSpeedName\">Classic<\/span>\n      <\/div>\n    <\/div>\n\n    <div class=\"sn-boardwrap\" id=\"snBoardWrap\">\n      <canvas class=\"sn-board\" id=\"snCanvas\" width=\"420\" height=\"420\"><\/canvas>\n    <\/div>\n\n    <p class=\"sn-cue\" id=\"snCue\">Arrow keys, WASD, or swipe the board<\/p>\n\n    <div class=\"sn-pad\">\n      <button type=\"button\" class=\"sn-key sn-key-up\" onclick=\"snTurn(0,-1)\" aria-label=\"Up\">&uarr;<\/button>\n      <button type=\"button\" class=\"sn-key sn-key-left\" onclick=\"snTurn(-1,0)\" aria-label=\"Left\">&larr;<\/button>\n      <button type=\"button\" class=\"sn-key sn-key-down\" onclick=\"snTurn(0,1)\" aria-label=\"Down\">&darr;<\/button>\n      <button type=\"button\" class=\"sn-key sn-key-right\" onclick=\"snTurn(1,0)\" aria-label=\"Right\">&rarr;<\/button>\n    <\/div>\n\n    <div class=\"sn-controls\">\n      <button type=\"button\" class=\"sn-mini\" id=\"snPauseBtn\" onclick=\"snPause()\">Pause<\/button>\n      <button type=\"button\" class=\"sn-mini\" onclick=\"snQuit()\">End run<\/button>\n    <\/div>\n  <\/div>\n\n  <!-- END -->\n  <div class=\"sn-screen\" id=\"snEnd\">\n    <div class=\"sn-card\">\n      <span class=\"sn-eyebrow\" id=\"snEndEyebrow\">Game Over<\/span>\n      <span class=\"sn-score\" id=\"snFinalScore\">0<\/span>\n      <p class=\"sn-scoresub\" id=\"snFinalSub\">0 apples &middot; length 3<\/p>\n      <h3 class=\"sn-endhead\" id=\"snEndHead\"><\/h3>\n      <p class=\"sn-endbody\" id=\"snEndBody\"><\/p>\n\n      <div class=\"sn-divider\"><\/div>\n\n      <div class=\"scripture-block\">\n        <p class=\"scripture-text\" id=\"snVerse\"><\/p>\n        <p class=\"scripture-ref\" id=\"snVerseRef\"><\/p>\n        <p class=\"scripture-angle\" id=\"snVerseAngle\"><\/p>\n      <\/div>\n\n      <div class=\"product-card\">\n        <span class=\"pc-label\">Free &mdash; Faith For Everyday Life<\/span>\n        <h3 class=\"pc-headline\">One short note a week. Nothing heavy.<\/h3>\n        <p class=\"pc-body\">Practical encouragement for the ordinary parts of the week &mdash; the commute, the tired afternoon, the conversation you have been putting off. Short, personal, and free. Leave any time.<\/p>\n        <a href=\"https:\/\/bgodinspired.kit.com\/27e17be1e6?utm_source=wordpress&amp;utm_medium=game&amp;utm_campaign=faith-for-everyday-life&amp;utm_content=snake-game\" class=\"btn-product\" target=\"_blank\" rel=\"noopener\">Get it free &rarr;<\/a>\n      <\/div>\n\n      <span class=\"share-label\">Share your score<\/span>\n      <div class=\"share-row\">\n        <a id=\"snShareWA\" href=\"#\" target=\"_blank\" rel=\"noopener\" class=\"btn-share\">Share on WhatsApp<\/a>\n        <a id=\"snShareX\" href=\"#\" target=\"_blank\" rel=\"noopener\" class=\"btn-share\">Share on X<\/a>\n        <a id=\"snShareFB\" href=\"#\" target=\"_blank\" rel=\"noopener\" class=\"btn-share\">Share on Facebook<\/a>\n        <button type=\"button\" class=\"btn-share\" onclick=\"snCopy(this)\">Copy result<\/button>\n      <\/div>\n\n      <button class=\"sn-btn\" onclick=\"snAgain()\" type=\"button\">Play again<\/button>\n      <button class=\"sn-btn-ghost\" onclick=\"snMenu()\" type=\"button\">Change speed<\/button>\n      <a class=\"sn-hub\" href=\"https:\/\/bgodinspired.com\/index.php\/games\/\">More free games &rarr;<\/a>\n    <\/div>\n  <\/div>\n\n<\/div>\n<\/div>\n\n<script>\n\/* WordPress texturize turns a literal double-ampersand inside a page script\n   into an HTML entity at render time, which breaks the IIFE on the live page\n   only. Every AND below is written as a nested if for that reason, and any\n   single ampersand in a URL is built from AMP. Do not \"tidy\" these. *\/\n(function(){\n  'use strict';\n\n  var AMP = String.fromCharCode(38);\n  var PAGE = 'https:\/\/bgodinspired.com\/index.php\/snake-game\/';\n  var GRID = 21;\n  var SPEEDS = [175, 130, 96];\n  var SPEED_NAMES = ['Gentle', 'Classic', 'Fast'];\n  var BONUS_MS = 6500;\n\n  var VERSES = [\n    { t: 'Though thy beginning was small, yet thy latter end should greatly increase.',\n      r: 'Job 8:7',\n      a: 'Every run starts three squares long. Growth is slow, and then all at once it is not \u2014 which turns out to be true of a great deal more than a snake.' },\n    { t: 'For a just man falleth seven times, and riseth up again.',\n      r: 'Proverbs 24:16',\n      a: 'Nobody measures this game by the run you did not lose. What counts is that you pressed start again.' },\n    { t: 'And let us not be weary in well doing: for in due season we shall reap, if we faint not.',\n      r: 'Galatians 6:9',\n      a: 'Most snake runs end right where they were about to get good. So do most other things worth doing.' },\n    { t: 'For who hath despised the day of small things?',\n      r: 'Zechariah 4:10',\n      a: 'One apple looks like nothing at all. Forty of them is the whole board.' },\n    { t: 'Let us run with patience the race that is set before us.',\n      r: 'Hebrews 12:1',\n      a: 'Speed is the easy part of this game. Staying calm while it speeds up is the part that takes practice.' },\n    { t: 'I press toward the mark for the prize of the high calling of God in Christ Jesus.',\n      r: 'Philippians 3:14',\n      a: 'You steer toward where you are going, never toward where you are. Snake teaches that in about ten seconds.' },\n    { t: 'Better is the end of a thing than the beginning thereof.',\n      r: 'Ecclesiastes 7:8',\n      a: 'Nobody is proud of the first thirty seconds. It is what you do at length twenty that you remember.' },\n    { t: 'Wherefore lift up the hands which hang down, and the feeble knees.',\n      r: 'Hebrews 12:12',\n      a: 'If that last one rattled you, take the next run slower. Nobody is keeping score but you.' },\n    { t: 'Forgetting those things which are behind, and reaching forth unto those things which are before.',\n      r: 'Philippians 3:13',\n      a: 'The tail behind you is what ends most runs. Watch where you are going instead.' },\n    { t: 'The kingdom of heaven is like to a grain of mustard seed, which a man took, and sowed in his field.',\n      r: 'Matthew 13:31',\n      a: 'Small beginnings are the pattern here, not the exception. God tends to start things at three squares long.' }\n  ];\n\n  var BANDS = [\n    { max: 4,  h: 'Everyone starts here.',        b: 'The first few runs are just your thumb learning the grid. Give it three more and watch what happens.' },\n    { max: 11, h: 'That is a real run.',          b: 'You have got the rhythm now \u2014 turning early instead of turning late. That is the whole skill.' },\n    { max: 24, h: 'Solid. Genuinely solid.',      b: 'You are steering ahead of the head instead of reacting to it. Most people never get that far.' },\n    { max: 39, h: 'That is a long snake.',        b: 'This is where the board starts closing in and people panic. You did not. Go again while it is fresh.' },\n    { max: 9999, h: 'That was a serious run.',    b: 'At that length the board is mostly you. Screenshot it before someone tells you it does not count.' }\n  ];\n\n  var canvas = null, ctx = null;\n  var size = 420, cell = 20, dpr = 1;\n  var snake = null, dir = null, pending = [], food = null, bonus = null, pops = [];\n  var score = 0, apples = 0, best = 0, stepMs = 130, speedIdx = 1;\n  var running = false, paused = false, raf = null, last = 0, acc = 0, verseIdx = 0;\n\n  function $(id){ return document.getElementById(id); }\n\n  function show(id){\n    var ids = ['snIntro', 'snPlay', 'snEnd'];\n    for (var i = 0; i < ids.length; i++){\n      var el = $(ids[i]);\n      if (!el) { continue; }\n      if (ids[i] === id) { el.className = 'sn-screen sn-on'; }\n      else { el.className = 'sn-screen'; }\n    }\n  }\n\n  \/* ---------------------------------------------------------------- board *\/\n\n  function layout(){\n    if (!canvas) { return; }\n    var wrap = $('snBoardWrap');\n    var avail = wrap ? wrap.clientWidth : 420;\n    if (avail < 40) { avail = 320; }\n    if (avail > 420) { avail = 420; }\n    var c = Math.floor(avail \/ GRID);\n    if (c < 9) { c = 9; }\n    cell = c;\n    size = c * GRID;\n    dpr = window.devicePixelRatio || 1;\n    if (dpr > 2) { dpr = 2; }\n    canvas.width = Math.round(size * dpr);\n    canvas.height = Math.round(size * dpr);\n    canvas.style.width = size + 'px';\n    canvas.style.height = size + 'px';\n    ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n    draw();\n  }\n\n  function onSnake(x, y){\n    if (!snake) { return false; }\n    for (var i = 0; i < snake.length; i++){\n      if (snake[i].x === x) { if (snake[i].y === y) { return true; } }\n    }\n    return false;\n  }\n\n  function placeFood(){\n    var free = [];\n    for (var y = 0; y < GRID; y++){\n      for (var x = 0; x < GRID; x++){\n        if (!onSnake(x, y)) { free.push({ x: x, y: y }); }\n      }\n    }\n    if (!free.length) { food = null; return; }\n    food = free[Math.floor(Math.random() * free.length)];\n  }\n\n  function placeBonus(){\n    var free = [];\n    for (var y = 0; y < GRID; y++){\n      for (var x = 0; x < GRID; x++){\n        if (onSnake(x, y)) { continue; }\n        if (food) { if (food.x === x) { if (food.y === y) { continue; } } }\n        free.push({ x: x, y: y });\n      }\n    }\n    if (!free.length) { return; }\n    var p = free[Math.floor(Math.random() * free.length)];\n    bonus = { x: p.x, y: p.y, left: BONUS_MS };\n  }\n\n  function reset(){\n    snake = [{ x: 8, y: 10 }, { x: 7, y: 10 }, { x: 6, y: 10 }];\n    dir = { x: 1, y: 0 };\n    pending = [];\n    pops = [];\n    bonus = null;\n    score = 0;\n    apples = 0;\n    stepMs = SPEEDS[speedIdx];\n    paused = false;\n    placeFood();\n  }\n\n  \/* ------------------------------------------------------------ mechanics *\/\n\n  function turn(dx, dy){\n    if (!running) { return; }\n    if (paused) { return; }\n    var ref = dir;\n    if (pending.length) { ref = pending[pending.length - 1]; }\n    if (ref.x === -dx) { if (ref.y === -dy) { return; } }\n    if (ref.x === dx) { if (ref.y === dy) { return; } }\n    if (pending.length > 1) { return; }\n    pending.push({ x: dx, y: dy });\n  }\n\n  function step(){\n    if (pending.length) { dir = pending.shift(); }\n    var head = { x: snake[0].x + dir.x, y: snake[0].y + dir.y };\n\n    if (head.x < 0) { return over(); }\n    if (head.x >= GRID) { return over(); }\n    if (head.y < 0) { return over(); }\n    if (head.y >= GRID) { return over(); }\n    for (var i = 0; i < snake.length - 1; i++){\n      if (snake[i].x === head.x) { if (snake[i].y === head.y) { return over(); } }\n    }\n\n    snake.unshift(head);\n    var grew = false;\n\n    if (food) {\n      if (head.x === food.x) { if (head.y === food.y) {\n        grew = true;\n        apples++;\n        score += 10;\n        pops.push({ x: head.x, y: head.y, life: 1, c: '196,132,123' });\n        placeFood();\n        if (apples % 5 === 0) { placeBonus(); }\n        if (stepMs > 68) { stepMs -= 3.5; }\n      } }\n    }\n\n    if (bonus) {\n      if (head.x === bonus.x) { if (head.y === bonus.y) {\n        grew = true;\n        score += 50;\n        pops.push({ x: head.x, y: head.y, life: 1, c: '201,168,76' });\n        bonus = null;\n      } }\n    }\n\n    if (!grew) { snake.pop(); }\n    paintHud();\n  }\n\n  function frame(ts){\n    if (!running) { raf = null; return; }\n    if (!last) { last = ts; }\n    var dt = ts - last;\n    last = ts;\n    if (dt > 120) { dt = 120; }\n    if (dt < 0) { dt = 0; }\n\n    if (!paused) {\n      acc += dt;\n      if (bonus) {\n        bonus.left -= dt;\n        if (bonus.left <= 0) { bonus = null; }\n      }\n      var guard = 0;\n      while (acc >= stepMs) {\n        acc -= stepMs;\n        step();\n        guard++;\n        if (!running) { break; }\n        if (guard > 4) { acc = 0; break; }\n      }\n      for (var i = pops.length - 1; i >= 0; i--){\n        pops[i].life -= dt \/ 420;\n        if (pops[i].life <= 0) { pops.splice(i, 1); }\n      }\n    }\n\n    draw();\n    if (running) { raf = requestAnimationFrame(frame); }\n    else { raf = null; }\n  }\n\n  function over(){\n    running = false;\n    paused = false;\n    if (score > best) { best = score; }\n    paintEnd();\n    show('snEnd');\n  }\n\n  \/* ---------------------------------------------------------------- paint *\/\n\n  function rr(x, y, w, h, r){\n    ctx.beginPath();\n    ctx.moveTo(x + r, y);\n    ctx.lineTo(x + w - r, y); ctx.quadraticCurveTo(x + w, y, x + w, y + r);\n    ctx.lineTo(x + w, y + h - r); ctx.quadraticCurveTo(x + w, y + h, x + w - r, y + h);\n    ctx.lineTo(x + r, y + h); ctx.quadraticCurveTo(x, y + h, x, y + h - r);\n    ctx.lineTo(x, y + r); ctx.quadraticCurveTo(x, y, x + r, y);\n    ctx.closePath();\n  }\n\n  function dot(gx, gy, color, scale){\n    ctx.fillStyle = color;\n    ctx.beginPath();\n    ctx.arc(gx * cell + cell \/ 2, gy * cell + cell \/ 2, cell * scale, 0, Math.PI * 2);\n    ctx.fill();\n  }\n\n  function bodyColor(t){\n    var r = Math.round(123 + (74 - 123) * t);\n    var g = Math.round(154 + (106 - 154) * t);\n    var b = Math.round(196 + (148 - 196) * t);\n    return 'rgb(' + r + ',' + g + ',' + b + ')';\n  }\n\n  function draw(){\n    if (!ctx) { return; }\n    ctx.clearRect(0, 0, size, size);\n    ctx.fillStyle = '#101C2C';\n    ctx.fillRect(0, 0, size, size);\n\n    ctx.strokeStyle = 'rgba(245,240,232,0.05)';\n    ctx.lineWidth = 1;\n    for (var i = 1; i < GRID; i++){\n      ctx.beginPath(); ctx.moveTo(i * cell + 0.5, 0); ctx.lineTo(i * cell + 0.5, size); ctx.stroke();\n      ctx.beginPath(); ctx.moveTo(0, i * cell + 0.5); ctx.lineTo(size, i * cell + 0.5); ctx.stroke();\n    }\n\n    for (var p = 0; p < pops.length; p++){\n      var po = pops[p];\n      ctx.globalAlpha = Math.max(0, po.life) * 0.55;\n      ctx.strokeStyle = 'rgba(' + po.c + ',1)';\n      ctx.lineWidth = 2;\n      ctx.beginPath();\n      ctx.arc(po.x * cell + cell \/ 2, po.y * cell + cell \/ 2, cell * (0.35 + (1 - po.life) * 0.75), 0, Math.PI * 2);\n      ctx.stroke();\n      ctx.globalAlpha = 1;\n    }\n\n    if (food) { dot(food.x, food.y, '#C4847B', 0.32); }\n\n    if (bonus) {\n      var a = bonus.left \/ BONUS_MS;\n      if (a < 0.3) { a = 0.3 + Math.abs(Math.sin(bonus.left \/ 90)) * 0.5; }\n      ctx.globalAlpha = a;\n      dot(bonus.x, bonus.y, '#C9A84C', 0.38);\n      ctx.globalAlpha = 1;\n    }\n\n    if (!snake) { return; }\n    var denom = Math.max(1, snake.length - 1);\n    for (var j = snake.length - 1; j >= 0; j--){\n      var seg = snake[j];\n      if (j === 0) { ctx.fillStyle = '#BFD6F2'; }\n      else { ctx.fillStyle = bodyColor(j \/ denom); }\n      var pad = j === 0 ? 1 : 1.5;\n      rr(seg.x * cell + pad, seg.y * cell + pad, cell - pad * 2, cell - pad * 2, Math.min(6, cell * 0.3));\n      ctx.fill();\n    }\n\n    var h = snake[0];\n    var cx = h.x * cell + cell \/ 2;\n    var cy = h.y * cell + cell \/ 2;\n    var off = cell * 0.19;\n    var er = Math.max(1.2, cell * 0.09);\n    ctx.fillStyle = '#0D1B2A';\n    ctx.beginPath();\n    if (dir.x === 0) {\n      ctx.arc(cx - off, cy + dir.y * off, er, 0, Math.PI * 2);\n      ctx.fill();\n      ctx.beginPath();\n      ctx.arc(cx + off, cy + dir.y * off, er, 0, Math.PI * 2);\n    } else {\n      ctx.arc(cx + dir.x * off, cy - off, er, 0, Math.PI * 2);\n      ctx.fill();\n      ctx.beginPath();\n      ctx.arc(cx + dir.x * off, cy + off, er, 0, Math.PI * 2);\n    }\n    ctx.fill();\n\n    if (paused) {\n      ctx.fillStyle = 'rgba(13,27,42,0.72)';\n      ctx.fillRect(0, 0, size, size);\n      ctx.fillStyle = '#F5F0E8';\n      ctx.font = '600 ' + Math.round(size * 0.075) + 'px Inter, system-ui, sans-serif';\n      ctx.textAlign = 'center';\n      ctx.textBaseline = 'middle';\n      ctx.fillText('Paused', size \/ 2, size \/ 2);\n    }\n  }\n\n  function paintHud(){\n    $('snScore').textContent = score;\n    $('snBest').textContent = Math.max(best, score);\n    $('snApples').textContent = apples;\n    $('snLen').textContent = snake ? snake.length : 3;\n  }\n\n  function band(){\n    for (var i = 0; i < BANDS.length; i++){\n      if (apples <= BANDS[i].max) { return BANDS[i]; }\n    }\n    return BANDS[BANDS.length - 1];\n  }\n\n  function shareUrl(src){\n    return PAGE + '?utm_source=' + src + AMP + 'utm_medium=result_share' + AMP + 'utm_campaign=snake-game';\n  }\n\n  function shareText(){\n    var noun = apples === 1 ? 'apple' : 'apples';\n    return 'I scored ' + score + ' on Snake \u2014 ' + apples + ' ' + noun + ' before I ran out of board. Try it:';\n  }\n\n  function paintEnd(){\n    var b = band();\n    var beat = score >= best;\n    if (score === 0) { beat = false; }\n    $('snEndEyebrow').textContent = beat ? 'New best this tab' : 'Game over';\n    $('snFinalScore').textContent = score;\n    $('snFinalSub').textContent = apples + (apples === 1 ? ' apple' : ' apples') + ' \u00b7 length ' + (snake ? snake.length : 3) + ' \u00b7 ' + SPEED_NAMES[speedIdx];\n    $('snEndHead').textContent = b.h;\n    $('snEndBody').textContent = b.b;\n\n    var v = VERSES[verseIdx % VERSES.length];\n    $('snVerse').textContent = '\u201c' + v.t + '\u201d';\n    $('snVerseRef').textContent = '\u2014 ' + v.r;\n    $('snVerseAngle').textContent = v.a;\n\n    var txt = shareText();\n    $('snShareWA').href = 'https:\/\/api.whatsapp.com\/send?text=' + encodeURIComponent(txt + ' ' + shareUrl('whatsapp'));\n    $('snShareX').href = 'https:\/\/twitter.com\/intent\/tweet?text=' + encodeURIComponent(txt) + AMP + 'url=' + encodeURIComponent(shareUrl('x'));\n    $('snShareFB').href = 'https:\/\/www.facebook.com\/sharer\/sharer.php?u=' + encodeURIComponent(shareUrl('facebook'));\n  }\n\n  function paintSpeed(){\n    for (var i = 0; i < 3; i++){\n      var el = $('snSpeed' + i);\n      if (!el) { continue; }\n      if (i === speedIdx) { el.className = 'sn-speed sn-picked'; }\n      else { el.className = 'sn-speed'; }\n    }\n    var nm = $('snSpeedName');\n    if (nm) { nm.textContent = SPEED_NAMES[speedIdx]; }\n  }\n\n  \/* ------------------------------------------------------------- controls *\/\n\n  function snSpeed(i){\n    speedIdx = i;\n    paintSpeed();\n  }\n\n  function snStart(){\n    reset();\n    show('snPlay');\n    paintSpeed();\n    layout();\n    paintHud();\n    var btn = $('snPauseBtn');\n    if (btn) { btn.textContent = 'Pause'; }\n    running = true;\n    last = 0;\n    acc = 0;\n    if (raf) { cancelAnimationFrame(raf); raf = null; }\n    raf = requestAnimationFrame(frame);\n  }\n\n  function snAgain(){\n    verseIdx = (verseIdx + 1) % VERSES.length;\n    snStart();\n  }\n\n  function snMenu(){\n    running = false;\n    if (raf) { cancelAnimationFrame(raf); raf = null; }\n    show('snIntro');\n  }\n\n  function snPause(){\n    if (!running) { return; }\n    paused = !paused;\n    var btn = $('snPauseBtn');\n    if (btn) { btn.textContent = paused ? 'Resume' : 'Pause'; }\n    var cue = $('snCue');\n    if (cue) { cue.textContent = paused ? 'Paused \u2014 take your time' : 'Arrow keys, WASD, or swipe the board'; }\n    last = 0;\n    draw();\n  }\n\n  function snQuit(){\n    if (!running) { return; }\n    verseIdx = verseIdx % VERSES.length;\n    over();\n  }\n\n  function snCopy(btn){\n    var txt = shareText() + ' ' + shareUrl('copy_link');\n    var done = function(){\n      var old = btn.textContent;\n      btn.textContent = 'Copied';\n      setTimeout(function(){ btn.textContent = old; }, 1800);\n    };\n    if (navigator.clipboard) {\n      navigator.clipboard.writeText(txt).then(done, function(){ fallbackCopy(txt, done); });\n    } else {\n      fallbackCopy(txt, done);\n    }\n  }\n\n  function fallbackCopy(txt, done){\n    var ta = document.createElement('textarea');\n    ta.value = txt;\n    ta.style.position = 'fixed';\n    ta.style.opacity = '0';\n    document.body.appendChild(ta);\n    ta.select();\n    try { document.execCommand('copy'); done(); } catch (err) { }\n    document.body.removeChild(ta);\n  }\n\n  \/* ----------------------------------------------------------------- wire *\/\n\n  canvas = $('snCanvas');\n  if (canvas) { ctx = canvas.getContext('2d'); }\n  paintSpeed();\n\n  document.addEventListener('keydown', function(e){\n    if (!running) { return; }\n    var k = e.key;\n    if (!k) { return; }\n    var kk = String(k).toLowerCase();\n    var handled = true;\n    if (kk === 'arrowup') { turn(0, -1); }\n    else if (kk === 'arrowdown') { turn(0, 1); }\n    else if (kk === 'arrowleft') { turn(-1, 0); }\n    else if (kk === 'arrowright') { turn(1, 0); }\n    else if (kk === 'w') { turn(0, -1); }\n    else if (kk === 's') { turn(0, 1); }\n    else if (kk === 'a') { turn(-1, 0); }\n    else if (kk === 'd') { turn(1, 0); }\n    else if (kk === ' ') { snPause(); }\n    else if (kk === 'p') { snPause(); }\n    else { handled = false; }\n    if (handled) { if (e.preventDefault) { e.preventDefault(); } }\n  });\n\n  var tx = 0, ty = 0, tActive = false;\n  if (canvas) {\n    canvas.addEventListener('touchstart', function(e){\n      var t = e.changedTouches[0];\n      tx = t.clientX;\n      ty = t.clientY;\n      tActive = true;\n    }, { passive: true });\n\n    canvas.addEventListener('touchmove', function(e){\n      if (!tActive) { return; }\n      var t = e.changedTouches[0];\n      var dx = t.clientX - tx;\n      var dy = t.clientY - ty;\n      var ax = Math.abs(dx);\n      var ay = Math.abs(dy);\n      if (ax < 20) { if (ay < 20) { return; } }\n      if (ax > ay) { turn(dx > 0 ? 1 : -1, 0); }\n      else { turn(0, dy > 0 ? 1 : -1); }\n      tx = t.clientX;\n      ty = t.clientY;\n      if (e.cancelable) { e.preventDefault(); }\n    }, { passive: false });\n  }\n\n  window.addEventListener('resize', function(){\n    if (!canvas) { return; }\n    if ($('snPlay').className.indexOf('sn-on') === -1) { return; }\n    layout();\n  });\n\n  document.addEventListener('visibilitychange', function(){\n    if (document.hidden) {\n      if (running) {\n        if (!paused) { snPause(); }\n      }\n    }\n  });\n\n  window.snSpeed = snSpeed;\n  window.snStart = snStart;\n  window.snAgain = snAgain;\n  window.snMenu = snMenu;\n  window.snPause = snPause;\n  window.snQuit = snQuit;\n  window.snCopy = snCopy;\n  window.snTurn = turn;\n})();\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\">Common Questions About the Snake Game<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">How do you play the Snake game?<\/h3>\n\n\n\n<p>You control a line of squares that never stops moving. Steer with the arrow keys, WASD, a swipe across the board, or the four buttons underneath it. Every apple you reach adds one square to your tail and ten points to your score. Every fifth apple drops a gold one worth fifty, but it only sits there for a few seconds before it vanishes. The run ends the moment your head touches a wall or any part of your own tail. That is the entire game, and it is why the thing has survived nearly fifty years: the rules fit in one sentence, and all the difficulty comes from the fact that you keep getting longer. You never actually get worse at Snake as a run goes on. The board just keeps getting smaller.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Where did the Snake game come from?<\/h3>\n\n\n\n<p>Most people remember Snake as the game that came pre-loaded on a Nokia phone, and that memory is accurate. Snake shipped on the Nokia 6110 in 1997, written by a Nokia engineer named Taneli Armanto, and it ended up installed on hundreds of millions of handsets through the years that followed. It was not the original, though. The mechanic goes back to a 1976 arcade cabinet from Gremlin Industries called Blockade, a two-player game where each player left a solid trail behind them and lost by crashing into one. Home-computer versions followed through the late seventies and eighties under names like Worm and Nibbler. Nokia simply put it in everybody&#8217;s pocket at the exact moment everybody had a pocket to put it in, which is why a whole generation thinks of Snake as a phone game rather than an arcade one.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Is there a trick to getting a high score in Snake?<\/h3>\n\n\n\n<p>Yes, and it depends far less on reflexes than most people expect. Strong players are not reacting to the apple in front of them; they are already planning the way out of the corner they are about to enter. The most reliable habit is to work the edges. Run laps around the perimeter and cut inward for each apple, instead of wandering through the middle where your own tail can quietly box you in. The second habit is to always leave yourself a route back toward your own tail, because the tail is the one part of the board guaranteed to move out of your way. Late in a run, take the boring line. A slow, wide loop that keeps you alive will always beat a clever shortcut that ends the game. And if raw speed is what keeps catching you, drop to Gentle and build the pattern first.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How long can the snake actually get?<\/h3>\n\n\n\n<p>The board here is twenty-one squares across, so there are 441 places the snake can occupy, and in theory a flawless run ends with a snake filling every one of them. Nobody plays that way. In practice the game turns genuinely difficult somewhere around length thirty, because by then a real share of the board is you, and the open space starts breaking into pockets you cannot get back out of. The speed increase compounds it: every apple shaves a little off the time between moves, so the board tightens and your thinking time shrinks in the same breath. There is no ending screen to reach and no level to clear. The only ceiling is the last number you managed, which is exactly where the pull comes from. The target is always a score you have already proved is possible.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Can I play Snake free online with no download?<\/h3>\n\n\n\n<p>Yes. This one runs entirely inside your browser. There is no download, no account, no app store, and nothing to install, and it behaves the same on a phone as it does on a laptop. On a computer, use the arrow keys or WASD. On a phone, swipe across the board or tap the arrow buttons underneath it. Your best score is held for as long as this tab stays open, and refreshing the page puts you back at three squares, which is honestly half the appeal of the format. There is nothing to lose here and nothing to sign up for. Pick a speed, press play, and see how long you can keep it alive. The game is sitting right at the top of this page.<\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>Classic Arcade Snake The one from the old phone. Arrow keys, a swipe, or the buttons under the board &mdash; eat, grow, don&rsquo;t bite yourself. It gets a little faster with every apple, and the wall is always closer than you think. free&middot;nothing to download&middot;one more try Pick your speed Gentle Classic Fast Play Snake [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_monsterinsights_skip_tracking":false,"_wp_convertkit_post_meta":{"form":"-1","landing_page":"0","tag":"0","restrict_content":"0"},"footnotes":""},"class_list":["post-106740","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/pages\/106740","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/comments?post=106740"}],"version-history":[{"count":1,"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/pages\/106740\/revisions"}],"predecessor-version":[{"id":106741,"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/pages\/106740\/revisions\/106741"}],"wp:attachment":[{"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/media?parent=106740"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}