/* ============================================================
   calendar-data.jsx — the year, the seasons, the tiles, the songs
   ============================================================ */

// Anniversary — Day 1 unlocks here, then one per day for a year.
const START = new Date(2026, 7, 30); // 30 Aug 2026 (month is 0-indexed)
const TOTAL_DAYS = 366;

const MONTHS = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
const MONTHS_LONG = ["January","February","March","April","May","June","July","August","September","October","November","December"];

function addDays(base, n) {
  const d = new Date(base);
  d.setDate(d.getDate() + n);
  return d;
}
function dateForDay(day /* 1-based */) { return addDays(START, day - 1); }

function fmtShort(d)  { return `${String(d.getDate()).padStart(2,"0")} ${MONTHS[d.getMonth()].toUpperCase()}`; }
function fmtLong(d)   { return `${MONTHS_LONG[d.getMonth()]} ${d.getDate()}, ${d.getFullYear()}`; }

// midnight-normalized day index between two dates
function daysBetween(a, b) {
  const ms = new Date(b.getFullYear(), b.getMonth(), b.getDate()) -
             new Date(a.getFullYear(), a.getMonth(), a.getDate());
  return Math.round(ms / 86400000);
}

/* ---- Months — 12 chapters running from the anniversary month onward -- */
function monthKeyOf(d) { return `${d.getFullYear()}-${d.getMonth()}`; }

/* ---- Deterministic pseudo-random (stable layout across reloads) ------ */
function rng(seed) {
  // mulberry32
  let t = seed + 0x6D2B79F5;
  t = Math.imul(t ^ (t >>> 15), t | 1);
  t ^= t + Math.imul(t ^ (t >>> 7), t | 61);
  return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
}

/* Mosaic packing: each day gets a column-span (1-3) and occasionally a
   row-span of 2 (a tall tile reaching down into the row below). A tight
   occupancy grid is scanned cell-by-cell so every cell is claimed by
   exactly one tile — no gaps, no overlaps, one tile per day always.     */
function sizeHint(day) {
  const seed = day == null ? Math.floor(Math.random() * 1e6) : day;
  const r = rng(seed * 2654435761 % 2147483647);
  if (r > 0.94) return 3;
  if (r > 0.80) return 2;
  return 1;
}
function rowHint(day) {
  const seed = day == null ? Math.floor(Math.random() * 1e6) : day;
  const r = rng(seed * 1000003 % 2147483647);
  return r > 0.86 ? 2 : 1;
}
function packRows(days, cols) {
  const occ = [];
  const ensureRow = (r) => { while (occ.length <= r) occ.push(new Array(cols).fill(false)); };
  const fits = (r, c, cspan, rspan) => {
    for (let rr = r; rr < r + rspan; rr++) {
      ensureRow(rr);
      for (let cc = c; cc < c + cspan; cc++) { if (cc >= cols || occ[rr][cc]) return false; }
    }
    return true;
  };
  const mark = (r, c, cspan, rspan) => {
    for (let rr = r; rr < r + rspan; rr++) { ensureRow(rr); for (let cc = c; cc < c + cspan; cc++) occ[rr][cc] = true; }
  };
  const out = [];
  let r = 0, c = 0, di = 0;
  while (di < days.length) {
    ensureRow(r);
    if (occ[r][c]) { c++; if (c >= cols) { c = 0; r++; } continue; }
    const d = days[di++];
    let cspan = Math.min(sizeHint(d.day), cols - c);
    while (cspan > 1 && !fits(r, c, cspan, 1)) cspan--;
    let rspan = (rowHint(d.day) === 2 && (days.length - di) > cols && fits(r, c, cspan, 2)) ? 2 : 1;
    mark(r, c, cspan, rspan);
    out.push({ ...d, size: { c: cspan, r: rspan }, colStart: c, rowStart: r });
    c += cspan;
    if (c >= cols) { c = 0; r++; }
  }
  // stretch the last tile to close off a partial trailing row
  if (c !== 0 && out.length) {
    const last = out[out.length - 1];
    last.size.c += cols - c;
  }
  return out.map(d => ({
    ...d,
    gridColumn: `${d.colStart + 1} / span ${d.size.c}`,
    gridRow: `${d.rowStart + 1} / span ${d.size.r}`,
  }));
}

/* A placeholder background tint per day so empty tiles aren't flat —
   alternating olive / blush washes, deterministic.                      */
function tintForDay(day) {
  const r = rng(day * 40503);
  return r > 0.5 ? "olive" : "blush";
}

/* ---- Example songs (you'll replace these) ----------------------------
   Each: title, artist. `yt` = YouTube video id (optional — when present
   we embed the player; the "Play on YouTube" search button always works).
   `note` = your little liner-note message for that day.                 */
const EXAMPLE_SONGS = {
  1: { title:"Little Lion Man", artist:"Mumford & Sons", yt:"AwMi5zVmY5M", note:"Where it all started:)" },
  2: { title:"Sunshine", artist:"OneRepublic", yt:"dBTs2rqiMVc", note:"Life is woo-hoo! with you" },
  3: { title:"Can't Remember to Forget You (feat. Rihanna)", artist:"Shakira, Rihanna", yt:"34SESav_RFU", note:"ahh yes the sexual awakening of a generation. Actually very sweet." },
  4: { title:"Straight To...Number One - Duck's Radio Mix", artist:"Touch & Go", yt:"Ltz9xQIeLDo", note:"Its from Friends and it's some joke? Or so I've been told… Please enligthen me." },
  5: { title:"Missing Piece", artist:"Vance Joy", yt:"LugHRBytIKs", note:"the waves definitely did send you my way." },
  6: { title:"Friday I'm In Love", artist:"The Cure", yt:"rUabWMD44tA", note:"As during the rest of the week, rest assured." },
  7: { title:"Iris", artist:"The Goo Goo Dolls", yt:"Dy_eP-mqWow", note:"\"And I'd give up forever to touch you.\"" },
  8: { title:"Perfect To Me", artist:"Michael Sanzone", yt:"TuOSVagweTA", note:"Perfectly human and perfect to me:)" },
  9: { title:"It Must Have Been Love - From the Film \"Pretty Woman\"", artist:"Roxette", yt:"lnl9U-hHp1I", note:"Also not a love song I guess but such a classic. I'm a little stupid sometimes okay. Doesn't make my love any less legitimate." },
  10: { title:"Crazy In Love - Remix", artist:"Beyoncé", yt:"JxMZPdZLehs", note:"I really enjoy how sultry this remix is. Also if you didn't notice I'm crazy in love with you." },
  11: { title:"Mine (Taylor's Version)", artist:"Taylor Swift", yt:"6KnDUtPoelU", note:"MinE mINe miNE (imagine the seagulls from Finding Nemo)" },
  12: { title:"Intimidated (feat. H.E.R.)", artist:"KAYTRANADA, H.E.R.", yt:"JpJ7KO08mqg", note:"Are you not inimidated by me?" },
  13: { title:"Close To You", artist:"Gracie Abrams", yt:"tDaFv67fRfw", note:"\"You could be mine tonight\" there's nothing hypothetica about this." },
  14: { title:"From Eden", artist:"Hozier", yt:"0EWChIYUm2c", note:"\"Something so magic about you\"" },
  15: { title:"In My Head", artist:"Jason Derulo", yt:"iaQLzi_RHNY", note:"let's make the refrain happen outside of my head?" },
  16: { title:"Love Me Not", artist:"Ravyn Lenae", yt:"HfpR4tAmI7E", note:"but I miss you, come here" },
  17: { title:"Genius (feat. Sia, Diplo, and Labrinth)", artist:"Sia, Diplo, Labrinth, LSD", yt:"HCv86jWOsKc", note:"(you're the genius in the scenario)" },
  18: { title:"Sugar, Sugar", artist:"The Archies", yt:"C7T4aQMxTTM", note:"almost gives a tooth ache this one" },
  19: { title:"I Will Wait", artist:"Mumford & Sons", yt:"rGKfrgqWcv0", note:"for youuu" },
  20: { title:"You'll Be In My Heart", artist:"Phil Collins", yt:"EfHLHdSxQA0", note:"\"from this day on, now and forever.\"" },
  21: { title:"Make Me Feel", artist:"oskar med k", yt:"y6UxHtHLZv0", note:"\"don't nobody else make me feel like you.\"" },
  22: { title:"I Won't Say (I'm In Love)", artist:"Susan Egan, Cheryl Freeman, LaChanze, Vaneese Thomas, Lillias White, Disney", yt:"E4R_5-qppQM", note:"Megara from Herkules is one of my favorite characters and this song is the absolute cutest." },
  23: { title:"Born", artist:"OneRepublic", yt:"qhZSp0eRyMQ", note:"\"I was born, born to love you.\"" },
  24: { title:"Breezeblocks", artist:"alt-J", yt:"egNb0DVaRoA", note:"\"Please don't go, I'll eat you whole, I love you so, I love you so.\" hehehe" },
  25: { title:"On Melancholy Hill", artist:"Gorillaz", yt:"p00v9ZFhWJM", note:"\"So let's set out to sea, love 'cause you are my medicine, when you're close to me.\"" },
  26: { title:"I Just Called To Say I Love You", artist:"Stevie Wonder", yt:"djHiBp5oRnY", note:"Not sure where I'm calling from but I hope it's over Whatsapp so it doesn't cost a fortune." },
  27: { title:"Show Me Love", artist:"Robin Schulz, Richard Judge", yt:"H8xPRq_Ru3Q", note:"I hope we are this disgustingly in love when we are old too." },
  28: { title:"iloveyou", artist:"BETWEEN FRIENDS", yt:"4hZPp4hK5VM", note:"ily<3" },
  29: { title:"SOS", artist:"ABBA", yt:"CxMcD8QHVag", note:"\"The love you gave me, nothing else can save me, SOS.\"" },
  30: { title:"Bob Dylan", artist:"Fall Out Boy", yt:"PsqZ6a5ca1I", note:"\"No one ever thinks of you as much as I do, not, not even you.\"" },
  31: { title:"I Want It That Way", artist:"Backstreet Boys", yt:"LwkrXybZ1uo", note:"ahh chills, literal chills. It was number five, number five killed my brother. Oh my god I forgot about that part." },
  32: { title:"Ophelia", artist:"The Lumineers", yt:"qJF0doztm4c", note:"\"Heaven help the fool who falls in love.\"" },
  33: { title:"Past Life", artist:"felix jaehn, Jonas Blue", yt:"jZ1h_gg6nxs", note:"\"I swear we fell in love in a past life.\"" },
  34: { title:"In Case I Fall for You", artist:"Black Sea Dahu", yt:"bjVliNVNNgE", note:"I already did. A fall so fast it fucking defied speeds set by the Newton's law of gravity." },
  35: { title:"I Knew You Were Waiting (For Me)", artist:"Aretha Franklin, George Michael", yt:"h-99VpKPsUk", note:"\"So, we were drawn together through destiny.\"" },
  36: { title:"STUPID IN LOVE (feat. HUH YUNJIN of LE SSERAFIM)", artist:"MAX, HUH YUNJIN", yt:"LUpHPW1nBkA", note:"more like IN LOVE with STUPID, ahaha jk" },
  37: { title:"Till Forever Falls Apart", artist:"Ashe, FINNEAS", yt:"SVq9MBuUz3E", note:"until then" },
  38: { title:"The Heart Is a Muscle", artist:"Gang of Youths", yt:"xvUAKRju_S8", note:"\"Lay me down and kiss me deeply, show me everything I missed.\"" },
  39: { title:"Come What May", artist:"Nicole Kidman, Ewan McGregor", yt:"ELkO5oB5r9M", note:"this whole song. Originally I wrote \"wedding song?' underneath this one but I feel like its too cheesy for that" },
  40: { title:"Afraid To Feel", artist:"LF SYSTEM", yt:"2XF2v9UA0og", note:"def not like any other guy:) I see the flames hahaha" },
  41: { title:"Castle on the Hill", artist:"Ed Sheeran", yt:"wqlTrBCNRiY", note:"\"But I can't wait to go home.\" to you" },
  42: { title:"V.S.O.P.", artist:"K. Michelle", yt:"Ai_Ug19YWkY", note:"\"Hope you make the rest of my life very special, oh\"" },
  43: { title:"Monogamie", artist:"Luis Ake, AMANDUS99", yt:"uJpwPx-3_60", note:"Today's song is one of Philip's favorites in the honor of his birthday:)" },
  44: { title:"Time After Time", artist:"Cyndi Lauper", yt:"7wBgcalM4c4", note:"\"If you fall, I will catch you, I'll be waiting\"" },
  45: { title:"Crush", artist:"Marino, kiki wera", yt:"8-L_mW9Rp8Y", note:"the whole song is just *chef's kiss* lyrically" },
  46: { title:"The Mountains", artist:"This New Light", yt:"UcvUzjS_Lx0", note:"\"The day has begun and I'm already won by you\". I feel like that every morning when I wake up to the sound of the coffee machine." },
  47: { title:"I Was Made For Lovin' You", artist:"KISS", yt:"12fJAnaif34", note:"\"I was made for lovin' you baby, you were made for lovin' me.\"" },
  48: { title:"Ride for You", artist:"Danity Kane", yt:"SPHa6OcRdCY", note:"\"Just know that I'm by your side, there ain't no if, buts or maybes\"" },
  49: { title:"Let's Get It On", artist:"Marvin Gaye", yt:"54LgyqSPfsQ", note:"bow chicka wow wow" },
  50: { title:"I Wanna Dance with Somebody (Who Loves Me)", artist:"Whitney Houston", yt:"6xzN8Nt0Pok", note:"soooo you?:D" },
  51: { title:"Lucky Ones", artist:"Lana Del Rey", yt:"c3JHH6Hc_io", note:"Not sure how being on fire would make us the lucky ones?" },
  52: { title:"Sweet Disposition", artist:"The Temper Trap", yt:"EDpXR2_-WSY", note:"it's quite difficult to make all these notes and this one doesn't even have cute lyrics to quote. So maybe it's here just so I can remind you that I love your eyes idk." },
  53: { title:"Yes - From \"Dirty Dancing\" Soundtrack", artist:"Merry Clayton", yt:"op7gvlm9t8A", note:"me in Australia: \"I've made up my mind, this is gonna be mine.\"" },
  54: { title:"Audio (feat. Sia, Diplo, and Labrinth)", artist:"Sia, Diplo, Labrinth, LSD", yt:"4mUPy84mdb0", note:"this one is just very pleasing." },
  55: { title:"Whatever You Like", artist:"Dove Cameron", yt:"i1y1Ein1Vdc", note:"\"I could drive around with you, my darling, for the rest of my life.\"" },
  56: { title:"Sucker", artist:"Jonas Brothers", yt:"73ouhDibImA", note:"\"I'm a sucker for you.\";)" },
  57: { title:"Sleep On The Floor", artist:"The Lumineers", yt:"8W7A8KlgBJw", note:"I would sleep on the floor if it meant I could be closer to you hahaha" },
  58: { title:"Me & You", artist:"Mother Mother", yt:"p_GdkEIG3oc", note:"Reminds me of a roadtrip that we will go on in the future" },
  59: { title:"I Got You - 1964 Smash Version", artist:"James Brown", yt:"oIZx93Y4Yas", note:"I hope you feel good otherwise this is a little awkward." },
  60: { title:"Sweet Dreams", artist:"Beyoncé", yt:"q4eSC1JOL9w", note:"\"Either way I don't want to wake up from you.\"" },
  61: { title:"Thinking out Loud", artist:"Ed Sheeran", yt:"fdz_cabS9BU", note:"\"And darling, I will be loving you 'til we're 70.\" what is an appropriate age to start calling you darling?" },
  62: { title:"You Know It", artist:"Colony House", yt:"2R2rtbT-7Iw", note:"more roadtrip vibes:) but let's do them together." },
  63: { title:"I See the Light - From \"Tangled\" / Soundtrack Version", artist:"Mandy Moore, Zachary Levi", yt:"h9SAUq5-V7o", note:"A throwback to last Halloween (hint: the song is from Tangled)" },
  64: { title:"Love Never Felt So Good", artist:"Michael Jackson", yt:"FkxEE7wZ83c", note:"self-explanatory" },
  65: { title:"An Isoun Aggelos", artist:"Vasilis Kazoulis", yt:"kkkiqaYgKWw", note:"bet you weren't expecting me to pull up with a greek song" },
  66: { title:"Best of You (feat. Elle King)", artist:"Andy Grammer, Elle King", yt:"TzhvBZ-AD58", note:"I just really like the message here." },
  67: { title:"Your Own Sweet Way", artist:"The Notting Hillbillies", yt:"xDzzutM8hLw", note:"Very random recommendation I received but I really vibed with it?" },
  68: { title:"Heaven", artist:"Maude Latour", yt:"5-l5F5tK4Lc", note:"not sure about the denim, but all the rest thumbs up" },
  69: { title:"I Love You So", artist:"The Walters", yt:"k7kzc3Nof08", note:"(please ignore the text and don't let me go, I love you so (much))" },
  70: { title:"Use Me (Brutal Hearts) (feat. Sturgill Simpson, Dove Cameron & Johnny Blue Skies)", artist:"Diplo, Sturgill Simpson, Dove Cameron, Johnny Blue Skies", yt:"Ldzy-6Xy2Ks", note:"pure vibes, I don't know what to add" },
  71: { title:"A Sunday Kind Of Love", artist:"Etta James", yt:"yKKYpjN3N3U", note:"this song feels like a lazy stretch that makes your whole body feel good." },
  72: { title:"Ho Hey", artist:"The Lumineers", yt:"SuZytYa71lk", note:"I wanted this to be a song in my wedding since before I ever dated anyone. And it was because of this line: \"I belong with you, you belong with me, you're my sweetheart.\" which I thought said you're my sweet home. Either way they are so true with you, you are both the sweetest man alive and my home." },
  73: { title:"Feel Again - With Heartbeats", artist:"OneRepublic", yt:"2kinE5w6uw4", note:"\"I'm feeling better, ever since you know me.\"" },
  74: { title:"Tongue Tied", artist:"GROUPLOVE", yt:"pkV5Lh2dZ_A", note:"you make me tongue tied quite often. Usually by being incredulous." },
  75: { title:"Share Your Address", artist:"Ben Platt", yt:"AuZ2F29wZ-I", note:"I feel like I took instructions from this song last year hehe." },
  76: { title:"can't slow down", artist:"almost monday", yt:"pounq_5AyME", note:"\"Breathe me in and let me see, something further than my wildest dream. Fluorescent ocean inside your eyes, wash me out and now we're floating with the tide\"" },
  77: { title:"Lovin' You", artist:"Minnie Riperton", yt:"KhaUnHJjS8A", note:"\"Lovin' you is more than just a dream come true.\"" },
  78: { title:"There Will Be Time", artist:"Mumford & Sons, Baaba Maal", yt:"TJnfkm0B2h0", note:"Fun fact: parts of this song are in Pulaar, a West African language spoken in Senegal. How this collaboration came to be I don't know. But I liked it." },
  79: { title:"House Tour", artist:"Sabrina Carpenter", yt:"rt_z10mb_k0", note:"\"I just want you to come inside.;) Baby, what's mine is now yours.\"" },
  80: { title:"Femme Like U", artist:"K.Maro", yt:"2VHjhYGWBP4", note:"je ne veux un homme like you, je veux toi." },
  81: { title:"Stay (If You Wanna Dance)", artist:"Myles Smith", yt:"Iz6cSqRL98M", note:"Please lets dance to this somewhen." },
  82: { title:"Love Is Strange", artist:"Mickey & Sylvia", yt:"g-88RvMz_iM", note:"Come here, lover boy." },
  83: { title:"Teach Me How To Love", artist:"Shawn Mendes", yt:"sRFlSv4BNUs", note:"\"your body's like an ocean, I'm devoted to explore you\" what an exciting adventure" },
  84: { title:"Movement", artist:"Hozier", yt:"4Be-eJLO8ig", note:"you inspire me so much" },
  85: { title:"Pretty Little Things", artist:"LAUV", yt:"oz8ovrsMJFM", note:"muah muah" },
  86: { title:"Motel Love", artist:"Tyler Shamy", yt:"U8D9_SfsDFM", note:"I hope you have a great day today." },
  87: { title:"Honey", artist:"Evelina, Mikael Gabriel", yt:"_9BsMuaHP48", note:"I will never be finnished with you. (haha this song is in finnish, get it?)" },
  88: { title:"Oh My My", artist:"OneRepublic, Cassius", yt:"w4vzMFyjkYY", note:"\"I'm the desert, you're the shining sea. Just what I wanted, you're just what I wanted." },
  89: { title:"Stubborn Love", artist:"The Lumineers", yt:"MYXbL0xqXPc", note:"I am your love and I am stubborn enough to make it stay that way." },
  90: { title:"Amore Mio", artist:"Roy Bianco & Die Abbrunzati Boys", yt:"aDfQv1bLswI", note:"is it just me or does the main guy have a funky voice? But I liked the lyrics:)" },
  91: { title:"Would I Lie To You?", artist:"Charles & Eddie", yt:"_90xDgYBvqo", note:"Noooo, unless it's for a surprise like this playlist and only very little hehe" },
  92: { title:"Come & Go (feat. Marshmello)", artist:"Juice WRLD", yt:"SjGVvdq9ZCs", note:"\"This type of love don't always come and go.\"" },
  93: { title:"Beautiful World", artist:"Michael Bolton", yt:"Q7io7ZCWIZg", note:"Your mom's favorite love song is this one! We could call her while this plays in the background hihi" },
  94: { title:"Those Eyes", artist:"New West", yt:"YPeHGoGhHxg", note:"\"Cause all of the small things that you do are what remind me why I fell for you\"" },
  95: { title:"I Don't Want To Miss A Thing - From \"Armageddon\" Soundtrack", artist:"Aerosmith", yt:"GLFp_C0Zi3M", note:"\"Every moment spent with you is a moment I treasure.\"" },
  96: { title:"My Love Mine All Mine", artist:"Mitski", yt:"Qy9LTRu89FA", note:"I am a dragon and you are my precious treasure" },
  97: { title:"Fly Me To The Moon (In Other Words)", artist:"Julie London", yt:"robMe9rxrVg", note:"So many versions and this one has fun instrumentals." },
  98: { title:"Rather Be (feat. Jess Glynne)", artist:"Clean Bandit, Jess Glynne", yt:"dHdMAdh4Xgc", note:"Happy Birthday My Love:) There was so many songs to choose from but this one you told me was your fave even before I started (inconspicuously) asking." },
  99: { title:"Bewitched", artist:"Laufey", yt:"h1ZhKoSNwjI", note:"\"You wrote me a note, cast a spell on my heart and bewitched me\"" },
  100: { title:"Hey Baby, Here's That Song You Wanted", artist:"blessthefall", yt:"BXDHvW1qzSA", note:"Teddi's birthday is today! Here is his favorite love song. Hands down the most different one from all the others haha" },
  101: { title:"Dlouhá noc", artist:"Helena Vondráčková", yt:"KSWllmfUa68", note:"this will be a long night, but it's necessary to have this here." },
  102: { title:"I Love How You Love Me", artist:"Camera Obscura", yt:"N4NdFVRROC4", note:"\"But darling, most of all, I love how you love me.\"" },
  103: { title:"Wood", artist:"Taylor Swift", yt:"nWgiNsUvcRM", note:"hihi I ain't gotta knock on wood though I love to:)" },
  104: { title:"I Will Follow You into the Dark", artist:"Death Cab for Cutie", yt:"9FhRQt1vm3A", note:"you know I will follow you to the edge of the world:)" },
  105: { title:"12 to 12", artist:"sombr", yt:"Lylp6w7LpHc", note:"\"I am not the least compelled, by anyone but yourself\"" },
  106: { title:"Every Breath You Take", artist:"The Police", yt:"-SaUrDhp034", note:"kinda creepy no? haha" },
  107: { title:"Your Love Is King", artist:"Sade", yt:"TSXpYUPl1Hg", note:"Have you seen Bridget Jones?" },
  108: { title:"IT'S YOU (feat. keshi)", artist:"MAX, keshi", yt:"kRvww8N82Hk", note:"\"I keep dreaming there's a somewhere that we grow old together.\"" },
  109: { title:"Hugging You - Acoustic", artist:"Tom Rosenthal, Billie Marten", yt:"V8s0Q2O7nJk", note:"this one is very raw and I just really feel the text" },
  110: { title:"Shower", artist:"Becky G", yt:"arYQrVEFwHI", note:"wild idea, let's play this while showering ahaha" },
  111: { title:"I Wanna Be Yours", artist:"Arctic Monkeys", yt:"nyuo9-OjNNg", note:"vuuuu (I'm a vacuum cleaner ahahah im so funny)" },
  112: { title:"One More Sleep", artist:"Leona Lewis", yt:"o1Bg5W2jx-0", note:"\"Three more dreams of you and mistletoe\" and a partridge in a pear tree" },
  113: { title:"Christmas Is All Around - Soundtrack Version", artist:"Billy Mack", yt:"6LTgNb7IvNE", note:"\"come on and let it snowww\"" },
  114: { title:"Back for Christmas", artist:"Andrew Belle", yt:"BxK56Sk1qQk", note:"Not sure where you were but I am so glad you are back now." },
  115: { title:"Too Lost In You", artist:"Sugababes", yt:"3t8247yfB9k", note:"One of my all times faves. Always gave me xmas vibes. \"You look into my eyes, I go out of my mind.\"" },
  116: { title:"What Christmas Means To Me", artist:"98", yt:"Lob_F1J6Xro", note:"cuddling, hot chocolate and mulled wine with you." },
  117: { title:"All I Want for Christmas Is You", artist:"Mariah Carey", yt:"fRyhqobl0sk", note:"Merry Christmas, babyyy" },
  118: { title:"Sweater Weather", artist:"Pentatonix", yt:"ncw21xeY9xA", note:"I personally prefer The Neighbourhood version but this one feels more christmassy" },
  119: { title:"Somethin' Stupid", artist:"Robbie Williams, Nicole Kidman", yt:"yZjXpWBsXo4", note:"me: \"And then I go and spoil it all by saying something stupid like \"I love you\".\"" },
  120: { title:"Cold", artist:"Indiana Massara, Alex Sampson", yt:"sCAhSbdfWEg", note:"I will always warm your cold feet." },
  121: { title:"Talk", artist:"Hozier", yt:"JwwJbSbcU2w", note:"I am great at that. Also I love the greek myths in Hozier's songs." },
  122: { title:"I'm In Love With You", artist:"The 1975", yt:"fdowfI9H8R4", note:"this is so cute: \"Heartbeat - is coming in so strong, oh, if you don't stop, I'm gonna need a second one\"" },
  123: { title:"Küss mich", artist:"Ivo Martin", yt:"fMy4tGn9MPg", note:"bitte:) untern den Stern'n" },
  124: { title:"Magic Moments", artist:"Perry Como", yt:"LLiE4QaRACc", note:"I thought this would be a splendid song to whistle for you." },
  125: { title:"Future Looks Good", artist:"OneRepublic", yt:"uIdqgyDZWHQ", note:"\"He said that you are, you are the future - and the future looks good\"" },
  126: { title:"Constellations", artist:"Jade LeMac", yt:"okCM_z9sLV0", note:"\"I trace your constellations\"" },
  127: { title:"Pierre", artist:"Ryn Weaver", yt:"JaM8Zw4---0", note:"I can't believe I found you." },
  128: { title:"Bleib mit mir wach", artist:"Xavi", yt:"_tkhe-v6nTg", note:"Major Ed Sheeran vibes, fell in love on first listen, just like with you." },
  129: { title:"Favorite Record", artist:"Fall Out Boy", yt:"JPG0ay1E3h4", note:"We should get you a record player:) but then I'll have to learn how to make custom vinyls so you can play all the songs about how much I love you on it" },
  130: { title:"Miluju a Maluju", artist:"Václav Neckař", yt:"qLIntudy9ss", note:"I love and I paint. I would love for us to somehow watch this movie, this was one of my favorite movies as a kid. At least let me please show you the \"music video\" for this song." },
  131: { title:"Nonsense", artist:"Sabrina Carpenter", yt:"-KrC-gqKTMg", note:"pop quiz:)" },
  132: { title:"Come to Me", artist:"The Goo Goo Dolls", yt:"7TZo-Muf63s", note:"Happy Birthday to Anika:)" },
  133: { title:"Love Moon", artist:"Felipe Baldomir", yt:"ztKw_ZoIr7Y", note:"\"you took my heart to the love moon.\" not sure what I am trying to tell you here" },
  134: { title:"Someone To You", artist:"BANNERS", yt:"YsZVZU-98TY", note:"You are someone to me <3 if that wasn't obvious" },
  135: { title:"Thinking About You (8D Audio)", artist:"8D Tunes", yt:"4b1zEMl5L-I", note:"you have to listen to this one with headphones to get the full experience but pretty worth it.:)" },
  136: { title:"Be By You", artist:"Luke Combs", yt:"AMk786WeXDE", note:"\"Just wanna hold you close, baby.\":)" },
  137: { title:"Halo", artist:"Beyoncé", yt:"VqQeT7wKqvs", note:"It is a love song and an incredibly beautiful one at that. Unfortunately, it also was my alarm for a few years so now it makes me want to stop it everytime I hear it." },
  138: { title:"The Sound", artist:"The 1975", yt:"bxMA13WQjsc", note:"\"Well, I know when you're around 'cause I know the sound, I know the sound of your heart.\"" },
  139: { title:"Taking Pictures Of You", artist:"The Kooks", yt:"92J6b9rW4uM", note:"I'm not very good at it tho. Don't expect too much, you've seen the quality of the August photo." },
  140: { title:"Lover Girl", artist:"Laufey", yt:"Q8TFOBdXZj0", note:"this whole project is summed up by this: \"Forced to get creative, wrote my feelings down. The independent lady in me is nowhere to be found. I can't wait another day to see you, how embarrasing to be this way.\"" },
  141: { title:"Something I Need", artist:"OneRepublic", yt:"8wURrkTuowI", note:"My heart. That's the thing you got." },
  142: { title:"Be My Baby", artist:"The Ronettes", yt:"gG7UXv8Zc5Q", note:"\"For every kiss you give me, I'll give you three.\":)" },
  143: { title:"Everybody Talks", artist:"Neon Trees", yt:"JwlHM8TvFE4", note:"I think I can sing this one if someone woke me up in the middle of the night" },
  144: { title:"Glue Song (feat. Clairo)", artist:"beabadoobee, Clairo", yt:"CSo0rfnWUQM", note:"\"Don't forget to kiss me or else you'll have to miss me.\"" },
  145: { title:"Take Me - Sped Up", artist:"Amarasco", yt:"MQKy7s1KK1w", note:"More of an evening song tbh but I like it" },
  146: { title:"Made For Me", artist:"Muni Long", yt:"XpKVIYnabDA", note:"Truly. Also Bekky's fave." },
  147: { title:"FEVER DREAM", artist:"Alex Warren", yt:"3D2WPA9ZN30", note:"\"My loneliness left the room the second that you walked in, somethin' like a fever dream.\"" },
  148: { title:"I Say a Little Prayer", artist:"Aretha Franklin", yt:"2t5VNI0XlwY", note:"Forever, forever, you'll stay in my heart and I will love you." },
  149: { title:"Lover/Friend", artist:"KAYTRANADA, Rochelle Jordan", yt:"DKS-oCLRiLQ", note:"both:)" },
  150: { title:"I LIKE", artist:"Yecca", yt:"WGxg5__r2Mw", note:"yeah, I like hehe" },
  151: { title:"Kiss Me", artist:"Sixpence None The Richer", yt:"K2tbQ_g2VbQ", note:"eugh. Every 2000s romantic movie ever. But it belongs here. But I don't need to hear it again for the 10th time this week making this thing:) haha love youuuu" },
  152: { title:"Your Love", artist:"The Outfield", yt:"W2a8Ng1qM8Q", note:"is the best thing to have happened to me." },
  153: { title:"Wish I Knew You", artist:"The Revivalists", yt:"ZMtw1n8tL4I", note:"still plenty of time to get high, and we will share whomevers mood is the better one." },
  154: { title:"In My Arms", artist:"Toby Romeo, Loek, VisionV", yt:"RmUzQdUzKeE", note:"If you were not clear on where I want you, it's in my arms." },
  155: { title:"Always Be Mine (feat. Jordan Ward)", artist:"Syd, Jordan Ward", yt:"-ITWA_ewOwg", note:"Tell me you'll always be mine:)" },
  156: { title:"Loverspell", artist:"Stela Cole", yt:"LT9Q5d39UXM", note:"I am very much underneath your spell." },
  157: { title:"2nd Street Cafe", artist:"Soupless", yt:"lenFPQ_o-7E", note:"how crazy is the story of how we met" },
  158: { title:"Augen schwer", artist:"frytz, Carlo5", yt:"SMzaEx4N3a4", note:"cool beat and I hope \"du laberst mich voll und ich liebe das\" is true for you haha" },
  159: { title:"Stupid Cupid", artist:"Connie Francis", yt:"tNGl42cvpUM", note:"This song also exists in Czech and its as funny crazy as the English version" },
  160: { title:"Like a Prayer - Choir Version From “Deadpool & Wolverine”", artist:"I'll Take You There Choir", yt:"z11jxaOu_Cw", note:"no words. an experience." },
  161: { title:"CUFF IT", artist:"Beyoncé", yt:"AUnzoN7pFE0", note:"I'm in the mood to fuck something up (you). Also can I sit on top of you?" },
  162: { title:"All of Me", artist:"John Legend", yt:"sQtnhwU2R9Y", note:"yes, yes, all of me, let's slow-dance I guess." },
  163: { title:"Take Me to the River", artist:"Annie Lennox", yt:"uUt23gnC4mk", note:"just a vibe,  not really sure why I originally put it in tbh" },
  164: { title:"You Can't Hurry Love", artist:"The Supremes", yt:"rUEGxDMzICM", note:"my mama also says hello to you" },
  165: { title:"The Night We Met", artist:"Lord Huron", yt:"90DKXLbzLto", note:"maybe not the night we met but the night that we were stargazing from the hot tub on the deck." },
  166: { title:"Addicted to You", artist:"Shakira", yt:"MtA4_MDdAQ0", note:"like the sweetest of drugs" },
  167: { title:"I Lived", artist:"OneRepublic", yt:"R9LJ2sBD0F8", note:"I want this for us" },
  168: { title:"It's Not Living (If It's Not With You)", artist:"The 1975", yt:"3bVJFgvUZHg", note:"what a jam." },
  169: { title:"Valentine", artist:"Laufey", yt:"Ejvz4EdcXM0", note:"Will you be my Valentine?" },
  170: { title:"Ain't Nobody (Loves Me Better)", artist:"felix jaehn, Jasmine Thompson", yt:"iTS_8SpWa8I", note:"throwback to 2015:) \"I hope this night will last forever\" - me every night I get to cuddle with you" },
  171: { title:"Carry You Home", artist:"Alex Warren", yt:"bWOnKEmtb1c", note:"I hope we don't need to do that literally but you know I would. Love you." },
  172: { title:"Who You Share it With", artist:"Layup", yt:"9-fLvSVMi5Q", note:"I get so excited if I can share anything with you." },
  173: { title:"Arms Tonite", artist:"Mother Mother", yt:"ZvzOSMEjVUQ", note:"I'm so clumsy oh noooo" },
  174: { title:"this is what falling in love feels like", artist:"JVKE", yt:"cGO6ZwrppDQ", note:"this whole fucking thing is super cliché, I think we are past that." },
  175: { title:"Crazy Little Thing Called Love - Remastered 2011", artist:"Queen", yt:"LV4gSOMVbT8", note:"this one is a boogie" },
  176: { title:"Juno", artist:"Sabrina Carpenter", yt:"j360s9CtZTs", note:"\"Have you ever tried this one?\"" },
  177: { title:"Stereo Love", artist:"Edward Maya, Vika Jigulina", yt:"bfl76Sr-Rsk", note:"2000s hot" },
  178: { title:"I'm With You", artist:"Vance Joy", yt:"F4HT1xSfsoc", note:"through all the ups and down." },
  179: { title:"You & Me Time", artist:"BETWEEN FRIENDS", yt:"TvAvOfSQpAA", note:"my favorite kind of time." },
  180: { title:"Blue Red And Grey", artist:"The Who", yt:"GCycKHeNnBQ", note:"\"But I like every minute of the day. I like every second, so long as you are on my mind.\"" },
  181: { title:"Tom's Diner", artist:"AnnenMayKantereit, Giant Rooks", yt:"WBaqKUODr8o", note:"After a long discussion with my mum I have conceded and decided it is I guess a love song?" },
  182: { title:"Be Without You - Kendu Mix", artist:"Mary J. Blige", yt:"DJbzO-t6cwI", note:"\"Chemistry was crazy from the get-go. Neither one of us knew why\"" },
  183: { title:"tau mich auf", artist:"Zartmann", yt:"nf0ynWhe9AM", note:"\"Doch wenn du tanzt, dann tau ich auf\" with laughter, my silly goose" },
  184: { title:"Are You Ready For Love? - Remastered", artist:"Elton John", yt:"2XfewZo7eUc", note:"Cause I have so much to give." },
  185: { title:"Room For You", artist:"OneRepublic", yt:"52tQvAZ7jo8", note:"Actually, I currently got two plus a kitchen and a bathroom:)" },
  186: { title:"Still into You", artist:"Paramore", yt:"tv7yHglIDsc", note:"\"Can't count the years on one hand that we've been together. I need the other one to hold you.\" I mean I can but it's such a cute lyrics." },
  187: { title:"Accidentally In Love", artist:"Counting Crows", yt:"GEo7W-uJNkc", note:"Leila is the dragon, I'm Jozin z bazin and Czech Republic has a sea. (this song is from shrek)" },
  188: { title:"Masterpiece", artist:"Cloudy June", yt:"CC4DMvr83So", note:"this whole song is deliciously metaphorical" },
  189: { title:"Electric Love", artist:"BØRNS", yt:"1T6r0OttdN0", note:"\"Baby, you're like lightning in a bottle, I can't let you go now that I got it. And all I need is to be struck by your electric love.\"" },
  190: { title:"Everywhere - 2017 Remaster", artist:"Fleetwood Mac", yt:"gsq3RCIOGEk", note:"\"I wanna be with you everywhere.\"" },
  191: { title:"Stockholm Syndrome", artist:"One Direction", yt:"FwdgR9As16c", note:"\"Oh, baby, I'll never leave you if you keep holding me this way\"" },
  192: { title:"Man I Need", artist:"Olivia Dean", yt:"q6Idg324yBg", note:"You are the man I need:)" },
  193: { title:"One Thing Right", artist:"Marshmello, Kane Brown", yt:"Mq6TvHzgVec", note:"Not to bring your ego down, I think we both did more than one thing right in our lives but that has ultimately lead us together so high five!" },
  194: { title:"Everything's Gonna Be Alright", artist:"Sweetbox", yt:"h2wUFr4JQTs", note:"We should just play this in the background of any fight we have ahahaha" },
  195: { title:"BABYDOLL (Speed)", artist:"Ari Abdul", yt:"VLItWdgbdvg", note:"line 3:)" },
  196: { title:"Lovely Day", artist:"Bill Withers", yt:"QCgeitX5xg0", note:"I hope it is a lovely day?" },
  197: { title:"DVAMATA", artist:"V:RGO, Mishell", yt:"O_bda0n2s4U", note:"Happiest of birthdays to Mila!" },
  198: { title:"Love Story (Taylor’s Version)", artist:"Taylor Swift", yt:"8HljKMDLOgQ", note:"I listened to so much Taylor Swift to pick a few songs I think I now know all the album names." },
  199: { title:"Taste of You", artist:"Rezz, Dove Cameron", yt:"M8TGNlAvHPQ", note:"rawr" },
  200: { title:"Heaven Can Wait", artist:"Michael Jackson", yt:"8Gl9h5FZdxk", note:"a morbid note, if I die for whatever reason, I would like you to be happy and that would include having people in your life, ok? But until I'm here refer to song on the 9th of September." },
  201: { title:"Can't Get You out of My Head", artist:"Kylie Minogue", yt:"o6nYFg2fzkU", note:"what do you think this one is about?" },
  202: { title:"Mrs. Kisses", artist:"tig3r lewis", yt:"CN-7yd91liM", note:"only for you" },
  203: { title:"Soldier, Poet, King", artist:"The Oh Hellos", yt:"sOv0hENoQnE", note:"This to me is a spring fairy song." },
  204: { title:"Bis ans Ende der Welt", artist:"Udo Lindenberg", yt:"FqKplgrvaHU", note:"Alles Gute zum Geburtstag Dag!" },
  205: { title:"What You Won't Do for Love", artist:"Bobby Caldwell", yt:"n9DmdAwUbxc", note:"my best guess for me would be in bed." },
  206: { title:"We Could Be Love", artist:"Hayden James, AR/CO", yt:"QecPv4Gl6FU", note:"let's goo" },
  207: { title:"Catch My Breath", artist:"Alex Warren", yt:"_9nLRB84RX8", note:"\"I've been off my head since the night we met and you look so amazing sometimes I forget to catch my breath.\"" },
  208: { title:"My Home", artist:"Myles Smith", yt:"HESWhhd1T0I", note:"You are my home. I think that one is quite self-explanatory." },
  209: { title:"The Most Beautiful Thing", artist:"Bruno Major", yt:"3gv-XKHj0rw", note:"is having a home with you" },
  210: { title:"Anything For Love", artist:"Dua Lipa", yt:"0dF1dPLF9cQ", note:"this is one of the most straightforward beautiful love songs. We are a team and we can solve anything together." },
  211: { title:"Come and Get Your Love", artist:"Redbone", yt:"DzXEos0xIQM", note:"yeah, come and get it, this serves as a coupon for a free kiss:)" },
  212: { title:"Happy Together", artist:"The Turtles", yt:"BqZ6sRHpWIk", note:"ahahaha ask me how this song came to be on this playlist." },
  213: { title:"I Can’t Stay Away", artist:"Elliot James Reay", yt:"Oq-G-nM-ITE", note:"\"Now my heart is set upon it, set upon being yours.\"" },
  214: { title:"Clumsy", artist:"Fergie", yt:"6qgIUAfZ1SE", note:"this song is just very me around you:) wouldn't have it any other way tho" },
  215: { title:"The Coconut Song", artist:"Christian Mendoza", yt:"PKQPey6L42M", note:"you fool, you thought today is a day to profess love? lalala-ya-lalala-yayayayaya-yay" },
  216: { title:"Love Grows (Where My Rosemary Goes)", artist:"Edison Lighthouse", yt:"HFwsONQdthI", note:"Like our balcony garden hopefully:))" },
  217: { title:"This Must Be the Place (Naive Melody)", artist:"Kishi Bashi", yt:"lU2P1fbTkoo", note:"\"Home, is where I want to be but I guess I'm already there.\"" },
  218: { title:"4AM", artist:"Bastille", yt:"60tVTeskLko", note:"I hope it's not 4am while we listen to it." },
  219: { title:"Always Forever", artist:"Cults", yt:"TlMgAsAmQKE", note:"\"Just come here and we can settle down.\" and have a mint tea?" },
  220: { title:"Dancin’", artist:"CG5", yt:"nrUaOfZgx2M", note:"\"Can't you see, honey, you are for me? How we were meant to be, yeah\"" },
  221: { title:"Adore You", artist:"Harry Styles", yt:"vum2bUJwfkI", note:"\"I get so lost in your eyes.\"" },
  222: { title:"Ain't No Mountain High Enough", artist:"Marvin Gaye, Tammi Terrell", yt:"ABfQuZqq8wg", note:"Listen baby:)" },
  223: { title:"Lay All Your Love On Me - From 'Mamma Mia!' Original Motion Picture Soundtrack", artist:"Dominic Cooper, Amanda Seyfried", yt:"ET0qxH1KY44", note:"can you please recreate the snorkel and fin dancing part in Mamma Mia? Hihi" },
  224: { title:"On Purpose", artist:"Sabrina Carpenter", yt:"_oTcq5zJCk0", note:"\"Baby, I know it's weird, but it's worth it\" you are my favorite weirdo" },
  225: { title:"Sunday Morning", artist:"Maroon 5", yt:"U9-f4Mosb_A", note:"Not every day is a Sunday. But if I did everything right, this one is." },
  226: { title:"Without You (feat. Usher)", artist:"David Guetta, USHER", yt:"ylA9rOmVoP0", note:"2012 called" },
  227: { title:"Belong Together", artist:"Mark Ambor", yt:"Q0ft9ieeAuo", note:"\"like cold ice tea and warmer weather.\"" },
  228: { title:"On My Mind", artist:"Alex Warren, ROSÉ", yt:"uniEqrMXQU4", note:"parts of the lyrics remind me of our sunset tea times." },
  229: { title:"Don't Go Breaking My Heart", artist:"Elton John", yt:"VHK5k2ieudc", note:"I fucking dare you" },
  230: { title:"Roses", artist:"The Chainsmokers, ROZES", yt:"TfdFUMxRzqU", note:"\"Say you'll never let me go.\"" },
  231: { title:"i wish i knew how to quit you", artist:"sombr", yt:"f6n6OBDMqnM", note:"toxically beautiful and so in love. I don't share his sentiments though, I don't want to know how to quit you." },
  232: { title:"Mess Is Mine", artist:"Vance Joy", yt:"KAh3A_4GVp8", note:"and my mess is yours, sorryyyy." },
  233: { title:"It Isn’t Perfect But It Might Be - from “Bridget Jones: Mad About the Boy” Original Motion Picture Soundtrack", artist:"Olivia Dean", yt:"gd493XVuA6A", note:"it just might be" },
  234: { title:"Lovesick", artist:"Laufey", yt:"TxpVLoYDgwo", note:"\"So unlike me, somehow I fell in love in just three nights.\"" },
  235: { title:"I Can't Help Myself (Sugar Pie, Honey Bunch)", artist:"Four Tops", yt:"WHSLxOyxeJk", note:"\"I can't help myself. I love you and nobody else\"" },
  236: { title:"The Best Part", artist:"anamē, gardenstate, Bien", yt:"w2wDgHLosTc", note:"being with you is the best part:)" },
  237: { title:"forever and a day", artist:"Abe Parker", yt:"In9ROR45rvM", note:"you definitely belong in my arms forever and a day" },
  238: { title:"Real Love Baby", artist:"Father John Misty", yt:"0wFVsbbrEHQ", note:"I've got my real love baby" },
  239: { title:"There's No Way (feat. Julia Michaels)", artist:"LAUV, Julia Michaels", yt:"PaQhO1PA8CQ", note:"\"Every second with you I want another.\"" },
  240: { title:"I Melt with You", artist:"Modern English", yt:"RmDftGg1kQI", note:"like the ice-caps. Too soon?" },
  241: { title:"Hungry Eyes - From \"Dirty Dancing\" Soundtrack", artist:"Eric Carmen", yt:"7WkPzPOXW1Q", note:"\"One look at you and I can't disguise I've got hungry eyes.\"" },
  242: { title:"BUTTERFLIES", artist:"MAX, Ali Gatie", yt:"bt1OQ19kfSc", note:"\"I won't stop getting butterflies.\" same way our home will not stop getting fruit flies in the summer apparently haha." },
  243: { title:"Ma Chérie - Remady Radio Edit", artist:"DJ Antoine, The Beatshakers, Remady", yt:"AbsQxC0nJNo", note:"\"When I look into your eyes, I see rainbows in the sky\" ICONIC" },
  244: { title:"I Would Do Anything for Love", artist:"Melting Oak", yt:"CXDESiQNLq4", note:"Even move to a diiferent country;)" },
  245: { title:"HEAD OVER HEELS", artist:"LoveLeo", yt:"QLgZ448Miuk", note:"You definitely get me head over heels, tripping and stumbling." },
  246: { title:"I Just Want To Make Love To You - Single Version", artist:"Etta James", yt:"3TDNCBgg3Rw", note:"hehe pretty self-explanatory?" },
  247: { title:"305", artist:"Shawn Mendes", yt:"Tv5MeADp3mU", note:"\"You're my sunlight on a rainy day.\"" },
  248: { title:"Everything You Do", artist:"The Happy Fits", yt:"cbwBd2etk6s", note:"Cannot choose a lyrics as are fun and trueeee." },
  249: { title:"Love Is All Around - From \"Four Weddings And A Funeral\"", artist:"Wet Wet Wet", yt:"HuPGXnY9Odg", note:"Reminds me of Love, Actually every time. What a masterpiece." },
  250: { title:"For Forever", artist:"SAILR", yt:"3MHImfRF-Xs", note:"And to Earendel and back. Which would coincidentally take forever. So I guess it's the same?" },
  251: { title:"Can't Help Falling in Love", artist:"Elvis Presley", yt:"OjiOTDqYYo0", note:"again and again and again" },
  252: { title:"Tears", artist:"Sabrina Carpenter", yt:"FjOhnPD_RXo", note:"\"I get wet at the thought of you\" what else were you expecting with this song" },
  253: { title:"Your Song - From \"Moulin Rouge\" Soundtrack", artist:"Ewan McGregor, Alessandro Safina", yt:"HatxxtiVCzs", note:"My gift is usually my presence but this will do to. You can tell everybody that this is your website however." },
  254: { title:"By My Side", artist:"Connor Price", yt:"0TnEgnir0vE", note:"there's no one I'd rather have by my side." },
  255: { title:"Hold Me Closer", artist:"Elton John, Britney Spears", yt:"CHSGsoKHIRA", note:"I never knew Elton John and Britney Spears would be a combo the world would get but it's really iconic." },
  256: { title:"Baby Spoon", artist:"Cavetown", yt:"9NDjt5zd6TU", note:"small spoon, big spoon, let's cuddle." },
  257: { title:"So Easy (To Fall In Love)", artist:"Olivia Dean", yt:"7f_mlKlOLMo", note:"this whole text. So easy." },
  258: { title:"Paper Rings", artist:"Taylor Swift", yt:"a3FVEgsi5ag", note:"\"Darling, you're the one I want.\"" },
  259: { title:"High Without Your Love", artist:"Loote", yt:"0cLYd-o3IW0", note:"what about us high and in love?" },
  260: { title:"Love My Life", artist:"Robbie Williams", yt:"ITJPzv_P1EI", note:"especially with you. This is a good song to sing to yourself when you feel sad, it's all true." },
  261: { title:"Locked out of Heaven", artist:"Bruno Mars", yt:"zuaBRqUBhyw", note:"\"But swimming in your water's something spiritual.\" ????" },
  262: { title:"Mind Over Matter", artist:"Young the Giant", yt:"hWF-OHzi4co", note:"I think by now you know you are on my mind." },
  263: { title:"You're My Best Friend - Remastered 2011", artist:"Queen", yt:"MhMFTuK8fg4", note:"and lover:) \"Ohh, you make me live.\"" },
  264: { title:"Rollercoaster", artist:"Bleachers", yt:"LibjUBlLX6o", note:"From all of the songs your friends gave me the fastest one to my heart. Happy birthday to Bekky today!" },
  265: { title:"Mit dir", artist:"Dilla", yt:"1zmpxGRc0zA", note:"\"Mit dir gegen die Welt.\"" },
  266: { title:"Love Me Like You Do - From \"Fifty Shades Of Grey\"", artist:"Ellie Goulding", yt:"6eW99oNNRvI", note:"have you seen 50 shades? I haven't and probably never will. But this song is okay. Love me like you do and all that:)" },
  267: { title:"WHERE IS MY HUSBAND!", artist:"RAYE", yt:"94mq0YBsn8U", note:"I would like to say I specifically avoided any songs that directy asked you to marry me as I promised to not do that but I couldn't leave this one out." },
  268: { title:"Stand By Me", artist:"Ben E. King", yt:"b-D5yAAXYng", note:"Because I am famously afraid of the night. Btw if you find any of my jokes bad, it's because I am making all these notes in one sitting and it's quite difficult to shoot off several hundreds of them." },
  269: { title:"Love Sensation", artist:"Madonna", yt:"6B6sawGaLTI", note:"\"When we go walking, sun lights all around you, it's all around you. And did I mention, you always bring me, bring me back with your good intentions\"" },
  270: { title:"Infatuated", artist:"Rangga Jones", yt:"LAr2UHFRTCE", note:"\"Oh, you got me infatuated.\"" },
  271: { title:"Elephant Love Medley - From \"Moulin Rouge\" Soundtrack", artist:"Nicole Kidman, Ewan McGregor, Jamie Allen", yt:"xm9OG8CfFd0", note:"Let me sing this to you please, I play both parts wonderfully hahaha" },
  272: { title:"Love You For A Long Time", artist:"Maggie Rogers", yt:"2RAoRjeUntE", note:"\"Oh, I am gonna love you for a long time.\" also Maggie Rogers always has the best vibes." },
  273: { title:"Shut Up And Drive", artist:"Rihanna", yt:"VUNU9mep9Lg", note:"vroom vroom…?" },
  274: { title:"How Deep Is Your Love", artist:"Bee Gees", yt:"wwEN7zly9NM", note:"Very deep." },
  275: { title:"Love", artist:"The Something Specials, Taylor Olin", yt:"XqK6Vd0oCvg", note:"just \"Love\" how presumptious of the authors innit?" },
  276: { title:"Yellow", artist:"Coldplay", yt:"9qnqYL0eNNI", note:"why was it all yellow." },
  277: { title:"Teenage Dream", artist:"Katy Perry", yt:"X1yb80PWsN4", note:"hehehe unexpected. \"The way you turn me on, I can't sleep.\" hehe" },
  278: { title:"Jackie And Wilson", artist:"Hozier", yt:"cSWqxbswQAY", note:"Here is Fine's favorite love song for her bday:)" },
  279: { title:"True Love (feat. Lily Allen)", artist:"P!nk, Lily Allen", yt:"r8KBcu5mJ0M", note:"it must be" },
  280: { title:"Paradise", artist:"George Ezra", yt:"CrTKVODhgFk", note:"\"I'm in paradise whenever I'm with  you.\"" },
  281: { title:"Seeing Stars", artist:"BØRNS", yt:"qe30JQoJBgc", note:"\"Your love is such a dream come true.\"" },
  282: { title:"Can't Take My Eyes off You", artist:"Frankie Valli", yt:"rcb2ikx24io", note:"\"You're just too good to be true, can't take my eyes off of you.\"" },
  283: { title:"FINE PLACE TO DIE", artist:"Alex Warren", yt:"7BAOlyx2CJQ", note:"hopefully we will have a happier end than the end of the world but I ask for it to be with you" },
  284: { title:"Tear in My Heart", artist:"Twenty One Pilots", yt:"-olL71GgdXQ", note:"\"The songs on the radio are okay. But my taste in music is your face.\" hihi" },
  285: { title:"Honey", artist:"Lenny Kravitz", yt:"ZCMwahCZgFU", note:"Fun fact: This song name is the only one that appears twice in the whole playlist. Second place would be Hey Lover and Hey Lover! which is even weirder that both of these doubles start with H." },
  286: { title:"Whenever, Wherever", artist:"Shakira", yt:"fFW91xwQFXk", note:"\"and that's the deal my dear.\"" },
  287: { title:"(They Long To Be) Close To You", artist:"Carpenters", yt:"jV127kNz0hs", note:"The song would suggest you are a disney princess." },
  288: { title:"Need Your Love", artist:"OneRepublic", yt:"65BTf9l3wIY", note:"It's quite high on the Maslow's pyramid." },
  289: { title:"Favorite Place to Go", artist:"Layup", yt:"uGxDyymTu2g", note:"\"You are my favorite place to go\"" },
  290: { title:"Rhythm of Love", artist:"Kylie Minogue", yt:"9pN-v7NFe9U", note:"souuu good together" },
  291: { title:"For You (With Rita Ora)", artist:"Liam Payne, Rita Ora", yt:"kOy2Lt2-foU", note:"\"Wasn't looking for love 'til I found you." },
  292: { title:"You're The First, The Last, My Everything", artist:"Barry White", yt:"f2dwSG1x984", note:"\"I mean, really, when you really sit and think about it. Isn't it really, really nice?\" one would even say it's souuu good.\"" },
  293: { title:"Waterloo", artist:"ABBA", yt:"9y-8ZiAJiQo", note:"\"couldn't escape if I wanted to, …, knowing my fate is to be with you.\"" },
  294: { title:"Einmal um die Welt", artist:"CRO", yt:"QnTFQSyTGf4", note:"\"Gib mir nur deine Hand\"" },
  295: { title:"Talking Body", artist:"Tove Lo", yt:"dfShAV90250", note:"Literally starts with \"Ben, stay in bed.\" Completely agree." },
  296: { title:"Never-Ending Summer", artist:"Wes Reeve", yt:"gI_MdqzaiM0", note:"with how much you want us to travel, I think our life will be a never-ending summer:))" },
  297: { title:"I Like Me Better", artist:"LAUV", yt:"MsSIVZlqC9w", note:"To All The Boys is to this day one of my favorite romcoms together with Crazy Rich Asians. This song was playing on repeat for me in 2018. that \"damn\"" },
  298: { title:"Photograph", artist:"Ed Sheeran", yt:"SlbfAYvA_gI", note:"to so many memories we get to make together." },
  299: { title:"Oogum Boogum Song", artist:"Brenton Wood", yt:"ujZhddKl_vE", note:"I will never get over the fact this is called the oogum boogum song. It's great tho." },
  300: { title:"Galbi", artist:"Saint Levant", yt:"jztUTSiH8Qg", note:"\"Je t'offrirais la lune just to have you.\" Mila's recommendation:)" },
  301: { title:"Following the Sun", artist:"SUPER-Hi, NEEKA", yt:"B04YjSaTg8Y", note:"\"Just come along with me.\"" },
  302: { title:"West Coast Love", artist:"Emotional Oranges", yt:"b3jInWRaEZE", note:"You brought this one to the playlist yourself. We were having dinner yesterday (at the time of writing) and I was thinking how stupid it was I cannot ask the one person with such a good taste in music for song recommendations. Actually, I did ask about your fave love songs but you didn't really come up with much. I don't think you realize how many songs you listen to are about love." },
  303: { title:"Rich Love (with Seeb)", artist:"OneRepublic, Seeb", yt:"UM4n3jTu6Q4", note:"One of my favorites, I am rich because I get to love you." },
  304: { title:"Never Gonna Give You Up", artist:"Rick Astley", yt:"lYBUbBu4W08", note:"hehehehe" },
  305: { title:"Stargazing", artist:"Myles Smith", yt:"Fplgu4VVb94", note:"When was the last time we stargazed? Do we have time (and weather for it) tonight?" },
  306: { title:"Hey Lover", artist:"The Daughters Of Eve", yt:"KbHaIbDKQMc", note:"Quite late have I realized that actually the song Hey Lover with ! and without is the same song but the versions have such a different sound that due to not listening to them one after the other I fuckedup. Anyhow, I hope it's been veeery long time since you heard the second one haha oops" },
  307: { title:"Wasted", artist:"Tiësto, Matthew Koma", yt:"JMful7F2xcY", note:"I love funny drunk moments with you." },
  308: { title:"Falling Forever", artist:"Dua Lipa", yt:"IGM-B6CaP0c", note:"the vocals on this astonish me" },
  309: { title:"Bella Napoli", artist:"Roy Bianco & Die Abbrunzati Boys", yt:"a1CXHXxR4x0", note:"Let's gooo, let's gooo, to I-TA-LY!" },
  310: { title:"You Make My Dreams (Come True)", artist:"Daryl Hall & John Oates", yt:"E4CZuj7solw", note:"Listen to this!" },
  311: { title:"If You Were Mine", artist:"Ocean Park Standoff, Lil Yachty", yt:"uBQNYr-Gi8A", note:"How lucky I am you are mine;)" },
  312: { title:"Give Your Heart a Break", artist:"Demi Lovato", yt:"ne_jRAHABx0", note:"Baby, you're not like the rest. Hihi" },
  313: { title:"Body Talks", artist:"The Struts", yt:"BGpPR-IN0us", note:"\"I need to know, know, know. What do ya need, need, need? What do ya like, like, like? Because I'm going to be it tonight\" and every other night" },
  314: { title:"Riptide", artist:"Vance Joy", yt:"En_6WWOWh8E", note:"\"I love you, when you're singin' that song and I got a lump in my throat 'cause you're gonna sing the words wrong.\"" },
  315: { title:"Best Friend", artist:"Rex Orange County", yt:"MMvlxSupSVE", note:"\"I'll be your biggest fan and you'll be mine.\"" },
  316: { title:"Sunny", artist:"Boney M.", yt:"aNKGUaWb0kE", note:"Ah yes, the more poopular sibling song to \"Cloudy\". A banger." },
  317: { title:"If I Can't Have You", artist:"Shawn Mendes", yt:"ORgOsy_9WB8", note:"\"Can't drink without thinking about you.\" I have never seen a cuter, more lovey-dovey drunk than you and I will be forever grateful that I am the recipient of all of that love." },
  318: { title:"Cupid's Chokehold / Breakfast in America", artist:"Gym Class Heroes", yt:"L9kK9kSE7tg", note:"we should make a secret handshake" },
  319: { title:"Burnin' It Down", artist:"Timeflies", yt:"FxptJRg0fsU", note:"for a particularly lazy day" },
  320: { title:"Dopamine", artist:"BØRNS", yt:"L22VmoQZqT4", note:"\"Under your influence, don't let me go\"" },
  321: { title:"Feels (feat. Pharrell Williams, Katy Perry & Big Sean)", artist:"Calvin Harris, Pharrell Williams, Katy Perry, Big Sean, Funk Wav", yt:"fqqcXP1D0Fw", note:"Pharell Williams does not disappoint with vibes. Do you mind if I steal a kiss, tho?" },
  322: { title:"I Love You Always Forever", artist:"Betty Who", yt:"nqZrRS0Vt28", note:"I feel like this one is incredibly self-explanatory." },
  323: { title:"Killing Me Softly With His Song", artist:"Roberta Flack", yt:"l2n167F0eBc", note:"Sometimes you also kill me with your song XD. What does it mean? Not sure." },
  324: { title:"What A Man Gotta Do", artist:"Jonas Brothers", yt:"chNCYjVudDA", note:"*woman" },
  325: { title:"Sunsetz", artist:"Cigarettes After Sex", yt:"eVRbaYq5Aw4", note:"to so many more sunsets we will watch together." },
  326: { title:"Where Have You Been", artist:"Rihanna", yt:"DxC-PpNdwxo", note:"In Germany and then luckily for me in Australia." },
  327: { title:"Let's Hurt Tonight", artist:"OneRepublic", yt:"p3CGGj5f_OM", note:"I've loved this song for a long time. It's a strong reminder that love is also about the times when the day was bad and you feel exhausted and nothing is going right. But together we can hurt, for tonight and survive until tomorrow." },
  328: { title:"Careless Whisper", artist:"George Michael", yt:"QwMK8JVWkBE", note:"I am limited in my emoji usage but imagine the smirking emoji here please." },
  329: { title:"More Than You Know", artist:"Axwell /\\ Ingrosso", yt:"Rs1HqzgM-q8", note:"I didn't see it coming from miles away." },
  330: { title:"I Believe in a Thing Called Love", artist:"The Darkness", yt:"ZbxkV9vCZuU", note:"Happy Birthday tooooo ME! And Cece obviously." },
  331: { title:"Think I'm In Love With You (With Dua Lipa) (Live From The 59th ACM Awards)", artist:"Chris Stapleton, Dua Lipa", yt:"EN9JEGTIrE4", note:"no shit, really?" },
  332: { title:"Be Mine", artist:"GIO DARA", yt:"mUn3f7m6ZuU", note:"love of a lifetime. such a beautiful song" },
  333: { title:"Heaven Is a Place on Earth", artist:"Belinda Carlisle", yt:"8Va1IendJsA", note:"When you walk into the room, you pull me close, and we start to move and we're spinnin' with the stars above and you lift me up in a wave of love\" us dancing in the kitchen" },
  334: { title:"Lost In Japan", artist:"Shawn Mendes", yt:"0vGswW61i8g", note:"We should go there. Actually, let's go to China instead:) (I really hope nothing too bad happened between me writing this note and today)" },
  335: { title:"See You Again (feat. Kali Uchis)", artist:"Tyler, The Creator, Kali Uchis", yt:"EZE62LpaqHg", note:"\"I wonder if you look both ways when you cross my mind.\"" },
  336: { title:"Sarà perché ti amo", artist:"Ricchi E Poveri", yt:"jrI9zLeuizE", note:"what can I say, my italian erasmus made an imprint." },
  337: { title:"Forever", artist:"C. James", yt:"Ba70IV8RU7Q", note:"\"forever and ever and ever\"" },
  338: { title:"My Type", artist:"Saint Motel", yt:"32faUlvDxCw", note:"\"you got a pulse and you are breathing\" never not funny" },
  339: { title:"In Your Eyes", artist:"Alesso, OneRepublic", yt:"aZ6_nKLoKm8", note:"\"I ain't going nowhere.\"" },
  340: { title:"Listen To Your Heart", artist:"Roxette", yt:"yCC_b5WHLX0", note:"And to me. I have many great insights." },
  341: { title:"Clandestino", artist:"Shakira, Maluma", yt:"QgcwBwcoDxg", note:"<3" },
  342: { title:"Just The Two of Us", artist:"Kauai45, Sweet Cocoa", yt:"t3zkI9ACYB0", note:"It's Sophie birthday todayy! Last year this time you were on a boat in Albania." },
  343: { title:"The Thing I Love", artist:"MAX, Andy Grammer", yt:"ff8wenbbVtE", note:"If you catch me smiling your direction it's definitely because I'm thinking about how much I love you." },
  344: { title:"The Power Of Love", artist:"Huey Lewis & The News", yt:"cBfnk-zZqy4", note:"I think the point is that it's powerful." },
  345: { title:"It's Me & You", artist:"Tokyo Tea Room", yt:"lL3C7x-mhFo", note:"\"just me and you\"" },
  346: { title:"I Wanna Sex You Up", artist:"Color Me Badd", yt:"1WnwNmn4VCo", note:"I've been waiting all night so just let me hold you close to me" },
  347: { title:"LA NOCHE DE ANOCHE", artist:"Bad Bunny, ROSALÍA", yt:"0jmAwrqNudw", note:"\"Y que la luna nos supervise.\"" },
  348: { title:"Hold My Hand", artist:"Jess Glynne", yt:"QD3CQlFGTRU", note:"\"Just put your arms around me, tell me everything's okay.\" also nothing beats a jet2 holiday." },
  349: { title:"Let's Go Back", artist:"Jungle", yt:"qF8RIir9z7M", note:"gimme all of it" },
  350: { title:"Oceans", artist:"Coasts", yt:"UA3xCvMg1lE", note:"\"We fell in love right by the ocean\" how true" },
  351: { title:"Hey Lover!", artist:"Wabie", yt:"J4HFNKPzBRw", note:"\"I love you just the way you are.\"" },
  352: { title:"Your Love's Like", artist:"Sabrina Carpenter", yt:"lNwrvHxiDc0", note:"I was a big Sabrina fan before she was popular, this is a deep cut." },
  353: { title:"Champagne Coast", artist:"Blood Orange", yt:"MuZfJwghp1Y", note:"come into OUR bedroom?;)" },
  354: { title:"Burning Love", artist:"Elvis Presley", yt:"5eYjNtK7Ir0", note:"\"Your kisses lift me higher.\"" },
  355: { title:"Until I Found You", artist:"Stephen Sanchez", yt:"znvky0Uq8qc", note:"\"I found you\"" },
  356: { title:"I Can’t Get Enough (benny blanco, Selena Gomez, J Balvin, Tainy)", artist:"benny blanco, Selena Gomez, J Balvin, Tainy", yt:"wfeGmmTCCg4", note:"\"our breaths getting deeper, deeper lately.\" reminds me of our freediving:) I hope it's going okay, I can't see the future." },
  357: { title:"10,000 Emerald Pools", artist:"BØRNS", yt:"If1EVqnwMfs", note:"\"You're the treasure.\"" },
  358: { title:"Where No One Goes", artist:"Jon Thor Birgisson, John Powell, Jónsi", yt:"BM8gC3Oj0OA", note:"This feels like eternal hope and like we can do anything we set our eyes on." },
  359: { title:"Late Night Talking", artist:"Harry Styles", yt:"ls6XtAmqERc", note:"I love late night talking with you" },
  360: { title:"All You Need Is Love", artist:"The Beatles", yt:"_7xMfIp-irg", note:"fun fact: this songs contains the word love 96 times. also your dad's favorite:)" },
  361: { title:"Replay", artist:"Zendaya", yt:"VL0r_xN9HCw", note:"imagine what a music star could've Zendaya been" },
  362: { title:"undressed", artist:"sombr", yt:"O565VNcMCg8", note:"as much as I don't think it's meant to be a love song:)" },
  363: { title:"If I Lose Myself", artist:"OneRepublic", yt:"KdZ5-vrAH6Q", note:"it will always be by your side." },
  364: { title:"WELTiTA", artist:"Bad Bunny, Chuwi", yt:"TRjlrJ2zqn0", note:"\"Baby, te vo'a dar una vuelta por la playita. Te vo'a llenar de besitos la carita.\"" },
  365: { title:"Will You Still Love Me Tomorrow? - 2011", artist:"Amy Winehouse", yt:"JJ3B9wy4Xws", note:"Well actually the day after tomorrow. You know, when the songs end?" },
  366: { title:"Ordinary", artist:"Alex Warren", yt:"Q2NePVoGxYg", note:"I think when I sang that to you drunk in Cairns I already knew it was going to be good." },
};

/* ---- Build the full year -------------------------------------------- */
function buildDays() {
  const days = [];
  for (let i = 1; i <= TOTAL_DAYS; i++) {
    const d = dateForDay(i);
    days.push({
      day: i,
      date: d,
      dateShort: fmtShort(d),
      dateLong: fmtLong(d),
      monthKey: monthKeyOf(d),
      tint: tintForDay(i),
      song: EXAMPLE_SONGS[i] || null,
    });
  }
  return days;
}

const ALL_DAYS = buildDays();

/* deterministic shuffle so each month's tile ORDER (not date) looks scrambled,
   but stays stable across reloads                                        */
function shuffled(arr, seed) {
  const out = arr.slice();
  for (let i = out.length - 1; i > 0; i--) {
    const j = Math.floor(rng(seed * 97 + i) * (i + 1));
    [out[i], out[j]] = [out[j], out[i]];
  }
  return out;
}

/* ---- Group into the 12 (or 13, for the partial start/end) real months
   that the year actually spans, in chronological order. August 2026 only
   has the 2 real kickoff days, so it's padded with blank filler tiles
   (already "open", non-clickable) purely so the grid still reads as one
   full image.                                                           */
function buildMonthGroups() {
  const order = [];
  const byKey = {};
  for (const d of ALL_DAYS) {
    if (!byKey[d.monthKey]) {
      const label = `${MONTHS_LONG[d.date.getMonth()]} ${d.date.getFullYear()}`;
      byKey[d.monthKey] = { key: d.monthKey, label, days: [] };
      order.push(d.monthKey);
    }
    byKey[d.monthKey].days.push(d);
  }
  const firstKey = order[0];
  if (byKey[firstKey]) byKey[firstKey].kickoff = true;
  return order.map((k, i) => ({ ...byKey[k], days: shuffled(byKey[k].days, i + 1) }));
}
const MONTH_GROUPS = buildMonthGroups();

// expose
Object.assign(window, {
  START, TOTAL_DAYS, ALL_DAYS, MONTH_GROUPS, packRows,
  dateForDay, fmtShort, fmtLong, daysBetween, addDays,
});
