#@lib-123
Explore tagged Tumblr posts
Text
not currently taking submissions
i am not the first to make this blog, but i don’t really care. please don’t think i’m copying you though if you run a similar blog, i did come up with the idea by myself
do you have a character you think would serve one of the entities? send them here!
lib x entities theory
the gallery
RULES:
you may submit
- characters as avatars of an entity
- characters as marked by an entity/ies
- domains (will be tagged with “#tma spoilers”)
- rituals
- leitners
other rules
- no real people or tma characters. aside from these just about any character is allowed
- please include the character’s name, source material, and the entity they would serve in your submissions
- if a character has already been submitted you can still submit them with a different entity if you would like
- real people may not be allowed (some exceptions), but real books and real places can be submitted as leitners and domains respectively
- please do not ask me what entity a certain character would serve unless you know for a fact that i know the character
- please do not include multiple submissions in one ask (ex: “character a from [media] is an avatar of [fear] and character b from [media] is an avatar of [different fear]”). if you want to submit two different characters as avatars of the same fear i would prefer that you do that in separate asks as well
rules are subject to change if need be
divider
stats
the buried: 43
the corruption: 102
the dark: 42
the desolation: 100
the end: 107
the eye: 139
the extinction: 66
the flesh: 93
the hunt: 140
the lonely: 123
the slaughter: 127
the spiral: 198
the stranger: 144
the vast: 62
the web: 107
leitners: 28
62 notes
·
View notes
Text
This Month In History - October Part 1
This month there’s so many pop culture landmark anniversaries to the point where I needed to do a 3 parts. Here is part 1 of what I celebrate this month in history:
Oct. 1, 1984: The Unforgettable Fire released
In Oct. 1984, the 4th album by U2 was released. While this might not feel as epic as The Joshua Tree or Achtung Baby (the 2 albums that are often looked as U2's all-time best), this is a very ambitious breakthrough album for the band. It was also the beginning of their longtime obsessions with America, i.e. songs about MLK, Elvis Presley and 4th of July. An excellent album that still holds up. Happy 40th TUF!
Oct. 1, 1999: Three Kings opens
In Oct. 1999, David O. Russell's Operation Desert Storm epic was released. Here is my piece I wrote in 2014. Happy 25th 3K!
Oct. 2, 1959: The Twilight Zone premieres
In Oct. 1959, possibly the greatest genre anthology series in TV history premiered on CBS. From the distinct mind of Rod Serling, each episode was like it's own mini-movie with something to say about society. I discovered it in syndicated re-runs on channel 38 when I was a kid. My older sister and I stayed up and watched their marathon one Summer. The series has been rebooted and remade many times over the years, but those original 5 seasons are truly among the best works in TV ever. Last year I got the blu-ray of the original series and I've slowly been making my way through the entire series and being reminded just how great it was. Happy 65th TTZ!
Oct. 2, 1974: The Taking of Pelham 123 opens
In Oct. 1974, one of the great 70s crime movies was released. Here is my piece I wrote in 2019. Happy 50th TTOP123!
Oct. 2, 1984: Let It Be released
In Oct. 1984, the 3rd album by The Replacements was released. Here is my piece I wrote in 2019. Happy 40th LIB!
Oct. 2, 2009: Zombieland opens
In Oct. 2009, one of the great horror-comedies was released. Here is my piece I wrote in 2014. Happy 15th Zombieland!
Oct. 4, 2019: Ode to Joy released
In October 2019, Wilco's 11th album was released. I got to review this and I've been lucky enough to review several Wilco releases since then. It was a serious return to form for the band and I'd put it up there with Yankee Hotel Foxtrot as one of their best albums. I named it my #2 Album of 2019 and included it in my Best Albums of the 2010s. Happy 5 OTJ!
Oct. 5, 1979: Reggatta de Blanc released
In Oct. 1979, the 2nd album by The Police was released. Talk about not dropping the ball or falling into a sophomore slump! So many great songs on this, notably "Message in a Bottle", "Walking on the Moon" and "Bring on the Night". Best of all, all three members got a chance to shine with songs they wrote not, just Sting. Happy 45th RDB!
Oct. 6, 1989: Drugstore Cowboy opens
In Oct. 1989, Gus Van San’t best movie was released, and that is saying something. Here is my piece I wrote in 2014. Happy 35th Drugstore Cowboy!
Oct. 8, 1999: The Limey opens
In Oct. 1999, one of Steve Soderbergh's most underrated movies was released. Here is my piece I wrote in 2019. Happy 25th TL!
Stay tuned for more October-iversarries!
#this month in history#u2#three kings#david o. russell#the twilight zone#the taking of pelham one two three#joseph sargent#the replacements#zombieland#ruben fleischer#wilco#the police#drugstore cowboy#gus van sant#the limey#steven soderbergh#1984#1999#1959#1974#2009#2019#1979#1989#music nerd#film geek#tv
5 notes
·
View notes
Text
Sooo, I watched 'Lady Ballers' on 123 movies, so let's talk about it.
I will say, it is fascinating as a piece of cinema. At the least, this flick is a comedy, and a romp, so I'm not going to pick it apart as if it was trying to be something it's not. If you watch the trailer, you know exactly what you're in for. It has a decent budget, a bundle of cameos from conservative celebrities. I'm a dem, but when viewing media I try to keep an open mind. For example. I have seen entertaining conservative media in the past. I have a soft spot for the Tuttle Twins cartoon.
...But, yeah, this flick missed the mark. On the one hand, it is a farce. For example, the 'liberal' boyfriend puts ten gay pride flags in his lawn which. C'mon. And, not going to lie, I was genuinely interested in Alex's plot line. I thought they might have gone for a 'Blaire White' situation in which 'not all trans are bad'. But nah, they went whole hog deeply into the idea that no one can be trans, period. And if you are? Your parents suck. Idk. To be real, this was a dumb movie. And by the end, it felt like straight up propaganda. Like, if thats the joke? Like 'ha ha you libs make movies with big statements all the time so we will too'? Well, ok. But, from now on it's the pot calling the kettle black.
I will say, give Matt Walsh the Oscar. I had no idea it was him until the glasses came on in the end. Boy is an actor. But yeah, this movie was dumb, rigid, and while it attempted to poke a little fun at social media, by the end discounting every trans person alive was not the move I tell you what. If u like weird media, check this out.
3 notes
·
View notes
Text
let osc; let currentNoteName = ""; // Nom de la note jouée à afficher let libs = ['https://cdn.jsdelivr.net/gh/ffd8/p5.glitch/p5.glitch.js']; let glitch, img, myNote, playing = false, toggle = true; let sample;
let notesFreq = {}; let noteNames = {};
const noteLabels = ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"];
function highlightBlueAreas(threshold = 200, replaceColorR = 255, replaceColorG = 255, replaceColorB = 255) { glitch.image.loadPixels();for (let y = 0; y < glitch.image.height; y++) { for (let x = 0; x < glitch.image.width; x++) { let i = 4 * (y * glitch.image.width + x); let r = glitch.image.pixels[i]; let g = glitch.image.pixels[i + 1]; let b = glitch.image.pixels[i + 2]; if (b > threshold && b > g && b > r) { glitch.image.pixels[i] = replaceColorR; glitch.image.pixels[i + 1] = replaceColorG; glitch.image.pixels[i + 2] = replaceColorB; } } } glitch.image.updatePixels();
}
function preload() { // you can load custom images, ie: unsplash.com img = loadImage('https://tse3.mm.bing.net/th?id=OIP.yJszwQSyU7LdFADrFbM3fwHaEV&pid=Api'); // sample = loadSound('https://samplelib.com/lib/preview/mp3/sample-3s.mp3'); } e function mouseClicked() { print("ftsio"); toggle = !toggle; // sample.play(); }
function setup() { createCanvas(windowWidth, windowHeight);glitch = new Glitch(this); // initialize p5.glitch ('this' needed in P5LIVE...) glitch.loadImage(img); // grab image to glitch imageMode(CENTER); // draw center out frameRate(128); // slow things down background(0); // Setup oscillator osc = new p5.Oscillator('sine'); osc.start(); osc.amp(0); // Setup MIDI setupMidi(0, 0, true); //midi5.debug = ['note', "controlchange"]; /* midi5.noteOn = (note) => { myNote = note let freq = notesFreq[note.number]; if (freq) { osc.freq(freq); osc.amp(note.velocity / 127, 0.05); currentNoteName = noteNames[note.number] || ""; // afficher le nom si connu } }; midi5.noteOff = (note) => { myNote = note let freq = notesFreq[note.number]; if (freq) { osc.amp(0, 0.3); currentNoteName = ""; // efface l’affichage après relâchement } }; */ for (let midi = 12; midi <= 36; midi++) { const freq = +(440 * Math.pow(2, (midi - 69) / 12)).toFixed(2) * 18; const name = noteLabels[midi % 12] + (Math.floor(midi / 12) - 1); notesFreq[midi] = freq; noteNames[midi] = name; }
}
function draw() { updateMidi()if(note.on && !playing) { let freq = notesFreq[note.number]; if(freq) { osc.freq(freq); //osc.amp(note.velocity / 127, 0.05); osc.amp(note.velocity / 127, .1); currentNoteName = noteNames[note.number] || ""; // afficher le nom si connu playing = true } }else{ let freq = notesFreq[note.number]; if (freq) { osc.amp(0, .1); //osc.amp(0, 0.3); currentNoteName = ""; // efface l’affichage après relâchement playing = false } } background(220); textAlign(CENTER, CENTER); textSize(32); glitch.resetBytes(); //glitch.randomBytes(1); // change # bytes if(currentNoteName == 'F3') { background(random(255), 0, 0) } // cycle allll notes /* for(let n of notes) { // n is each number // only use ones with on if(n.on) { // filter certain numbers if(n.number >= 48 && n.number <= 72) { glitch.randomByte(499 + n.number - 48, n.velocity); //print(n.velocity) } } } */ /*if(myNote != undefined && myNote.type == "noteon") { glitch.randomByte(499 + myNote.number - 48); // jump to quan table //glitch.buildImage(); // compile image } */ if(currentNoteName == 'D3') { glitch.replaceByte(123, 17); } if(currentNoteName == 'E3') { textAlign(CENTER, CENTER) textSize(32) text('hello', width / 2, height / 2) } //glitch.pixelate(ccs[1].value / 127) //glitch.replaceBytes(ccs[2].val / 50, ccs[3].val / 50); //glitch.replaceBytes(random(ccs[2].val/10), ccs[3].val / 50); highlightBlueAreas(ccs[1].val + 128, ccs[2].val * 2, ccs[3].val * 2 , ccs[4].val * 2) //print(img.get(10, 20)) // print(mouseX) // 640 = wrap //glitch.replaceByte(ccs[8].val / 10, 55); glitch.pixelate(ccs[7].val / 127) print(note.number) // 640 = wrap if (note.number >= 12 && note.number <= 24 && (playing || toggle)) { glitch.replaceBytes(note.number * ccs[5].val / 50 + 10, note.number % 255); } else if ((playing || toggle) && note.number > 24) { glitch.randomBytes(ccs[6].val * 2, 0); } /* if (note.number == 47) { sample.play(); } */ glitch.buildImage(); image(glitch.image, width / 2, height / 2, glitch.width, glitch.height); // display glitched image tint(255-notes[73].velocity*2, 255-notes[74].velocity*2, 255-notes[75].velocity*2)
}
function mousePressed() { glitch.resetBytes(); // reset glitch glitch.buildImage(); // compile image }
0 notes
Text
BOYNEXTDOOR: "THE ALBUM IS TITLED 'NO GENRE', BUT WE'RE 'ALL GENRE' CONFIDENT IN MAKING GOOD MUSIC
REPORTED BY LEE HA-NA ON NEWSEN NAVER TRANSLATED BY BNDWIKI
The group BOYNEXTDOOR is hinting at reaching a new career high with their new album that showcases endless possibilities.
BOYNEXTDOOR (Sungho, Riwoo, Myung Jaehyun, Taesan, Leehan, and Woonhak) will release their 4th mini album No Genre on May 13 at 6 p.m. No Genre is a record that expresses their ambition to break free from the boundaries of musical genres and create the kind of music they truly want to make. It offers a glimpse into the group's expanded musical spectrum.
Taesan explained, "We approached this album differently from the previous ones. With our past albums, we focused on aligning the songs with a specific theme. This time, we asked ourselves, 'How can we make our music easier for listeners to approach?' and 'How can we make it be received as genuinely good music?' we thought a lot and studied those questions."
He continued, "We chose the title No Genre because we wanted to express our ambition to break away from any fixed frameworks- whether in terms of genre or message. That's why the album includes songs from a variety of genres," adding, "There are two main messages we wanted to convey with this album. The first is a free-spirited energy, it shows BOYNEXTDOOR unconfined by any limits. The second is to showcase just how many genres BOYNEXTDOOR can pull off, and how much our musical spectrum has expanded."
The title track "I Feel Good" is a song that blends a heavy bassline, solid guitar riffs, and intuitive lyrics, with vocals that seamlessly switch between rapping and singing. Myung Jaehyun, Taesan, and Woonhak took part in the songwriting, and the track was produced by ZICO and Pop Time.
Regarding the selection of the title track, Woonhak shared, “Even before we started producing the album, we had already agreed that the next title track should be a song we could really jump around to with the audience on stage.
When we came across this beat, we immediately thought, 'This has to be the title track,' and worked on it with that mindset. The members involved in the process focused on how to shape the song in a way that would really reflect our group's identity. The pre-chorus includes melodies and lyrics inspired by children's songs, capturing BOYNEXTDOOR's carefree and mischievous spirit."
Taesan added, "The moment I heard the beat, I was determined to make this the title track no matter what. Thankfully, the song came out great, and I felt confident when it was officially chosen as the title. The other members worked really hard, and I think it ended up showing BOYNEXTDOOR's unique color well."
In the music video, BOYNEXTDOOR transform into rockstars, bursting with energy in various settings such as streets, concert venues, and buses. Sungho explained, "The concept is that six friends decide to hold a performance together and go around to crowded places promoting it. They gather people and end up dancing and performing on stage together. We tried to create the right atmosphere for the storyline in locations like alleys, shops, and parking lots," adding, "The message is, 'We're showing up in your everyday space. look at us!' We even came up with some spontaneous movements on site to portray our playful side, and a lot of the ad-lib sounds were created right during filming."
The B-side tracks "123-78," "Step By Step," "? (Is It True?)" and "Next Mistake" offer a different charm from the title track, showcasing BOYNEXTDOOR's versatility across various genres including 1960s pop soul, city pop, and house.
When asked which song featured the most unexpected genre, Taesan answered, "It's '123-78.' It has a jazzy sound with a hint of a carol vibe. It was the first time we approached a track like that as BOYNEXTDOOR, so I think it will feel fresh to listeners.”
Myung Jaehyun added, "123-78' has a completely opposite charm from the title track. It's so different that you might even wonder, 'Are all these songs really on the same album?' I personally think we gathered only good songs for this album. To me, a good song is one where the intended message comes across clearly to the listener, and I believe each track successfully delivers the messages we wanted to share."
The main message of the new album No Genre ultimately comes down to "good music." Myung Jaehyun explained, "Each track has a clear message it aims to deliver. The genres vary track by track, and the lyrics were crafted to suit each one perfectly. What ties it all together is that it's uniquely BOYNEXTDOOR." He continued, "What makes something feel like BOYNEXTDOOR is that it's music grounded in everyday life, direct expressions, relatable emotions, and themes you might easily encounter around you, but that become beautiful when expressed through music. I think we've created an album that embodies those themes."
The BOYNEXTDOOR members also showed strong affection and confidence in their team. When asked about the source of that confidence, Myung Jaehyun said, "Even from a songwriting standpoint, I feel like the members can pull off anything I give them. The album title may be No Genre, but I think the members are 'All Genre.' Their musical range is incredibly wide, and there's definitely confidence in their skills. If there's something I'm lacking in, I'm confident that someone in this group excels in it. It's a kind of assurance that comes from being in a team. you'd never be able to do these things alone, but with the six of us, it feels possible."
#boynextdoor#ot6#2025#interview#trans: bndwiki#full interview transcripts#era: i feel good#250513#en:interview
0 notes
Text
Taglist 7
@isabel030507
@itsjusttaylor
@itsmaccaims
@itssecretstudenttreefan
@itstinaaaaahhhhh
@itsyogirlx
@ivoryangel
@ivoryangel1290
@ivylavender
@izzy
@jamieee-fuckin-pottah
@jamieisyourhusbando
@jamjamout
@jkplayboybun
@jo-he-cl-di
@jooo-pl
@joshuag7g6f5dtftdt
@junipersberries
@just-dreaming-here-forever-blog
@leeleemarie23-blog
@leighpanth09
@leonssweatheartlizzy
@lexie983
@leyra-giovanni
@lib-123
@lichi-dunkera
@lilith
@lilith-safarina
@lilith-violet
@lilqi
@lina
@linalinalu
@linalinaluna
@literallynothing22
@literishdegree99
@littlegaaby
@littlelovebug98
@livelaughlovejackhughes
@livesinfantasyland
@livisss
@livje
@lizva
@lizzystuffsthings
@llynnyll
@loganbcrnes
@lokislady82
@lol444sblog
@lov3vivian



𝐓𝐡𝐞 𝐃𝐨𝐠 𝐃𝐚𝐲𝐬 𝐀𝐫𝐞 𝐎𝐯𝐞𝐫™ 𝐌𝐚𝐬𝐭𝐞𝐫𝐥𝐢𝐬𝐭
𝐘𝐨𝐮𝐫 𝐬𝐧𝐢𝐟𝐟𝐥𝐢𝐧𝐠 𝐧𝐨𝐬𝐞 𝐩𝐢𝐜𝐤𝐞𝐝 𝐮𝐩 𝐡𝐢𝐬 𝐬𝐜𝐞𝐧𝐭. 𝐇𝐞 𝐬𝐦𝐞𝐥𝐭 𝐥𝐢𝐤𝐞 𝐬𝐩𝐞𝐚𝐫𝐦𝐢𝐧𝐭 𝐚𝐧𝐝 𝐰𝐞𝐭 𝐝𝐢𝐫𝐭 𝐚𝐟𝐭𝐞𝐫 𝐢𝐭 𝐫𝐚𝐢𝐧𝐬 – 𝐢𝐭 𝐰𝐚𝐬 𝐝𝐮𝐥𝐥𝐞𝐝 𝐛𝐲 𝐭𝐡𝐞 𝐬𝐦𝐞𝐥𝐥 𝐨𝐟 𝐥𝐚𝐭𝐞𝐱 𝐠𝐥𝐨𝐯𝐞𝐬 𝐚𝐧𝐝 𝐬𝐭𝐞𝐫𝐢𝐥𝐞 𝐬𝐚𝐧𝐢𝐭𝐢𝐳𝐞𝐫 𝐛𝐮𝐭 𝐲𝐨𝐮 𝐬𝐦𝐞𝐥𝐭 𝐡𝐢𝐬 𝐧𝐚𝐭𝐮𝐫𝐚𝐥 𝐦𝐮𝐬𝐤 𝐛𝐞𝐧𝐞𝐚𝐭𝐡 𝐢𝐭 𝐚𝐥𝐥 𝐚𝐧𝐝 𝐟𝐞𝐥𝐭 𝐚 𝐬𝐰𝐢𝐭𝐜𝐡 𝐢𝐧 𝐲𝐨𝐮𝐫 𝐦𝐢𝐧𝐝...
run fast for your mother, run fast for your father: profile reports
Ω ₊˚𖥔➤ profile report: Doctor Kent (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ profile report: Chips (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ profile report: Pepper (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ profile report: Genny (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ profile report: Kylie (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ profile report: Legs (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
run for your children, for your sisters and brothers: Playlists
Ω ₊˚𖥔➤ Saint Selene's Sound System: Playlist (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ The Forest: Playlist (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ Doctor Kent's Walkman: Playlist (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
leave all your love and your longing behind: drabbles 𖥔 ₊˚⊹🐾.ᐟ (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ A Doctor’s Checkup
Ω ₊˚𖥔➤ Valentine’s Day
you can’t carry it with you if you want to survive: locations!𖥔 ₊˚⊹🐾.ᐟ
Ω ₊˚𖥔➤ St Selene’s: the bathhouse (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ St Selene’s: the omega medical bay (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ St Selene’s: the facility map (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
the dog days are over || 𝐂𝐡𝐚𝐩𝐭𝐞𝐫 𝐥𝐢𝐬𝐭 𖥔 ₊˚⊹🐾.ᐟ
last update: April 2024
the dog days are done
Ω ₊˚𖥔➤ 𝐥𝐢𝐧𝐤𝐬: 𝐀𝐎𝟑 || 𝐖𝐚𝐭𝐭𝐩𝐚𝐝 || 𝐓𝐮𝐦𝐛𝐥𝐫 .𖥔 ₊˚⊹🐾.ᐟ (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Can you hear the horses? - design credits: 𖥔 ₊˚⊹🐾.ᐟ
Ω ₊˚𖥔➤ barbwire dividers – @strangergraphics-archive
Ω ₊˚𖥔➤ masterlist layout inspiration – @lilacevans
‘cause here they come - taglists: 𖥔 ₊˚⊹🐾.ᐟ
Ω ₊˚𖥔➤ The Dog Days Are Over Taglist. (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
Ω ₊˚𖥔➤ The Ultimate Taglist. (𝐓𝐨 𝐁𝐞 𝐏𝐮𝐛𝐥𝐢𝐬𝐡𝐞𝐝)
234 notes
·
View notes
Text
@"xxx pagtawid sa ilog tinitiis ng mga guro, xxx": flashin' back Masbate PROV 🏞, valedictorian Dad waitin' line fo a vocab from the dicx'nary @ - maybe - a lib. 🏅
https://www.youtube.com/abscbnnews
⤵ Partial
Curriculia lia Vitia:
"MS. Zally Almoradie"
Ante Primaria
3rd Honoree [MEDALE: Bronze]
BEST Writer
Graduate [KINDER: B (Now)]
TOTAL LEARNING SCHOOL, Muntinlupa, Philippines
Entree Specialty: Acceleration
S.Y. 1988 - 1989
》 KINDER (Then).
Primaria
Masigla Top 3 | Masigla Secretary
Masigla Winner [CONTEST: Sabayang Pagbigkas; SECTION: 1 - Masigla (a.k.a. Healthy)]
Prize Winner [PRIZE: Sauna Jacket w/ Hood by "Kool Aid" & "Kool Aid Kiddie Club" Membership]
Enrollee [GRADE: I]
SAN SEBASTIAN COLLEGE, Manila, Philippines
S.Y. 1989 - 1990
Class Top 3
BIRHENG Marya [EVENT: Religious Pageant; Israeli & Egypta Introduction: (G)AUNT Zally Almoradie]
Enrollee [GRADE: II]
JUAN LUNA SCHOOL (Then), Manila, Philippines
Nativity Specialty: December 16
S.Y. 1990 - 1991
》 JUAN LUNA ELEMENTARY SCHOOL (Now).
Marangal Top 3 | Marangal Secretary
Participant | BEST Muse in Uniform [EVENT: Intermural Sports; CONTEST: Modelling, Oration, Relay, Scrabble]
Marangal Muse [SECTION: 3 - Marangal (a.k.a. Honest); EVENT: Sporty Pageant; Austrian & French Introduction: MADEMOISELLE Zally Almoradie]
Enrollee [GRADE: III]
SAN SEBASTIAN COLLEGE - RECOLETOS, Manila, Philippines
Festivity Specialty: March 18
S.Y. 1991 - 1992
Branch Top 3 | Branch Secretary
Enrollee [GRADE: IV]
REGIS GRACE MONTESSORI SCHOOL, Las Pinas, Philippines
S.Y. 1992 - 1993
Branch Top 2
RAPUNZEL Zally Almoradie [SKIT: MR. & MR. Grimm's Fairytales]
Enrollee [GRADE: V]
REGIS GRACE MONTESSORI SCHOOL, Las Pinas, Philippines
S.Y. 1993 - 1994
from Branch Salutatorian to Branch Valedictorian [MEDALE: Gold]
A-1 Filipino Child Awardee | Certificate of Merit Awardee [AWARDER: Children's Museum and Library, Office of the President of the Republic of the Philippines; MEDALE: Gold]
Team Captain | CHAMPION Team | BEST "Team Captain" | MOST Valuable Player [INTERMURAL SPORTS: Volleyball; MEDALE: Silver]
Class Winner [QUIZ BEE: Social Studies, Science; MEDALE: Bronze]
Class "MISS Spain" [EVENT: Beautiful Pageant; Romanian & English Introduction: DRACULA Zally Almoradie]
89% Examinee [EXAMINATION: National Elementary Aptitude Test (N.E.A.T.); VENUE: Next Generation School ST. Paul's College, Paranaque, Philippines]
Graduate [GRADE: VI]
REGIS GRACE MONTESSORI SCHOOL, Las Pinas, Philippines
Natalia Specialty: October 24
S.Y. 1994 - 1995
》 My father, public valedictorian, Zaldy Almoradie wrote my valedictory speech. He taught me my ABCs and 123s at age 5 with my right hand, and I became a best at writing with my left. While playing house, I taught my sister, Zalby Almoradie, her ABCs on a green board and then she hopped straight to Kinder II.
》 My study habit has been flipping through pages of a textbook and then studying those, later memorizing each in a notebook then reviewing and re-reviewing them.
↪ Time is of the essence.
🎓 methinks 'tis m'credential @ C's.M&L,Inc.
0 notes
Text
angelic ad libbing before the 123 step back
5 notes
·
View notes
Text
Taglist 7
@isabel030507
@itsjusttaylor
@itsmaccaims
@itssecretstudenttreefan
@itstinaaaaahhhhh
@itsyogirlx
@ivoryangel
@ivoryangel1290
@ivylavender
@izzy
@jamieee-fuckin-pottah
@jamieisyourhusbando
@jamjamout
@jkplayboybun
@jo-he-cl-di
@jooo-pl
@joshuag7g6f5dtftdt
@junipersberries
@just-dreaming-here-forever-blog
@leeleemarie23-blog
@leighpanth09
@leonssweatheartlizzy
@lexie983
@leyra-giovanni
@lib-123
@lichi-dunkera
@lilith
@lilith-safarina
@lilith-violet
@lilqi
@lina
@linalinalu
@linalinaluna
@literallynothing22
@literishdegree99
@littlegaaby
@littlelovebug98
@livelaughlovejackhughes
@livesinfantasyland
@livisss
@livje
@lizva
@lizzystuffsthings
@llynnyll
@loganbcrnes
@lokislady82
@lol444sblog
@lov3vivian
★𝐓𝐡𝐞 𝐔𝐥𝐭𝐢𝐦𝐚𝐭𝐞 𝐓𝐚𝐠𝐥𝐢𝐬𝐭★
Click below to read more
This Taglist serves those who wished to be tagged in every single fic that I write on my @ladylaviniya blog, updating you on new published chapters. If you wish to be removed from The Ultimate Taglist and be only tagged in a certain fic/fics, please comment below, inbox me or DM me.
If you are a new follower and I have forgotten to add your name below, let me know.
There are over 700 individuals that have been tagged into this list (currently), due to 50 follower tagging limit the posts will be spaced out.
Since there is currently 700 of you lovelies, I ask as a courtesy that you will comment on my fanfiction as I appreciate the encouragement (even if you just comment an emoji smiley face or whatever)- these are better than just leaving a like (Tumblr doesn't care about likes and your appreciation gets buried in my inbox anyway so if you want to be noticed and valued ★please comment★).
49 notes
·
View notes
Text
I posted 2,488 times in 2021
451 posts created (18%)
2037 posts reblogged (82%)
For every post I created, I reblogged 4.5 posts.
I added 1,827 tags in 2021
#♡︎♡︎♡︎ - 280 posts
#ask response - 217 posts
#asks are always appreciated - 217 posts
#chris evans - 194 posts
#sebastian stan - 189 posts
#bucky barnes - 179 posts
#marvel - 146 posts
#steve rogers - 144 posts
#mcu - 141 posts
#𝚛𝚊𝚗𝚍𝚘𝚖 𝚜𝚝𝚞𝚏𝚏 - 120 posts
Longest Tag: 123 characters
#like i always have since i was a child and when i look back it’s always like why did i think that way? i was still so small
My Top Posts in 2021
#5
to love is to burn
𝙖𝙡𝙥𝙝𝙖! 𝙗𝙪𝙘𝙠𝙮 𝙗𝙖𝙧𝙣𝙚𝙨 𝙭 𝙤𝙢𝙚𝙜𝙖! 𝙧𝙚𝙖𝙙𝙚𝙧 
𝙨𝙪𝙢𝙢𝙖𝙧𝙮 || You go into heat at the worst moment in the history of time, maybe ever.
𝙬𝙖𝙧𝙣𝙞𝙣𝙜𝙨 || unprotected sex. alpha/omega dynamics. knotting. oral fixation. breeding kink. fingering. heat. captivity. usual hydra shenanigans. idiots in love. PWP. MINORS DNI 🔞 if any of this makes you uncomfortable then please do not read!
I have decided to not do taglists anymore, so if you wished to be notified of my newest updates please follow @bonky-n-steeb-lib and turn on the notifications!
This is the first time I’ve written a/b/o dynamics, so please be kind. I hope you like it :)
second part here: little red riding hood
This. Wasn’t. Supposed. To. Happen.
This was the first thought that came across your mind as you blinked your eyes open. You looked around to see you were laying down in some old decrepit cell.
The light across the room was just too bright and you squeezed your eyes shut. Your head was pounding and you pressed your fingers to your forehead. “Hey. Are you okay?” The voice was soothing and you unintentionally sighed.
You turned your head around to see Bucky bending over you with concern. “Yeah… kinda okay.” Whatever those idiots had injected into you was making you warm and achy everywhere.
You and Bucky had come on a surveillance mission of a supposedly abandoned hydra base. But someone had tipped off your plan and the base wasn’t as abandoned as expected.
The hydra team had taken you by surprise and injected some substance into your necks and you’d blacked out only to wake up in this dirty cell with Bucky besides you.
A dull pain was starting at the base of your hips, and you were familiar with that kind of pain in your heats, but this definitely wasn’t it as your heat wasn’t due for another two weeks. It must be due to that stupid chemical, you thought.
“Are you sure? You seem a little… off.” Bucky couldn’t place what it was, but his instincts were on high alert. He had woken up a little earlier than you and like a caged beast, he had mapped out all the places of this cell.
There wasn’t really an exit except the door, which was made of some metal and wasn’t easily bending. If it was only him, he honestly wouldn’t have cared much, but you too were involved and he couldn’t take risks.
But the primal instinct to protect you was really surging up in him. The entire time he was sitting ahead of you, facing the door. If someone came, they had to go through him to reach you.
“Yeah Bucky… I’m….” Before you could complete the sentence, an intense cramp built up in your core. Closing your eyes, you held Bucky’s arm tightly and twisted in pain.
Seeing you in distress, Bucky pulled you up and placed your head on his lap. He soothingly ran his hand on your forehead and noticed that sweat had started forming on your skin.
Unknowingly, he started purring deep in his chest to calm you down. The steady rumbling, did help you ease down from your panic. And you wiggled yourself further in his lap until you were resting your head on his shoulder.
Bucky’s nose twitched as a heady scent started permeating the space. It took him a moment to realise the intoxicating ambrosial scent was none other than yours.
His eyes widened as the realisation hit him, you were going into a heat.
Bucky had loved you for a very long time now and he wanted nothing more than to be your alpha. But if you went into heat while being captive, he wouldn’t be able to help you.
And even if he did, you would be too deep into heat to properly consent and would definitely hate him later on. He didn’t know what gods he had angered to deserve such a fate.
On the other hand, you couldn’t help but bury your nose in the crook of Bucky’s neck and scent him. He sat shock still as you rubbed your nose and started nibbling wet little sucks on his neck.
He shook himself out of it when he felt your tongue lick him. He knew he shouldn’t be harsh, but if he didn’t stop you, he couldn’t guarantee what he would do. He was already hard from your little suckles.
When you were pulled away from Bucky, you couldn’t help but whine, “Alpha…” your eyes were closed and you were lost in the pain to notice your words.
You calling him alpha in a breathy moan sent blood rushing straight to Bucky’s dick. It was his fantasy to which he fucked his fist at night and hearing you say it but unable to do anything made Bucky more than a little furious.
“Calm down and open your eyes.” Bucky used his alpha voice which had you responding to him in no time. He hated doing that, but he knew he had to.
Opening your eyes, you could at least comprehend a little of your surrounding. After realising you were literally laying in Bucky’s arms with his scent invading your senses, you jerked back as if burnt.
See the full post
2179 notes • Posted 2021-10-12 03:05:06 GMT
#4
honey,
there is no right way
summary || when you agree to be the feared mobster Bucky Barnes’ sugar baby, you expect to get enough money to pay your bills. what you don’t expect is to fall head over heels for him.
warnings || sugar baby au, mob! Bucky Barnes, unprotected sex, rough sex, violence, SMUT. ANGST. FLUFF. (the holy trinity). MINORS DNI.
I have decided to not do taglists anymore, so if you wished to be notified of my newest updates please follow @bonky-n-steeb-lib and turn on the notifications!

— one
— two
— three
— four
— five
2189 notes • Posted 2021-11-13 16:09:11 GMT
#3
addicted to you
summary || you find Bucky to be irresistible after you both get affected by sex pollen.
warnings || sex pollen. dub con due to the involvement of sex pollen. unprotected sex. horny thots. MINORS DNI.
I have decided to not do taglists anymore, so if you wished to be notified of my newest updates please follow @bonky-n-steeb-lib and turn on the notifications!
There is a surprise for you at the end! I hope you like it ;)
“Oh my god! I’m so sorry.” Bucky stared at you with wide eyes as golden particles of pollen covered both of you.
You blinked your eyes rapidly and you sneezed loudly as the pollen permeated your senses. It was sickly sweet and came from honestly the weirdest looking plant you had ever seen.
Today, not many people were in the Avengers Tower. Some had gone on a mission while the others were busy with their families or had something to do of their own. You and Bucky were the only ones left in the grand building.
You had turned into the ex winter soldier’s second best friend since you had joined the team. You hadn’t really expected to strike a friendship, but Bucky was really a cool guy.
You both had nothing much to do and were bored beyond your minds. You had tried surfing Netflix but couldn’t decided what to watch.
But then Bucky had suggested visiting Tony’s lab to take a look at his new inventions. It wasn’t that Tony’s lab was forbidden or anything. But unless Tony himself called you guys in, you didn’t enter it.
Now that neither Tony nor anyone else, who would stop you from entering was present, you decided to finally sneak inside.
Though there was nothing interesting at first, just dismantled pieces and spare parts, it was still better than idly staring outside the window.
But then you had come across a plant that looked as if taken straight out of Jumanji. It was not much tall, probably around half your height and had buds like that of a poppy plant.
Since it was in Tony’s lab, it must’ve been important or dangerous and Bucky should’ve known better than to fidget with it.
When Bucky had plucked a bud without thinking twice and squeezed it open, a puff of golden coloured pollen had burst out of it and had fallen on both of your faces.
“What the fuck Bucky?” You screamed as you tried to wipe your face clean. “Why the hell did you touch the it? It could be poisonous for all we know!” You stuck out your tongue as some of it landed in your mouth.
“It is not poisonous according to the tests.” Both you and Bucky squeaked with surprise when you heard FRIDAY speak through. “And I thought we were alone.” Bucky said exasperatedly.
“What even is this thing?” You said looking up at the ceiling despite knowing the AI was literally everywhere. “We still haven’t identified the plant and aren’t sure if it’s safe yet. But the tests indicated it isn’t fatal.”
“Okay wow! Where did you even find such a thing?” You were mad at Bucky as well as Tony. Why did the genius have to bring such things in? “It was found in the Hydra base at Siberia.”
You blew a breath through your teeth and rolled your eyes. “Yup. We are definitely dying.” Bucky was somewhat calmed and you guessed it was due to his training.
“It’s not fatal. Calm down. Why don’t we get out of here?” You we’re going to nod in agreement when you started feeling some kind of ache in your lower abdomen.
It wasn’t a sudden burst of pain or cramp but rather a mild yet persistent feeling which refused to away. It felt as if you needed something, but you couldn’t exactly place what.
“Are you okay?” Worry was written clearly across Bucky’s face as he asked you. “I’m fine. It’s just… I feel a bit weird.” You said inadvertently rubbing your stomach.
Bucky’s eyebrows were furrowed and you couldn’t help but think how cute he looked with his nose scrunched up. You wanted to kiss the worried away. And then you’d kiss your way down to his shapely lips.
Oh those lips of his. They made you want to commit all the sins in the world. The way they moved as he spoke and the way his tongue licked them and made them all wet. Oh how you wanted to bite his lower lip and tug at it with your teeth…
You snapped out of your thoughts when you realised you had been staring at Bucky’s lips for far too long instead of paying attention to the things he was saying.
You didn’t understand what this sudden bout about Bucky’s lips was about. He was definitely very attractive and yes, you could write essays about his beauty.
But you were currently in a life or death situation and thirsting about Bucky wasn’t going to solve it. “Wha… what were you saying?” You asked trying to be innocent.
“I was saying that we should go back to our rooms. And you better start paying attention to what I say.” You just nodded and gulped dryly. Bucky took your hand in his and started walking out of the lab.
See the full post
2211 notes • Posted 2021-11-07 16:34:21 GMT
#2
honey,
there is no right way (i)
summary || when you agree to be the feared mobster Bucky Barnes’ sugar baby, you expect to get enough money to pay your bills. what you don’t expect is to fall head over heels for him.
warnings || sugar baby au, mob! Bucky Barnes, unprotected sex, rough sex, violence, SMUT. ANGST. FLUFF. (the holy trinity). MINORS DNI.
I have decided to not do taglists anymore, so if you wished to be notified of my newest updates please follow @bonky-n-steeb-lib and turn on the notifications!
This chapter is short as life hasn’t been kind to me, but I’m trying to write and I hope you like this :)
series masterlist

Bills. Bills. Bills.
One day — one fine day you’d get to live the life you’ve always dreamed of. And a part of that dream was to have enough money to not worry about paying bills on time. But that day was not today.
Your eyes skimmed over all the various mails informing you of the due dates and the amount to be paid. This was not new to you, it happened every month but each time you felt like leaving everything and going somewhere secluded.
With a dramatic sigh, you placed all the bills in a drawer and stacked them neatly in accordance to their due dates and shut it back. You’ll see what to do when the time came.
“Don’t worry.” You were jerked out of your thoughts when Wanda placed her warm hand on your shoulder. “I know you’ll do it, and I can always help you. You know that right?”
Wanda was your best friend and she knew you better than you knew yourself. She was well off and married to Vision, who had now become your friend too.
You knew Wanda would help you at any moment you asked, but you didn’t want to. You could, and you had to solve your problems by yourself.
You ran a small yet cute bakery and today you had to deliver a very big order for a grand party arranged by none other than Bucky Barnes. That man literally ran New York and you were super nervous if he would like your cupcakes and pastries and sandwiches.
It wasn’t his first time though, every morning his right hand man, Steve Rogers, came to your place to get a coffee. Apparently the mob boss didn’t trust anyone except his best friend to not poison his coffee.
Wanda, ever the best friend, had come over to help you prepare these delicacies. “Thank you Wanda. You’re the best. I’ve done this before and I’ll do it this time too.” You were very lucky to have Wanda in your life.
“I believe in you. Now let’s pack these sweet cakes before I gobble them down.” You both chuckled and got back to precisely placing everything in the boxes. Once it was done, you loaded them in your car and started towards your destination.
Once you reached, you couldn’t help but gawk at the magnificence of the house. It was absolutely huge and lavish and honestly the best house you’d ever seen.
The interior of the house was just as impressive as the exterior, expensive rugs and curtains, impressively comfortable couches and seats, and spectacular showpieces which were probably cost more than your house.
You hadn’t ever seen Bucky in person, but from what you had seen in pictures, he was dashingly handsome and the aura he exuded was absolutely commanding. He seemed very sure of himself and what he wanted, and probably that was what made him different from the rest.
The party was yet to begin, and you and Wanda were led to kitchen by a man named Walker as you carried the boxes in your hand. You both sighed with relief when you placed the boxes on the counter as the most dreaded order was finally complete.
“That’s all. Thank you for your service.” He replied in a practiced tone and then turned around and started to walk away. You passed Wanda a look. “You’re welcome. But what about the payment?”
“Your cakes getting served at Boss’ house is an honour itself. Be contended with that.” You stared at him with utter disbelief. “What the fuck do you mean by that? You’re not going to pay me?”
You had worked your ass off since early morning and had made preparations from even before and this man had the audacity to tell you that he wasn’t giving you your hard earned money.
“First of all, I won’t tolerate that tone with me. Lower your voice down. And second, I’m not going to pay you. Consider this a gift from your side to boss and just leave.”
There was not a single chance in hell that you were going to leave without your money. “But Steve always pays me. Where is Steve? I want to talk to him.” Steve was genuinely a good guy and you knew he’d help you.
“He doesn’t have time for some worthless things like these. Now go before I make you leave.” You clenched your teeth and formed fists with your hands. “You know what? I’ll sue you in court and then let’s see who wins.”
It was the worst threat you could give, but you didn’t have anything else. Wanda pulled your hand and call for your attention and mouthed a ‘let’s go.’ You stubbornly shook your head and refused.
“You are gonna sue me? And how are you gonna do that, you poor helpless thing? tsk tsk tsk. The judges are all on our payroll and they’ll make sure you’re the one who is ruined.” Walker said condescendingly.
See the full post
2213 notes • Posted 2021-11-17 13:42:19 GMT
#1
call me when you want
summary || when you call a sex hotline with a need to be dominated you don’t expect to meet (or hear) someone as wonderful as James. but your life becomes a complicated mess as you already love your coworker, Bucky Barnes. however, you are unaware that they are actually the same person.
warnings || BDSM, Dom! Bucky Barnes, dom/sub dynamics, phone sex, dirty talk, identity porn, sex toys, and a lot more (if you didn’t get the gist, this is filthy). SMUT. ANGST. FLUFF. (the holy trinity). MINORS DNI.
I have decided to not do taglists anymore, so if you wished to be notified of my newest updates please follow @bonky-n-steeb-lib and turn on the notifications!

➪ completed
— one
— two
— three
— four
— five
2898 notes • Posted 2021-10-15 12:59:27 GMT
Get your Tumblr 2021 Year in Review →
#my 2021 tumblr year in review#your tumblr year in review#finally it loaded lmao#sebastian stan#chris evans#tom hiddleston
28 notes
·
View notes
Text
So here’s a long post about John and George’s rumored physical fight during the Get Back/LiB sessions brought to you by looking through Tune In: Extended Special Edition which has this bit about how John and George had “their only ever fight [in Hamburg]”:
“John and George had their only ever fight here. It happened in Chug-ou, when they were worn out from playing another six hours. George’s response to one of John’s pointed barbs was to pick up his plate of food and tip it over John’s head, a perilous act to inflict on the leader. John did the same in response, and they both sat there with food running down their backs” (706). Tune In: Extended Edition
The “only fight” phrasing suggests that maybe Lewisohn was weighing in on the question of whether or not John and George ever came to blows during the Get Back/Let it Be sessions. The footnote makes things even more interesting because it shows that George told this story about them dumping food on one another shortly after there had been a newspaper report about his fight with John during Get Back/LiB: “George mentioned the squabble in an interview by David Wigg from Scene and Heard, BBC Radio 1, 4 March 1969.″ Was he thinking he needed to do damage control because of the article?
Wanted to put this, the Sulpy material, the newspaper article about the fight, a rough transcript of the conversation Sulpy reports, and George Martin’s (brief) take on it all in one place. Very interested to see how Peter Jackson and Lewisohn handle this!
Doug Sulpy and Ray Schweighardt describe the reaction the the newspaper story about the fight on p. 206 of Get Back: The Unauthorized Chronicle of the Beatles Disaster (looks like they have this convo taking place on the 22nd of January, 1969, but other sites suggest Daydream/this convo happened the 21st)
It looks like maybe the “one instance” he and George are laughing about could be the dumping food on one another story? I’d always thought they were talking about Paul and Stu’s fight, but Lewisohn at least makes it seem like that particular fight wasn’t too funny.
Steve Hoffman Music Forums user halfjapanese shared the Michael Housego articles referenced during the Daydream sessions as well as their transcription of what George, Yoko and John said about it
Also from January 16, 1969
And the rough transcript:
And then here’s George Martin’s take on John and George and that fight: “Unfortunately for him, George was a few, crucially spotty years younger than John. Perhaps because of this age difference, John was condescending towards George in those early days, and this was apparent when I first met them all. Later on, this uneasiness seemed to evaporate as the business of being a professional Beatle took over. Some undercurrent between the two men may have yet remained to the very end, though: the only people who came to actual blows with one another on ‘Let it Be’ were John and George” (123). With a Little Help From My Friends: The Making of Sgt. Pepper
#The beatles#John Lennon#George Harrison#get back/let it be#mark lewisohn#george martin#john and george#George sure loves dumping stuff on John's head#how many times has he ashed his cigarette over John's head?#and where is housego getting this about them showing up with bruises from?
34 notes
·
View notes
Text
let osc; let currentNoteName = ""; // Nom de la note jouée à afficher let libs = ['https://cdn.jsdelivr.net/gh/ffd8/p5.glitch/p5.glitch.js']; let glitch, img, myNote, playing = false;
let notesFreq = { 48: 130.81, // C3 49: 138.59, 50: 146.83, 51: 155.56, 52: 164.81, 53: 174.61, 54: 185.00, 55: 196.00, 56: 207.65, 57: 220.00, 58: 233.58, 59: 246.94, 60: 261.63, // C4 61: 277.18, 62: 293.66, 63: 311.13, 64: 329.63, 65: 349.23, 66: 369.99, 67: 392.00, 68: 415.30, 69: 440.00, 70: 466.16, 71: 493.88, 72: 523.25 // C5 };
let noteNames = { 48: "C3", 49: "C#3", 50: "D3", 51: "D#3", 52: "E3", 53: "F3", 54: "F#3", 55: "G3", 56: "G#3", 57: "A3", 58: "A#3", 59: "B3", 60: "C4", 61: "C#4", 62: "D4", 63: "D#4", 64: "E4", 65: "F4", 66: "F#4", 67: "G4", 68: "G#4", 69: "A4", 70: "A#4", 71: "B4", 72: "C5" };
function preload() { // you can load custom images, ie: unsplash.com img = loadImage('https://tse3.mm.bing.net/th?id=OIP.yJszwQSyU7LdFADrFbM3fwHaEV&pid=Api'); }
function setup() { createCanvas(windowWidth, windowHeight);glitch = new Glitch(this); // initialize p5.glitch ('this' needed in P5LIVE...) glitch.loadImage(img); // grab image to glitch imageMode(CENTER); // draw center out frameRate(128); // slow things down background(0); // Setup oscillator osc = new p5.Oscillator('sine'); osc.start(); osc.amp(0); // Setup MIDI setupMidi(0, 0, true); //midi5.debug = ['note']; /* midi5.noteOn = (note) => { myNote = note let freq = notesFreq[note.number]; if (freq) { osc.freq(freq); osc.amp(note.velocity / 127, 0.05); currentNoteName = noteNames[note.number] || ""; // afficher le nom si connu } }; midi5.noteOff = (note) => { myNote = note let freq = notesFreq[note.number]; if (freq) { osc.amp(0, 0.3); currentNoteName = ""; // efface l’affichage après relâchement } }; */
}
function draw() { updateMidi()if(note.on && !playing) { let freq = notesFreq[note.number]; if(freq) { osc.freq(freq); //osc.amp(note.velocity / 127, 0.05); osc.amp(note.velocity / 127, .1); currentNoteName = noteNames[note.number] || ""; // afficher le nom si connu playing = true } }else{ let freq = notesFreq[note.number]; if (freq) { osc.amp(0, .1); //osc.amp(0, 0.3); currentNoteName = ""; // efface l’affichage après relâchement playing = false } } background(220); textAlign(CENTER, CENTER); textSize(32); glitch.resetBytes(); //glitch.randomBytes(1); // change # bytes if(currentNoteName == 'F3') { background(random(255), 0, 0) } // cycle allll notes for(let n of notes) { // n is each number // only use ones with on if(n.on) { // filter certain numbers if(n.number >= 48 && n.number <= 72) { glitch.randomByte(499 + n.number - 48); } } } if(myNote != undefined && myNote.type == "noteon") { glitch.randomByte(499 + myNote.number - 48); // jump to quan table //glitch.buildImage(); // compile image } if(currentNoteName == 'D3') { glitch.replaceByte(123, 17); } if(currentNoteName == 'E3') { textAlign(CENTER, CENTER) textSize(32) text('hello', width / 2, height / 2) } glitch.pixelate(ccs[1].value / 127) glitch.replaceBytes(45, 127); glitch.buildImage(); image(glitch.image, width / 2, height / 2); // display glitched image
}
function mousePressed() { glitch.resetBytes(); // reset glitch glitch.buildImage(); // compile image }
/* P5LIVE - Midi If using outside P5LIVE, include p5live-midi.js https://cdn.jsdelivr.net/gh/ffd8/P5LIVE/includes/utils/p5live-midi.js */
0 notes
Text
𝐓𝐡𝐞 𝐁𝐫𝐨𝐧𝐳𝐞 𝐃𝐫𝐚𝐠𝐨𝐧𝐞𝐬𝐬 𝐓𝐚𝐠𝐥𝐢𝐬𝐭
@keira-kaz2y5
@kellygoth66
@ketchupmwah
@kiirazi
@kinavet
@kingliam2019
@kiyomikitsune
@kizzyxren
@kochamffznaczyco
@kokobells
@kooziboob
@kp
@krystalsaph
@kte-alxxndr
@kynawyna
@kyunthetune
@la-signora01
@lainiespicewrites
@lana
@lana-del-rey-1985
@lara
@latenighthorizon
@latupaz
@leahemmy
@leeleemarie23-blog
@leighpanth09
@leonssweatheartlizzy
@lexie983
@leyra-giovanni
@lib-123
@lichi-dunkera
@lilith
@lilith-safarina
@lilith-violet
@lilqi
@lina
@linalinalu
@linalinaluna
@literallynothing22
@literishdegree99
@littlegaaby
@littlelovebug98
@livelaughlovejackhughes
@livesinfantasyland
@livisss
@livje
@lizva
@lizzystuffsthings
@llynnyll
@loganbcrnes
𝐓𝐡𝐞 𝐁𝐫𝐨𝐧𝐳𝐞 𝐃𝐫𝐚𝐠𝐨𝐧𝐞𝐬𝐬 — 𝐂𝐡𝐚𝐩𝐭𝐞𝐫 𝟏
𝐌𝐚𝐬𝐭𝐞𝐫𝐥𝐢𝐬𝐭 || 𝐂𝐡𝐚𝐩𝐭𝐞𝐫 𝟐
𝐂𝐡𝐚𝐩𝐭𝐞𝐫 𝐒𝐮𝐦𝐦𝐚𝐫𝐲: 𝐀 𝐩𝐥𝐚𝐧 𝐠𝐨𝐞𝐬 𝐚𝐰𝐫𝐲 𝐚𝐧𝐝 𝐚 𝐩𝐚𝐫𝐭𝐲 𝐠𝐫𝐨𝐰𝐬 𝐬𝐨𝐮𝐫 𝐰𝐡𝐞𝐧 𝐭𝐡𝐞 𝐡𝐨𝐬𝐭𝐬 𝐚𝐫𝐞 𝐦𝐞𝐭 𝐰𝐢𝐭𝐡 𝐚 𝐝𝐢𝐬𝐚𝐩𝐩𝐨𝐢𝐧𝐭𝐢𝐧𝐠 𝐠𝐮𝐞𝐬𝐭.
𝐏𝐚𝐢𝐫𝐢𝐧𝐠: 𝐃𝐚𝐫𝐤!𝐀𝐞𝐦𝐨𝐧𝐝 𝐓𝐚𝐫𝐠𝐚𝐫𝐲𝐞𝐧 𝐗 𝐋𝐚𝐯𝐢𝐧𝐢𝐲𝐚 𝐓𝐚𝐫𝐠𝐚𝐫𝐲𝐞𝐧 (𝐌𝐲 𝐎𝐅𝐂)
𝐂𝐡𝐚𝐩𝐭𝐞𝐫 𝐖𝐚𝐫𝐧𝐢𝐧𝐠���: 𝟏𝟖+ 𝐃𝐞𝐚𝐝 𝐃𝐨𝐯𝐞 𝐃𝐨 𝐍𝐨𝐭 𝐄𝐚𝐭, 𝐏𝐨𝐬𝐭-𝐖𝐚𝐫 𝐃𝐚𝐧𝐜𝐞 𝐨𝐟 𝐓𝐡𝐞 𝐃𝐫𝐚𝐠𝐨𝐧𝐬, 𝐌𝐞𝐧𝐭𝐢𝐨𝐧𝐬 𝐨𝐟 𝐓𝐚𝐫𝐠𝐚𝐫𝐲𝐞𝐧 𝐇𝐞𝐫𝐢𝐭𝐚𝐠𝐞, 𝐀𝐥𝐭𝐞𝐫𝐧𝐚𝐭𝐢𝐯𝐞 𝐔𝐧𝐢𝐯𝐞𝐫𝐬𝐞, 𝐇𝐮𝐦𝐢𝐥𝐢𝐚𝐭𝐢𝐨𝐧, 𝐈𝐦𝐩𝐥𝐢𝐞𝐝 𝐌𝐮𝐫𝐝𝐞𝐫, 𝐃𝐞𝐩𝐢𝐜𝐭𝐢𝐨𝐧𝐬 𝐨𝐟 𝐏𝐡𝐲𝐬𝐢𝐜𝐚𝐥 𝐀𝐛𝐮𝐬𝐞 𝐚𝐧𝐝 𝐕𝐢𝐨𝐥𝐞𝐧𝐜𝐞. *𝐍𝐨 𝐒𝐦𝐮𝐭 𝐓𝐡𝐢𝐬 𝐂𝐡𝐚𝐩𝐭𝐞𝐫*
𝐖𝐨𝐫𝐝 𝐂𝐨𝐮𝐧𝐭: 𝟑,𝟗𝟎𝟕𝐤
𝐀𝐮𝐭𝐡𝐨𝐫 𝐍𝐨𝐭𝐞𝐬:
⊹⋛⋋( ●´⌓`●)⋌⋚⊹ 𝐇𝐄𝐘 𝐇𝐄𝐘 𝐇𝐄𝐘 𝐏𝐋𝐄𝐀𝐒𝐄 𝐑𝐄𝐀𝐃 𝐓𝐇𝐈𝐒 𝐌𝐄𝐒𝐒𝐀𝐆𝐄 𝐁𝐄𝐅𝐎𝐑𝐄 𝐑𝐄𝐀𝐃𝐈𝐍𝐆 𝐓𝐇𝐄 𝐒𝐓𝐎𝐑𝐘!!
★𝐓𝐡𝐢𝐬 𝐬𝐭𝐨𝐫𝐲 𝐢𝐬 𝐠𝐨𝐢𝐧𝐠 𝐭𝐨 𝐩𝐮𝐭 𝐦𝐨𝐫𝐞 𝐟𝐨𝐜𝐮𝐬 𝐨𝐧 𝐢𝐦𝐩𝐨𝐫𝐭𝐚𝐧𝐭 𝐭𝐡𝐢𝐧𝐠𝐬 𝐥𝐢𝐤𝐞 𝐭𝐡𝐞 𝐩𝐥𝐨𝐭, 𝐡𝐨𝐰 𝐜𝐡𝐚𝐫𝐚𝐜𝐭𝐞𝐫𝐬 𝐝𝐞𝐯𝐞𝐥𝐨𝐩, 𝐚𝐧𝐝 𝐡𝐨𝐰 𝐩𝐨𝐰𝐞𝐫 𝐚𝐟𝐟𝐞𝐜𝐭𝐬 𝐭𝐡𝐞𝐦. 𝐓𝐡𝐢𝐬 𝐦𝐞𝐚𝐧𝐬 𝐢𝐭 𝐦𝐢𝐠𝐡𝐭 𝐭𝐚𝐤𝐞 𝐚 𝐥𝐢𝐭𝐭𝐥𝐞 𝐰𝐡𝐢𝐥𝐞 𝐚𝐭 𝐭𝐡𝐞 𝐛𝐞𝐠𝐢𝐧𝐧𝐢𝐧𝐠 𝐭𝐨 𝐬𝐞𝐭 𝐮𝐩 𝐞𝐯𝐞𝐫𝐲𝐭𝐡𝐢𝐧𝐠. 𝐁𝐮𝐭 𝐝𝐨𝐧'𝐭 𝐰𝐨𝐫𝐫𝐲, 𝐭𝐡𝐞𝐫𝐞 𝐰𝐢𝐥𝐥 𝐛𝐞 𝐥𝐨𝐭𝐬 𝐨𝐟 𝐡𝐨𝐭 𝐚𝐧𝐝 𝐢𝐧𝐭𝐞𝐧𝐬𝐞 𝐬𝐜𝐞𝐧𝐞𝐬 𝐥𝐚𝐭𝐞𝐫 𝐨𝐧. 𝐀𝐧𝐝 𝐞𝐯𝐞𝐧 𝐛𝐞𝐟𝐨𝐫𝐞 𝐭𝐡𝐚𝐭, 𝐭𝐡𝐞𝐫𝐞 𝐰𝐢𝐥𝐥 𝐬𝐭𝐢𝐥𝐥 𝐛𝐞 𝐬𝐨𝐦𝐞 𝐡𝐞𝐚𝐭 𝐚𝐧𝐝 𝐭𝐞𝐧𝐬𝐢𝐨𝐧 𝐭𝐨 𝐤𝐞𝐞𝐩 𝐭𝐡𝐢𝐧𝐠𝐬 𝐢𝐧𝐭𝐞𝐫𝐞𝐬𝐭𝐢𝐧𝐠. 𝐈 𝐣𝐮𝐬𝐭 𝐰𝐚𝐧𝐭𝐞𝐝 𝐭𝐨 𝐛𝐞 𝐡𝐨𝐧𝐞𝐬𝐭 𝐰𝐢𝐭𝐡 𝐲𝐨𝐮 𝐚𝐥𝐥 𝐚𝐛𝐨𝐮𝐭 𝐰𝐡𝐚𝐭 𝐭𝐨 𝐞𝐱𝐩𝐞𝐜𝐭, 𝐢𝐧 𝐜𝐚𝐬𝐞 𝐲𝐨𝐮 𝐩𝐫𝐞𝐟𝐞𝐫 𝐚 𝐟𝐚𝐬𝐭𝐞𝐫 𝐩𝐚𝐜𝐞. 𝐒𝐋𝐎𝐖 𝐁𝐔𝐑𝐍 𝐁𝐔𝐓 𝐈 𝐏𝐑𝐎𝐌𝐈𝐒𝐄 𝐈𝐅 𝐘𝐎𝐔 𝐋𝐈𝐊𝐄 𝐃𝐀𝐑𝐊 𝐂𝐎𝐍𝐓𝐄𝐍𝐓, 𝐈𝐓𝐒 𝐖𝐎𝐑𝐓𝐇 𝐈𝐓.
★ 𝐈 𝐝𝐨 𝐧𝐨𝐭 𝐡𝐚𝐯𝐞 𝐚 𝐛𝐞𝐭𝐚, 𝐚𝐧𝐝 𝐈 𝐚𝐦 𝐠𝐫𝐚𝐭𝐞𝐟𝐮𝐥 𝐟𝐨𝐫 𝐞𝐯𝐞𝐫𝐲𝐨𝐧𝐞 𝐰𝐡𝐨 𝐡𝐞𝐥𝐩𝐬 𝐦𝐞 𝐞𝐝𝐢𝐭. 𝐈 𝐭𝐲𝐩𝐞 𝐭𝐡𝐢𝐬 𝐬𝐭𝐨𝐫𝐲 𝐨𝐧 𝐦𝐲 𝐩𝐡𝐨𝐧𝐞 𝐮𝐬𝐢𝐧𝐠 𝐌𝐢𝐜𝐫𝐨𝐬𝐨𝐟𝐭 𝐖𝐨𝐫𝐝 𝐀𝐩𝐩. 𝐓𝐡𝐚𝐧𝐤𝐲𝐨𝐮 𝐚𝐧𝐝 𝐩𝐥𝐞𝐚𝐬𝐞 𝐛𝐞 𝐤𝐢𝐧𝐝. (𝐈𝐟 𝐢𝐭'𝐬 𝐬𝐢𝐦𝐩𝐥𝐞 𝐬𝐩𝐞𝐥𝐥𝐢𝐧𝐠 𝐥𝐢𝐤𝐞 𝐜𝐨𝐥𝐨𝐮𝐫 𝐯𝐬 𝐜𝐨𝐥𝐨𝐫, 𝐮𝐧𝐝𝐞𝐫𝐬𝐭𝐚𝐧𝐝 𝐈 𝐚𝐦 𝐀𝐮𝐬𝐭𝐫𝐚𝐥𝐢𝐚𝐧 𝐚𝐧𝐝 𝐰𝐞 𝐥𝐨𝐯𝐞 𝐚𝐝𝐝𝐢𝐧𝐠 𝐞𝐱𝐭𝐫𝐚 𝐯𝐨𝐰𝐞𝐥𝐬.)
𝐈𝐧𝐬𝐩𝐢𝐫𝐢𝐧𝐠 𝐒𝐨𝐧𝐠: "𝐃𝐞𝐦𝐨𝐧𝐬" 𝐛𝐲 𝐈𝐦𝐚𝐠𝐢𝐧𝐞 𝐃𝐫𝐚𝐠𝐨𝐧𝐬
Ser Gilbar surveyed the chaotic scene, the carnage of Valeman soldiers sprawled across the ground intermingled with the corpses of the six unfortunate troubadours. He took a deep, remorseful breath as he cast a look over the desolate terrain, the gravity of their mistake weighing heavily upon him.
“This was a serious error in judgment,” he muttered, his voice carrying the weight of the consequences before them. “He won’t take kindly to this. Gods be merciful.”
Ser Ryden, the younger of the two knights, was far more nonchalant, casually cleaning his sword with a cloth, each wipe staining it a deeper shade of crimson. He dismissed his companion’s concerns with a roll of his eyes.
“Shit happens. You sound like a woman, stop your whining Gilbar, you’re overeating,” he responded with a scoff. To Ser Gilbar, who stood there staring mournfully at the fallen soldiers, he said, “Now, hurry, strip those troubadours of their clothes and put them on.”
The soldiers from the Crownlands – a total of four others in all – were busy attending to the corpses of the murdered, their nimble fingers quickly removing the outer garments adorned by the departed entertainers. Fortunately, these outfits showed only minor signs of damage, a stroke of luck considering the circumstances.
Ser Gilbar swore under his breath as he joined his fellow brothers in arms in preparations, adjusting a dull blue tunic adorned with yellow embroidery over his head. He couldn’t suppress a hint of irritation, his words carrying a note of disapproval.
“We wouldn’t have had to do this if we’d have simply followed his fucking orders,” he said, his voice tinged with resignation. Despite the unfortunate turn of events, he found solace in the fact that the consequences of their departure from the original plan were relatively minor. They were a safe distance from Runestones castle, and the ambush had occurred in a secluded area, likely minimizing any unwanted attention.
As they all awaited for the arrival of their king, the stillness in the clearing was almost stifling, the only sound the gentle rustle of leaves and the distant chirping of birds. Despite the apparent anonymity of their disguises, each of them remained on alert, anticipating their sovereign’s arrival. However, for the time being, all remained blissfully unaware of their presence, and the plan to enter the city under the guise of troubadours seemed to be intact. The carriage they had commandeered stood ready, waiting to carry them into the heart of the castle yards.
Ryden’s response was flooded with over-confidence, his tone unphased by the mass of naked bodies by their feet, “Have you met our King? Forget not how he gained the throne, fire and blood. He’s not going to give a flying fuck about this slight detour and a few corpses.”
Ser Gilbar paused, searching for the most apt description. “Mayhaps not,” he agreed, his brow furrowed in thought. “Our King however is rather meticulous... sometimes.” He gestured at the aftermath of their chaotic ambush, a grimace on his face. “And we have made a great mess of this already, more than what was needed.”
Ryden’s scoff echoed through the silence like a sharp rebuke.
“You waste your breath with this Gilbar, you speak of his majesty as if he did not viciously murder his own kin astride dragonback,” he retorted firmly. “The king won’t care about these fools.”
The sound of distant hooves reached their ears, and a hush fell over the entire group. All eyes turned toward the figures in the distance, watching as they drew nearer to their position. Gilbar found himself clenching and unclenching his fingers nervously, his discomfort mirrored by the other soldiers, each one fidgeting in their own way.
Riding majestically upon a powerful steed, King Aemond appeared like a demon spirit, straddling the boundary between man and shadow. With the glow of the moon and the distant stars on his back and raining through his long silvery white hair, his imposing figure was silhouetted in shadow, leaving his features in a shadowy veil. The air grew tense as a small group of Kingsguards who were also on horseback formed a protective ring around them, effectively caging them in a small clearing.
“What occurred here gentleman?” the King asked tensely.
Ryden bent his knee in hurried obeisance, echoed by the others. His voice carried an urgent tone as he sheepishly pleaded, “Your Majesty, I implore your gracious understanding,” Ryden began, bowing his head low. “Circumstances beyond my control have led us to deviate from our intended course.” His hunched stance reflected the towering presence of the king on horseback, a giant amongst men. “Our aim was to target an unguarded convoy, as instructed, but there was an unforeseen complication.”
Aemond dismounted with a casual grace, his armored boots striking the ground with a rattle that echoed through the clearing. A hint of mockery laced his tone as he spoke, his eyes narrowing on Ryden.
“Did you grow impatient, perhaps?” he drawled. “Is that why you decided to throw caution to the wind and deliberately disobey my orders?”
Ryden hastily corrected himself, his voice quick and strained. “No, Your Grace,” he protested. “It wasn’t impatience, I assure you – I only thought...it might be better to risk a slightly guarded carriage than wait any longer and risk missing our opportunity altogether.”
Aemond’s gaze hardened on him in the dim light, his lips curling into a wry smile. “Is that so? Hm?”
Aemond’s tone was dry and contemplative as he examined the slain bodies with his shrewd eye, shifting one of them with the toe of his boot.
“Despite the banquet being many hours away,” he remarked, “it seems your little endeavor began quite some time ago. And I’d hazard a guess that these unfortunate souls were dragged a fair distance just to end up here. So, not only were you impatient, but you also moved up your timeline considerably.”
Ryden’s voice was tinged with a hint of uncertainty, but he carried on, eager to defend his decision. “Yes, Your Grace, but it was not a thoughtless move, I assure you,” he reassured. “The road was deserted, there were no witnesses – ”
As Aemond stepped closer, his towering figure casting an intimidating shadow over him, Ryden’s false bravery slowly faded. He swallowed hard, but continued, “We thought – the risk was worth it. Taking on a few Valeman guards seemed the same as any other target.”
Aemond paused, allowing a lengthy, unsettling silence to fill the air. The quiet seemed to stretch on endlessly, only intensifying the tension. When he finally spoke, it was with a smile that was both patronizing and unnerving.
“Of course,” he replied, his voice dripping with irony. “A perfectly logical decision.”
Ryden looked up hopefully, the first hints of relief flitting across his face. “Your Grace – you mean...you understand?” he asked.
Aemond nodded, his voice tinged with a light, almost flippant tone. “Indeed. I would never oppose efficiency,” he said. “And you’re correct – the risk seemed the same either way, didn’t it?”
“Yes, yes, precisely your majesty,” Ryden nodded, eager to validate his decision.
Aemond smiled, his tone dripping with a veneer of graciousness. “Of course,” he continued, “The disappearance of these guards will not go unnoticed. When they fail to return to their commanding officers, questions will be asked. And when you arrive with no guards, they will surely ask about the missing soldiers, will they not?”
Ryden stumbled in his explanation, his voice laced with uncertainty as he suggested, “We say that a Hill Tribe ambushed us, perhaps?”
Aemond’s smile widened, giving a glimpse of his teeth as he responded with a dry humoring tone. “Ah, yes – a bold move on the part of the Hill Tribesmen,” he agreed, “Quite fearless to attack Vale Knights so close to Runestones instead of waiting further on the eastern roads, one might say?”
Ryden froze, feeling a sense of unease as he registered Aemond’s words. “It – it’s believable,” he protested.
Aemond’s tone remained steady and even, but his unsettling smile had turned fixed, lending an uncanny stillness to his features. “And you’re certain there was no possibility of someone witnessing your little transgression, considering you chose to fight them where they were and then dragged their bodies here after the attack? Instead of doing as I instructed and luring them off the road first.”
He tried to explain, but before he could say more, Aemond’s hand – encased in its armor – suddenly encircled his throat, cutting off the flow of words. The ait around them grew colder. Ryden desperately clawed at the fingers, trying to pry them away, but they remained firmly locked in place. Gilbar and the others instinctively withdrew their daggers, but none dared to intervene as Ryden struggled helplessly in the king’s iron grip.
Aemond’s voice cut through the tension, the quietness of his tone making his words all the more chilling. “I dislike unnecessary risks,” he stated simply, his gaze unflinchingly fixed on Ryden’s flailing form. “It was sheer good fortune that you weren’t discovered – mere happenstance. You gambled on the odds and fortune smiled upon you this time.”
Ryden gasped and wheezed, his pleas ignored by the king. He began to choke, but only when his struggle became more desperate did Aemond relinquish his grip, sending him sprawling to the ground. Then, with a careless twist of his foot, Aemond pinned his wrist beneath the heel of his boot, immobilizing him like a specimen on display. “My orders are not to be questioned or altered at your convenience,” he declared harshly. “I don’t issue them just for the sake of it. Understood?”
With a sickening crunch, Aemond stamped down with his foot, crushing the bones of Ryden’s fingers in a single brutal movement. The tortured sound of the breaking bones sliced through the night, accompanied by a sharp bark of pain that escaped from Ryden’s lips. He crumpled forward, cradling his injured hand against his chest, his body curving in submission like that of a wounded animal.
Aemond observed the scene for a few more seconds, a malevolent glint in his eye betraying his satisfaction. With a smooth motion, he swung himself back onto his horse, as if casually brushing aside the recent violence. There was almost a perverse enjoyment in his tone as he continued, “However, I rather like the tale of a Hill Tribesman ambush. It might raise some eyebrows, but it should hold up under scrutiny when time is limited. You may proceed with the plan as I have commanded.”
Ryden’s face still wore an expression of shock and horror, his features frozen in the aftermath of his suffering. He cradled his injured and now mangled hand close to his chest, his voice shaken as he protested weakly, “But...but my hand...my fingers...”
Aemond’s tone remained calm and nonchalant as he spoke, as if commenting on the weather rather than the mutilation he had just inflicted. “Really, you can hardly expect to be unscathed after a supposed altercation with hill tribesmen,” he remarked casually. “And there’s nothing quite as effective at diverting scrutiny as a bit of compassion, wouldn’t you agree?”
The king turned his back, "Ser Raynard! Be sure Ser Ryden is dealt with accordingly in the future?"
The Commander Raynard glanced down at Ser Gilbar and drifted his eyes over to the whimpering Ser Ryden.
The King and his entourage rode off into the night, the thumping of hoofbeats gradually fading away. A stunned silence lingered for a moment as Gilbar collected himself, knowing very well that the punishment could have been far more severe.
“You were correct,” he noted wryly, assisting the wounded Ser Ryden to his feet. “It wasn’t the corpses that troubled His Majesty.”
★★★★★★★★★★★★★★★★★★★★★★★★★★★
Ser Trevor Belmore returned, bearing two goblets in his hands. With a courteous gesture, he offered one to her, a note of disappointment in his voice as he spoke. “I must admit, I had anticipated a more impressive display from the Targaryen King of Westeros. After all the tales of war and conflict, it seems we’ve been treated to rather...a different spectacle,” he observed with a slightly bemused tone.
His gaze shifted to the nearby gathering, where the King and his company engaged in a seemingly civil conversation with your second cousin, Lord Regent Gunthor Royce of The Runestones and Ser Eldric Arryn, the current heir presumptive to The Runestones. King Aemond, in contrast to his well-known reputation, had presented a surprisingly benign and even softened persona throughout the night. It made you disgusted.
Lady Laviniya received the goblet from Trevor with a modest bow of her head, then she gently swirled the drink, all while silently resolving not to consume any of its contents.
Lady Laviniya chuckled softly under her breath. “Yes, my cousin Ser Eldric had some interesting observations about the ferocious King Aemond....He called him a fat goose.” She whispered with a smile, her voice quieting to avoid any unwanted attention.
Trevor chuckled, his handsome, youthful face adopting a carefree smirk. “I wonder, Lady Laviniya,” he inquired playfully, “you speak of cousin Eldric, yet you have familial ties with the king as well, do you not? Are you not cousins also, through your father? And yet you seem to choose the company of your mother’s kin instead.”
Lady Laviniya tensed slightly, her fingers gripping her goblet a little tighter as she responded. “My blood,” she began, her voice firm and steady, “My blood, Ser Trevor, flows deeper in the veins of House Royce, the First Men who ruled these lands long before Aegon the Conqueror ever stepped foot on our precious Westeros, more deeply than that of the dragonlords of Old Valyria.”
Trevor dipped his head close, his smirk unwavering as he murmured in her ear, “Your silvery locks and pretty lilac eyes tell another story, my lady.”
Laviniya suppressed a grimace, her eyes closing briefly as she clenched her jaw. Though her hair had been elegantly arranged, the whiteness of her tresses and the unmistakable shade of her eyes betrayed her heritage. Her only safeguard was her well covering mask.
Her lips pursed into a thin line and she retorted, “Pray Ser Trevor, let us not forget, our current King cut down the Prince Daemon above Gods Eye? Who else is there for me to pledge my allegiances if not to the House of my mother, the mighty Royce name?”
To say the least, it was an insult. She didn’t want to be here, not in his presence. Aemond Targaryen was the kinslayer...the murderer of her father who sired her and the murder of his own brother, the usurper king before him Aegon Targayren.
Though Laviniya even loathed her father at times, the brutal manner of his death left her with a sense of disgust, a bitter taste in her mouth.
Trevor’s eyebrow arched in skepticism as a smirk played on his lips. “I must admit, I struggle to understand how that unassuming fellow over there managed to fight in all those wars, battle after battle, and emerge victorious. And those wild tales of his savagery and ruthless conquests, ah, they fall short of the image I had in mind. Disheartening, indeed. What about you, my lady? Do you share my disappointment?”
One of Trevor’s companions, an older knight, leaned in with a hushed warning. “Mind yourself, my lord,” he murmured cautiously, “Keep your voice down. We don’t want any...unwanted attention.”
Trevor’s face scrunched into a dismissive sneer as he spoke. “Unwanted attention? We have no cause for fear,” he said, his voice dripping with arrogance.
The companion knight shook his head, his expression grave. “You would do well to reconsider. They say the man has a temperament that changes like the wind. One moment, affable and pleasant, the next, vicious and volatile. And he has a reputation for being rather vindictive.”
The King’s actions went far beyond mere vindictiveness. He left a trail of atrocities in his wake, including public humiliation and severe punishment of those who dared to defy him. It was a shrewd political tactic of sorts, as it instilled an atmosphere of fear and obedience that led to few instances of resistance and swift surrenders.
It was hardly surprising that the southern kingdom had devoured its northern neighbors in a quick and ravenous expansion. While the King’s abilities undoubtedly played a part, it was his ruthless nature that truly paved the way for such rapid conquest.
In small secluded hallways it was often whispered that he was not only a kind but now titled, “Aemond The Conqueror.”
Despite his penchant for cruelty, there was no denying that King Aemond possessed a remarkable level of strategic skill when it came to warfare. He was a true master of tactics, his intellect and cunning rivaling his own ruthlessness. In all his years of battling, he had never tasted defeat.
The young lady’s lavender shaded eyes flitted impatiently back and forth, her pale nose wrinkling every time she caught a glimpse of her maidservant and friend Myrielle. Trevor was boastful and proud, but he possessed a striking appearance that drew admiring looks from some of her handmaidens. Even Myrielle couldn’t help but steal glances at him, finding his confidence and flourish captivating.
Trevor seemed keenly aware of the admiring looks he received, puffing out his chest slightly in an air of confident self-importance. “Your elder cousin should know that the men of Runestones can count on the support of my kinsmen, should the need arise,” he declared, his voice filled with the same noble pomp and bravado.
It brought a sense of reassurance knowing that the Belmore would stand at their side in their time of need. “Your people are truly gracious,” Laviniya replied, her smile carefully crafted to reach her eyes but lacking any genuine enthusiasm.
The pair took a small wander about the Runestones hall.
It didn’t take long for Laviniya to identify the troubadours, for they were the very same ones she had been gossiping about with Ser Trevor earlier. They were the musicians that the chamberlain had deemed to be substandard in their performance and had subsequently exiled them to the outskirts of the event, far enough away as to prevent any further embarrassment.
She noted with some fascination that the lute player appeared to have a broken hand, and her curiosity was piqued. Rumours had circulated about a group of troubadours that had been ambushed by bandits en route, and these seemed to be the very ones.
Ser Trevor, with a conspiratorial tone, leaned towards her and whispered, “I wonder if these troubadours are truly as atrocious as to be relegated here.” He continued, “Are you skilled in recognizing musical talent?”
She shrugged, “If they are genuinely awful, it shouldn’t take much skill to discern that,” She also added a touch of intrigue, questioning, “But is there such a thing as being so bad it becomes entertaining?”
As they approached the performance, an unexpected intermission abruptly halted the show. The jester stepped forward with a few fellow actors, his voice changing subtly to signify he was speaking out of character.
“Ladies and gentlemen,” he announced, “I am regretful to report that our actress who was to play the role of Lady Saerra has unexpectedly taken ill.”
He continued, “However, rest assured, she is perfectly fine, merely indisposed and unable to continue the show. We kindly request that one among the audience volunteer to step in for her. Fear not! We have the script at hand, so all you need to do is place on this mask and read the words with a dramatic tone of voice!”
It seemed like the troubadours were having quite an unfortunate night. The jester’s desperate pleas for a volunteer were nearly causing her second-hand embarrassment. To add to that, she had a nagging feeling that if she lingered too long, they might enlist her as a volunteer – an uncomfortable privilege that came with being the fair lady, an easy target to be used as entertainment.
Determined to avoid the situation altogether, she subtly steered away from the scene. Thankfully, the lord seemed to understand her intent and loyally followed her.
Trevor chuckled softly, speaking in a lighthearted whisper. “I thought you might have jumped at the chance to showcase your performance skills and impress us all,” he teased.
As they distanced themselves from the jester’s plight, the lord brought up another unfortunate artist. “It appears that many performers are having a rough night tonight,” he observed. “Your lordly troubadour and now the plight of poor Lady Saerra.”
He continued with a dry smile, adding, “But at least I’ve spared you from my dubious lute-playing skills.”
With a deadpan expression and her head held high, she threatened Trevor in a serious tone, “If I hear so much as one verse from you, I will leave you here. I swear it.”
Despite maintaining her serious facade, she was comfortable enough with him now to tease him with playful threats. Her step increased slightly, keeping her slightly ahead of his. Myrielle who walked on her other side touched her wrist. The time was drawing nearer that her friend wanted to greet her squire outside soon.
Trevor lowered his voice to a whisper, his expression darkened with disdain as he cast a pointed glance at the Targaryen entourage. “Frankly, I find it baffling why your cousins would invite them or the King here and throw such a lavish celebration in his honour,” he said, his tone filled with disdain. “Imagine how Prince Daemon would feel, if he were still alive.”
Her smile wavered at the mention of her father, Daemon, as her slender figure seemed to shrink slightly, becoming more fragile in an unspoken display of sorrow. “You know, I think you’re right, Ser,” she admitted, her voice laced with an air of melancholy. “Aemond doesn’t appear to possess the aura of a conqueror, does he?”
Trevor understood the fragility of the fair ladies and looked genuinely remorseful. “I didn’t mean to bring back that painful memory,” he apologized. “What I mean is that inviting the Greens here is like letting venomous snakes into your own home. They cannot be trusted after what they have done,” he said firmly. He then paused for a moment before adding, “Of course, I know the decision was not yours to make, but rather your elder cousin’s.”
Laviniya gently touched Myrielle’s shoulder. “The Greens were notorious expansionists after the dance of dragons,” she said, “and I can’t say I’ve ever heard of an expansionist snake. No, you see Ser Trevor, The Greens are rather more like rabbits... Burrowing holes in crop lands and spreading their chaos across the valleys...At times I miss Aegon the Idle. He was not so formidable.” she added with a touch of sarcasm. Laviniya then motioned to move away. “Now, if you’d excuse me.”
Laviniya found herself growing increasingly frustrated. They were never going to get to discussing Myrielle, and Ser Trevor seemed capable of talking endlessly. Moreover, all this talk of politics wearied her, as it seemed to be at odds with the expected delicate sensibilities of young ladies as herself.
She couldn’t help but wonder if her elder cousin really believed they could make peace with a warmonger over a fancy dinner party. And if he honestly trusted that king, with his deceptively mild demeanor, to keep his word... Well, that was his prerogative. But Laviniya tried not to concern herself too much, as she did not want to face disappointment.
She flashed a warm smile once more to the young lord Trevor Belmore, this time allowing it to reach her eyes. With a graceful wave of her hand, she signalled for her Lady-in-waiting to follow her. The flowing silk of their gowns trailed behind them as they left in a swish of fabric, creating a mesmeric spectacle.
𝐇𝐄𝐋𝐏𝐋𝐈𝐍𝐄𝐒:
𝐈𝐟 𝐲𝐨𝐮 𝐚𝐫𝐞 𝐚 𝐯𝐢𝐜𝐭𝐢𝐦 𝐨𝐟 𝐬𝐞𝐱𝐮𝐚𝐥 𝐚𝐛𝐮𝐬𝐞, 𝐚𝐬𝐬𝐚𝐮𝐥𝐭 𝐨𝐫 𝐝𝐨𝐦𝐞𝐬𝐭𝐢𝐜 𝐯𝐢𝐨𝐥𝐞𝐧𝐜𝐞 𝐨𝐫 𝐤𝐧𝐨𝐰 𝐬𝐨𝐦𝐞𝐨𝐧𝐞 𝐰𝐡𝐨 𝐢𝐬 𝐩𝐥𝐞𝐚𝐬𝐞 𝐫𝐞𝐚𝐜𝐡 𝐨𝐮𝐭 𝐭𝐨 𝐭𝐡𝐞𝐬𝐞 𝐥𝐢𝐧𝐤𝐬 𝐭𝐡𝐚𝐭 𝐬𝐡𝐚𝐫𝐞 𝐡𝐞𝐥𝐩𝐥𝐢𝐧𝐞 𝐬𝐞𝐫𝐯𝐢𝐜𝐞𝐬, 𝐩𝐡𝐨𝐧𝐞 𝐧𝐮𝐦𝐛𝐞𝐫𝐬 𝐨𝐫 𝐞𝐦𝐚𝐢𝐥𝐬. 𝐂𝐨𝐧𝐬𝐞𝐧𝐭 𝐚𝐧𝐝 𝐫𝐞𝐬𝐩𝐞𝐜𝐭 𝐢𝐬 𝐢𝐦𝐩𝐨𝐫𝐭𝐚𝐧𝐭 𝐢𝐧 𝐞𝐯𝐞𝐫𝐲 𝐫𝐞𝐥𝐚𝐭𝐢𝐨𝐧𝐬𝐡𝐢𝐩 𝐰𝐡𝐞𝐭𝐡𝐞𝐫 𝐛𝐞𝐭𝐰𝐞𝐞𝐧 𝐟𝐫𝐢𝐞𝐧𝐝𝐬, 𝐟𝐚𝐦𝐢𝐥𝐲 𝐨𝐫 𝐞𝐯𝐞𝐧 𝐬𝐭𝐫𝐚𝐧𝐠𝐞𝐫𝐬.
Australian Helpline Services
UK Helpline Services
American Helpline Services
India Helpline Services.
85 notes
·
View notes
Text
Scarlet Pimpernel at Lincoln Center (informal review)
I just saw the most amazing show at Lincoln Center last night. I said to someone the other day that I don’t usually write informal “reviews” of limited-run productions because nobody else would probably be able to get tickets to them, but this was something special. It was a one-night only semi-staged version of The Scarlet Pimpernel, which originally ran on Broadway from 1997-2000 and has never yet been revived. A rarely-performed musical, my friend Wren and I discovered it in 10th grade and quickly fell in love with the catchy score but never thought we’d see a professional production.
When I first heard about the Lincoln Center concert, I burst into tears with excitement and thought, “Oh MAN, I wish I could go!” and moped around for a few days. Then I realized, “Hang on, I have some money saved. I have lots of unused vacation days. It’s only a four-hour bus ride away. What’s stopping me from going?” And I am so glad I did. Was it a flawless production? No. Was it painstakingly and meticulously designed and rehearsed? Definitely not. But was it one of the liveliest, most entertaining shows I’ve seen with top-notch vocals, hilarious gags, and tremendous audience response (actors sometimes having to cut off the excessive cheers and applause after certain numbers) that culminated in a 100% standing ovation? All that and a bag of pommes frites.
If you’re unfamiliar with the story, The Scarlet Pimpernel is based on a classic adventure-romance novel by Baroness Emmuska Orczy. Set during the French Revolution, it’s often called the original superhero story, in which a disguised vigilante hides behind a mild-mannered secret identity. When fashionable English gentleman Sir Percy Blakeney suspects his new bride, Marguerite, may be a spy for the French Revolution, he sets off on a mission to rescue innocent people from the guillotine- without his wife finding out. But he and his band of merry men don’t fight terror with terror. No, they employ witty disguises, tricks, and antics, leaving behind the mark of a flower called the Scarlet Pimpernel (Percy’s family crest). Back home, the men escape suspicion by exaggerating their mannerisms into ridiculous caricatures of fancy fops who care more about French lace and silk than French Revolutions.
But when Marguerite’s ex-lover Chauvelin (now a high-ranking French agent) blackmails her into discovering the true identity of the Pimpernel lest her brother die, she little knows how close to home her mission will hit.
It sounds like it could either be an overwrought melodrama or a Looney Toons short- and indeed, it is a bit of both. The musical itself endured many extensive rewrites during its short run, never quite finding the right balance. This concert seems to be a mish-mash of about three different past versions with at least one new song. But despite the jarring shifts between heart-wrenching ballads and silly slapstick in which tap shoes become a valuable component in a duel and executioners are distracted by 123 rampant geese, this performance was so rich in heart, joy, and spirit that the whole audience beamed along.
Of the leading roles, the only one I’d never seen or heard before was Tony Yazbeck, inhabiting the many hats (literally) of the Pimpernel himself. I can confidently say that he gave one of the most brilliant performances I’ve ever seen, period. Although he’s already an accomplished performer, I suspect this one-night show might catapult him to being a massive star. He’s, like, a quadruple threat, with so much stage presence that he shimmers. Yazbeck’s Percy can be ludicrously silly or achingly sincere, powerful or vulnerable, with a powerhouse voice and untiring energy and grace. I was sitting close enough to see all of his facial expressions, however over-the-top or subtle, and he was totally immersed in the character the entire time, sometimes hurling his script to the ground with emotion. (Remember, it was a staged concert with about a week of rehearsal.) He frequently breaks the fourth wall, trying to steal a violinist’s bow, dropping ad-libbed comments, sitting in the audience or dancing down the aisle, without dropping his polished English accent. I can’t wait to see what he’ll do next.
My personal favorite singer, Norm Lewis, co-starred as sinister French operative Chauvelin, who I can best describe as a more seductive Javert who is constantly humiliated by those around him. Having recently seen him in the Music Man, in which he gave a jovial performance but struggled with some lyrics, I was relieved to see that he held his script in hand most of the time here. He still flubbed the occasional word and seemed overly reliant on his script at times, but oh my good golly, I have NEVER heard his voice sound better. He has one of the richest, most powerful voices on Broadway, not to mention a huge vocal range, and this score puts all of it to use. This is the 6th time I’ve seen him live (plus his filmed performances in the 25th anniversary Les Mis concert and NBC’s Jesus Christ Superstar), and every song he sang here sent huge chills up my spine and fireworks off in my brain. Gosh, I love him. I do think Mr Lewis bit off a little more than he could chew doing these two semi-staged concerts only a week apart— he did seem less confident than the other performers— but I still feel so lucky to have seen him in both.
Laura Osnes sparkles as the sensitive and vivacious Marguerite. Her voice is higher and lighter than how I’d heard the role performed before, but she can certainly belt out a tune when required. She gives nuance and genuine feeling to Marguerite’s inner conflict, even joining in a sword fight to defend her husband! Osnes shows remarkable poise, rarely consulting her script. She has especially great onstage chemistry with Corey Cott, who plays her little brother with earnest puppy dog eyes and a strong pop vocal.
Though I didn’t like all of the changes in the song listing, lyrics, and script, I was completely invested the entire time. The able and versatile ensemble took on a variety of roles, from Percy’s merry men to French guards. Drew Gehling gave a particularly scene-stealing turn in the dual roles of Robespierre (stern and sardonic) and the Prince of Wales (utterly zany and wearing a magnificent feathered hat). Backed by a chorus of over 200 people and a full orchestra, the music was nothing short of sublime.
The pared-down nature of the show mostly came across in costumes and props, or lack thereof- Percy’s elaborate 18th century suits were clearly necessary to the plot, but stood out against most characters’ contemporary clothing. Supporting characters merely threw on a cheap-looking accessory or two to connote a different character or disguise, and Marguerite wore modern ball gowns. Sometimes, the script referred to characters changing clothes without the actors actually doing so. Still, the movement and staging was more complex than I had expected, and I was particularly taken by the effective guillotine prop.
All in all, I left the theatre electrified and touched that this huge audience- David Geffen Hall holds 2,738 and this show was pretty much sold out- had all seen and evidently loved this musical that means so much to me, that over 200 people put in so much effort and enthusiasm to bring it to life, and that I got to be there.
Another thing that unexpectedly moved me was Percy’s character arc. I’ve always strangely related to Percy despite not being heroic, rich, or fashionable, but I AM known for being kinda silly and flamboyant. And like Percy, I like to think there’s more to me than that. Although Percy becomes the Pimpernel out of anguish and desperation, he seems to genuinely relish getting to act so weird and over-the-top. He seems so comfortable in his own skin. Even when his identity is unmasked, he continues to be outlandish, even forcing Chauvelin into a tap dance battle. He and his wife desperately love one another, his friends care about him and always have his back, and he’s able to be his true and complete self— strong, smart, and brave, yes, but also in touch with his feminine side, compassionate, theatrical, romantic, and generally outrageous. As someone who feels equally accepted by my loved ones despite my outsized personality, I love this non-conformist romantic hero who proves you don’t have to be macho and grimly stoic to save the day.
“And that is why the lord created men!” Percy sings after springing a trap on Chauvelin. Marguerite and Madame Tussaud, who both helped, cough. “And women!” he sings to cheers from the audience.
I loved this show. I wish you could have been there. I’m heading home on the bus right now and this piece reminded me more then anything how much I value and appreciate all of the people in my life. Onward, ho!
45 notes
·
View notes
Text
Writing Lua scripts with meta
Sheridan Rawlins, Architect, Yahoo
Summary
In any file ending in .lua with the executable bit set (chmod a+x), putting a "shebang" line like the following lets you run it, and even pass arguments to the script that won't be swallowed by meta
hello-world.lua
#!/usr/bin/env meta print("hello world")
Screwdriver's meta tool is provided to every job, regardless of which image you choose.
This means that you can write Screwdriver commands or helper scripts as Lua programs.
It was inspired by (but unrelated to) etcd's bolt, as meta is a key-value store of sorts, and its boltcli which also provides a lua runner that interfaces with bolt.
Example script or sd-cmd
run.lua
#!/usr/bin/env meta meta.set("a-plain-string-key", "somevalue") meta.set("a-key-for-json-value", { name = "thename", num = 123, array = { "foo", "bar", "baz" } })
What is included?
A Lua 5.1 interpreter written in go (gopher-lua)
meta CLI commands are exposed as methods on the meta object
meta get
local foo_value = meta.get('foo')
meta set
-- plain string meta.set('key', 'value')` -- json number meta.set('key', 123)` -- json array meta.set('key', { 'foo', 'bar', 'baz' })` -- json map meta.set('key', { foo = 'bar', bar = 'baz' })`
meta dump
local entire_meta_tree = meta.dump()
Libraries (aka "modules") included in gopher-lua-libs - while there are many to choose from here, some highlights include:
argparse - when writing scripts, this is a nice CLI parser inspired from the python one.
Encoding modules: json, yaml, and base64 allow you to decode or encode values as needed.
String helper modules: strings, and shellescape
http client - helpful if you want to use the Screwdriver REST API possibly using os.getenv with the environment vars provided by screwdriver - SD_API_URL, SD_TOKEN, SD_BUILD_ID can be very useful.
plugin - is an advanced technique for parallelism by firing up several "workers" or "threads" as "goroutines" under the hood and communicating via go channels. More than likely overkill for normal use-cases, but it may come in handy, such as fetching all artifacts from another job by reading its manifest.txt and fetching in parallel.
Why is this interesting/useful?
meta is atomic
When invoked, meta obtains an advisory lock via flock.
However, if you wanted to update a value from the shell, you might perform two commands and lose the atomicity:
# Note, to treat the value as an integer rather than string, use -j to indicate json declare -i foo_count="$(meta get -j foo_count)" meta set -j foo_count "$((++foo_count))"
While uncommon, if you write builds that do several things in parallel (perhaps a Makefile run with make -j $(nproc)), making such an update in parallel could hit race conditions between the get and set.
Instead, consider this script (or sd-cmd)
increment-key.lua
#!/usr/bin/env meta local argparse = require 'argparse' local parser = argparse(arg[0], 'increment the value of a key') parser:argument('key', 'The key to increment') local args = parser:parse() local value = tonumber(meta.get(args.key)) or 0 value = value + 1 meta.set(args.key, value) print(value)
Which can be run like so, and will be atomic
./increment-key.lua foo 1 ./increment-key.lua foo 2 ./increment-key.lua foo 3
meta is provided to every job
The meta tool is made available to all builds, regardless of the image your build chooses - including minimal jobs intended for fanning in several jobs to a single one for further pipeline job-dependency graphs (i.e. screwdrivercd/noop-container)
Screwdrivers commands can help share common tasks between jobs within an organization. When commands are written in bash, then any callouts it makes such as jq must either exist on the images or be installed by the sd-cmd. While writing in meta's lua is not completely immune to needing "other things", at least it has proper http and json support for making and interpreting REST calls.
running "inside" meta can workaround system limits
Occasionally, if the data you put into meta gets very large, you may encounter Limits on size of arguments and environment, which comes from UNIX systems when invoking executables.
Imagine, for instance, wanting to put a file value into meta (NOTE: this is not a recommendation to put large things in meta, but, on the occasions where you need to, it can be supported). Say I have a file foobar.txt and want to put it into some-key. This code:
foobar="$(< foobar.txt)" meta set some-key "$foobar"
May fail to invoke meta at all if the args get too big.
If, instead, the contents are passed over redirection rather than an argument, this limit can be avoided:
load-file.lua
#!/usr/bin/env meta local argparse = require 'argparse' local parser = argparse(arg[0], 'load json from a file') parser:argument('key', 'The key to put the json in') parser:argument('filename', 'The filename') local args = parser:parse() local f, err = io.open(args.filename, 'r') assert(not err, err) local value = f:read("*a") -- Meta set the key to the contents of the file meta.set(args.key, value)
May be invoked with either the filename or, if the data is in memory with the named stdin device
# Direct from the file ./load-file.lua some-key foobar.txt # If in memory using "Here String" (https://www.gnu.org/software/bash/manual/bash.html#Here-Strings) foobar="$(< foobar.txt)" ./load-file.lua some-key /dev/stdin <<<"$foobar"
Additional examples
Using http module to obtain the parent id
get-parent-build-id.lua
#!/usr/bin/env meta local http = require 'http' local json = require 'json' SD_BUILD_ID = os.getenv('SD_BUILD_ID') or error('SD_BUILD_ID environment variable is required') SD_TOKEN = os.getenv('SD_TOKEN') or error('SD_TOKEN environment variable is required') SD_API_URL = os.getenv('SD_API_URL') or error('SD_API_URL environment variable is required') local client = http.client({ headers = { Authorization = "Bearer " .. SD_TOKEN } }) local url = string.format("%sbuilds/%d", SD_API_URL, SD_BUILD_ID) print(string.format("fetching buildInfo from %s", url)) local response, err = client:do_request(http.request("GET", url)) assert(not err, err) assert(response.code == 200, "error code not ok " .. response.code) local buildInfo = json.decode(response.body) print(tonumber(buildInfo.parentBuildId) or 0)
Invocation examples:
# From a job that is triggered from another job declare -i parent_build_id="$(./get-parent-build-id.lua)" echo "$parent_build_id" 48242862 # From a job that is not triggered by another job declare -i parent_build_id="$(./get-parent-build-id.lua)" echo "$parent_build_id" 0
Larger example to pull down manifests from triggering job in parallel
This advanced script creates 3 argparse "commands" (manifest, copy, and parent-id) to help copying manifest files from parent job (the job that triggers this one).
it demonstrates advanced argparse features, http client, and the plugin module to create a "boss + workers" pattern for parallel fetches:
Multiple workers fetch individual files requested by a work channel
The "boss" (main thread) filters relevent files from the manifest which it sends down the work channel
The "boss" closes the work channel, then waits for all workers to complete tasks (note that a channel will still deliver any elements before a receive() call reports not ok
This improves throughput considerably when fetching many files - from a worst case of the sum of all download times with one at a time, to a best case of just the maximum download time when all are done in parallel and network bandwidth is sufficient.
manifest.lua
#!/usr/bin/env meta -- Imports argparse = require 'argparse' plugin = require 'plugin' http = require 'http' json = require 'json' log = require 'log' strings = require 'strings' filepath = require 'filepath' goos = require 'goos' -- Parse the request parser = argparse(arg[0], 'Artifact operations such as fetching manifest or artifacts from another build') parser:option('-l --loglevel', 'Set the loglevel', 'info') parser:option('-b --build-id', 'Build ID') manifestCommand = parser:command('manifest', 'fetch the manifest') manifestCommand:option('-k --key', 'The key to set information in') copyCommand = parser:command('copy', 'Copy from and to') copyCommand:option('-p --parallelism', 'Parallelism when copying multiple artifacts', 4) copyCommand:flag('-d --dir') copyCommand:argument('source', 'Source file') copyCommand:argument('dest', 'Destination file') parentIdCommand = parser:command("parent-id", "Print the parent-id of this build") args = parser:parse() -- Setup logs is shared with workers when parallelizing fetches function setupLogs(args) -- Setup logs log.debug = log.new('STDERR') log.debug:set_prefix("[DEBUG] ") log.debug:set_flags { date = true } log.info = log.new('STDERR') log.info:set_prefix("[INFO] ") log.info:set_flags { date = true } -- TODO(scr): improve log library to deal with levels if args.loglevel == 'info' then log.debug:set_output('/dev/null') elseif args.loglevel == 'warning' or args.loglevel == 'warning' then log.debug:set_output('/dev/null') log.info:set_output('/dev/null') end end setupLogs(args) -- Globals from env function setupGlobals() SD_API_URL = os.getenv('SD_API_URL') assert(SD_API_URL, 'missing SD_API_URL') SD_TOKEN = os.getenv('SD_TOKEN') assert(SD_TOKEN, 'missing SD_TOKEN') client = http.client({ headers = { Authorization = "Bearer " .. SD_TOKEN } }) end setupGlobals() -- Functions -- getBuildInfo gets the build info json object from the buildId function getBuildInfo(buildId) if not buildInfo then local url = string.format("%sbuilds/%d", SD_API_URL, buildId) log.debug:printf("fetching buildInfo from %s", url) local response, err = client:do_request(http.request("GET", url)) assert(not err, err) assert(response.code == 200, "error code not ok " .. response.code) buildInfo = json.decode(response.body) end return buildInfo end -- getParentBuildId gets the parent build ID from this build’s info function getParentBuildId(buildId) local parentBuildId = getBuildInfo(buildId).parentBuildId assert(parentBuildId, string.format("could not get parendId for %d", buildId)) return parentBuildId end -- getArtifact gets and returns the requested artifact function getArtifact(buildId, artifact) local url = string.format("%sbuilds/%d/artifacts/%s", SD_API_URL, buildId, artifact) log.debug:printf("fetching artifact from %s", url) local response, err = client:do_request(http.request("GET", url)) assert(not err, err) assert(response.code == 200, string.format("error code not ok %d for url %s", response.code, url)) return response.body end -- getManifestLines returns an iterator for the lines of the manifest and strips off leading ./ function getManifestLines(buildId) return coroutine.wrap(function() local manifest = getArtifact(buildId, 'manifest.txt') local manifest_lines = strings.split(manifest, '\n') for _, line in ipairs(manifest_lines) do line = strings.trim_prefix(line, './') if line ~= '' then coroutine.yield(line) end end end) end -- fetchArtifact fetches the artifact "source" and writes to a local file "dest" function fetchArtifact(buildId, source, dest) log.info:printf("Copying %s to %s", source, dest) local sourceContent = getArtifact(buildId, source) local dest_file = io.open(dest, 'w') dest_file:write(sourceContent) dest_file:close() end -- fetchArtifactDirectory fetches all the artifacts matching "source" from the manifest and writes to a folder "dest" function fetchArtifactDirectory(buildId, source, dest) -- Fire up workers to run fetches in parallel local work_body = [[ http = require 'http' json = require 'json' log = require 'log' strings = require 'strings' filepath = require 'filepath' goos = require 'goos' local args, workCh setupLogs, setupGlobals, fetchArtifact, getArtifact, args, workCh = unpack(arg) setupLogs(args) setupGlobals() log.debug:printf("Starting work %p", _G) local ok, work = workCh:receive() while ok do log.debug:print(table.concat(work, ' ')) fetchArtifact(unpack(work)) ok, work = workCh:receive() end log.debug:printf("No more work %p", _G) ]] local workCh = channel.make(tonumber(args.parallelism)) local workers = {} for i = 1, tonumber(args.parallelism) do local worker_plugin = plugin.do_string(work_body, setupLogs, setupGlobals, fetchArtifact, getArtifact, args, workCh) local err = worker_plugin:run() assert(not err, err) table.insert(workers, worker_plugin) end -- Send workers work to do log.info:printf("Copying directory %s to %s", source, dest) local source_prefix = strings.trim_suffix(source, filepath.separator()) .. filepath.separator() for line in getManifestLines(buildId) do log.debug:print(line, source_prefix) if source == '.' or source == '' or strings.has_prefix(line, source_prefix) then local dest_dir = filepath.join(dest, filepath.dir(line)) goos.mkdir_all(dest_dir) workCh:send { buildId, line, filepath.join(dest, line) } end end -- Close the work channel to signal workers to exit log.debug:print('Closing workCh') err = workCh:close() assert(not err, err) -- Wait for workers to exit log.debug:print('Waiting for workers to finish') for _, worker in ipairs(workers) do local err = worker:wait() assert(not err, err) end log.info:printf("Done copying directory %s to %s", source, dest) end -- Normalize/help the buildId by getting the parent build id as a convenience if not args.build_id then SD_BUILD_ID = os.getenv('SD_BUILD_ID') assert(SD_BUILD_ID, 'missing SD_BUILD_ID') args.build_id = getParentBuildId(SD_BUILD_ID) end -- Handle the command if args.manifest then local value = {} for line in getManifestLines(args.build_id) do table.insert(value, line) if not args.key then print(line) end end if args.key then meta.set(args.key, value) end elseif args.copy then if args.dir then fetchArtifactDirectory(args.build_id, args.source, args.dest) else fetchArtifact(args.build_id, args.source, args.dest) end elseif args['parent-id'] then print(getParentBuildId(args.build_id)) end
Testing
In order to test this, bats testing system was used to invoke manifest.lua with various arguments and the return code, output, and side-effects checked.
For unit tests, an http server was fired up to serve static files in a testdata directory, and manifest.lua was actually invoked within this test.lua file so that the http server and the manifest.lua were run in two separate threads (via the plugin module) but the same process (to avoid being blocked by meta's locking mechanism, if run in two processes)
test.lua
#!/usr/bin/env meta -- Because Meta locks, run the webserver as a plugin in the same process, then invoke the actual file under test. local plugin = require 'plugin' local filepath = require 'filepath' local argparse = require 'argparse' local http = require 'http' local parser = argparse(arg[0], 'Test runner that serves http test server') parser:option('-d --dir', 'Dir to serve', filepath.join(filepath.dir(arg[0]), "testdata")) parser:option('-a --addr', 'Address to serve on', "localhost:2113") parser:argument('rest', "Rest of the args") :args '*' local args = parser:parse() -- Run an http server on the requested (or default) addr and dir local http_plugin = plugin.do_string([[ local http = require 'http' local args = unpack(arg) http.serve_static(args.dir, args.addr) ]], args) http_plugin:run() -- Wait for http server to be running and serve status.html local wait_plugin = plugin.do_string([[ local http = require 'http' local args = unpack(arg) local client = http.client() local url = string.format("http://%s/status.html", args.addr) repeat local response, err = client:do_request(http.request("GET", url)) until not err and response.code == 200 ]], args) wait_plugin:run() -- Wait for it to finish up to 2 seconds local err = wait_plugin:wait(2) assert(not err, err) -- With the http server running, run the actual file under test -- Run with a plugin so that none of the plugins used by _this file_ are loaded before invoking dofile local run_plugin = plugin.do_string([[ arg[0] = table.remove(arg, 1) dofile(arg[0]) ]], unpack(args.rest)) run_plugin:run() -- Wait for the run to complete and report errors, if any local err = run_plugin:wait() assert(not err, err) -- Stop the http server for good measure http_plugin:stop()
And the bats test looked something like:
#!/usr/bin/env bats load test-helpers function setup() { mk_temp_meta_dir export SD_META_DIR="$TEMP_SD_META_DIR" export SD_API_URL="http://localhost:2113/" export SD_TOKEN=SD_TOKEN export SD_BUILD_ID=12345 export SERVER_PID="$!" } function teardown() { rm_temp_meta_dir } @test "artifacts with no command is an error" { run "${BATS_TEST_DIRNAME}/run.lua" echo "$status" echo "$output" ((status)) } @test "manifest gets a few files" { run "${BATS_TEST_DIRNAME}/test.lua" -- "${BATS_TEST_DIRNAME}/run.lua" manifest echo "$status" echo "$output" ((!status)) grep foo.txt <<<"$output" grep bar.txt <<<"$output" grep manifest.txt <<<"$output" } @test "copy foo.txt myfoo.txt writes it properly" { run "${BATS_TEST_DIRNAME}/test.lua" -- "${BATS_TEST_DIRNAME}/run.lua" copy foo.txt "${TEMP_SD_META_DIR}/myfoo.txt" echo "$status" echo "$output" ((!status)) [[ $(<"${TEMP_SD_META_DIR}/myfoo.txt") == "foo" ]] } @test "copy bar.txt mybar.txt writes it properly" { run "${BATS_TEST_DIRNAME}/test.lua" -- "${BATS_TEST_DIRNAME}/run.lua" copy bar.txt "${TEMP_SD_META_DIR}/mybar.txt" echo "$status" echo "$output" ((!status)) [[ $(<"${TEMP_SD_META_DIR}/mybar.txt") == "bar" ]] } @test "copy -b 101010 -d somedir mydir writes it properly" { run "${BATS_TEST_DIRNAME}/test.lua" -- "${BATS_TEST_DIRNAME}/run.lua" -l debug copy -b 101010 -d somedir "${TEMP_SD_META_DIR}/mydir" echo "$status" echo "$output" ((!status)) ls -1 "${TEMP_SD_META_DIR}/mydir/somedir" ls -1 "${TEMP_SD_META_DIR}/mydir/somedir" | grep one.txt ls -1 "${TEMP_SD_META_DIR}/mydir/somedir" | grep two.txt (( $(<"${TEMP_SD_META_DIR}/mydir/somedir/one.txt") == 1 )) (( $(<"${TEMP_SD_META_DIR}/mydir/somedir/two.txt") == 2 )) } @test "copy -b 101010 -d . mydir gets all artifacts" { run "${BATS_TEST_DIRNAME}/test.lua" -- "${BATS_TEST_DIRNAME}/run.lua" -l debug copy -b 101010 -d . "${TEMP_SD_META_DIR}/mydir" echo "$status" echo "$output" ((!status)) ls -1 "${TEMP_SD_META_DIR}/mydir/somedir" ls -1 "${TEMP_SD_META_DIR}/mydir/somedir" | grep one.txt ls -1 "${TEMP_SD_META_DIR}/mydir/somedir" | grep two.txt (( $(<"${TEMP_SD_META_DIR}/mydir/somedir/one.txt") == 1 )) (( $(<"${TEMP_SD_META_DIR}/mydir/somedir/two.txt") == 2 )) [[ $(<"${TEMP_SD_META_DIR}/mydir/abc.txt") == abc ]] [[ $(<"${TEMP_SD_META_DIR}/mydir/def.txt") == def ]] (($(find "${TEMP_SD_META_DIR}/mydir" -type f | wc -l) == 5)) } @test "copy -b 101010 -d . -p 1 mydir gets all artifacts" { run "${BATS_TEST_DIRNAME}/test.lua" -- "${BATS_TEST_DIRNAME}/run.lua" -l debug copy -b 101010 -d . -p 1 "${TEMP_SD_META_DIR}/mydir" echo "$status" echo "$output" ((!status)) ls -1 "${TEMP_SD_META_DIR}/mydir/somedir" ls -1 "${TEMP_SD_META_DIR}/mydir/somedir" | grep one.txt ls -1 "${TEMP_SD_META_DIR}/mydir/somedir" | grep two.txt (( $(<"${TEMP_SD_META_DIR}/mydir/somedir/one.txt") == 1 )) (( $(<"${TEMP_SD_META_DIR}/mydir/somedir/two.txt") == 2 )) [[ $(<"${TEMP_SD_META_DIR}/mydir/abc.txt") == abc ]] [[ $(<"${TEMP_SD_META_DIR}/mydir/def.txt") == def ]] (($(find "${TEMP_SD_META_DIR}/mydir" -type f | wc -l) == 5)) } @test "parent-id 12345 gets 99999" { run "${BATS_TEST_DIRNAME}/test.lua" -- "${BATS_TEST_DIRNAME}/run.lua" parent-id -b 12345 echo "$status" echo "$output" ((!status)) (( $output == 99999 )) }
0 notes
Text
monday in bullets
gising maaga tapos ligo tapos paganda para pak sa first day of classes
charot alam kong di ako maganda pero di naman masamang umawra
alis para pumunta ng ospital
andun kasi yung mga daga namin ni meg para sa thesis at tuwing 8:30 AM tinatanggalan sila ng pagkain para walang laman tyan bago magbigay ng gamot tuwing lunch
tapos byahe kami papuntang college kasi sabi ng ian may klase daw kami ng food hygiene VPH 123 nang 11:00 AM nagpost daw si doc
dumating kami 10:50 tapos yung room nakalock!!
wala palang klase kasi yung nabasa pala ni ian na post ay may klase sa VPTH 123 e patho yon tapos na kami magtake non hahahahahha
so tambay na lang kami sa cvm lib para aircon kasi tangina ang init
tapos dumating na si ian may dalang water heater na binili niya para kay meg
tapos umalis na kami kasi kakain
tapos segue: habang naglalakad kami sabi ni meg “ang blooming mo ngayon, ovulating ka no??”
niyaya na rin namin si kuya cyrus kumain
tapos mang toto’s kami order kanya kanya: liempo, liempo, bbq, bangus
ngayon lang nalaman ni meg na magkaiba pala yung liempo saka pork chop
tapos nilabas na ni ian yung baon niyang kanin at tilapia na steak
order din kami orange juice isang pitsel
parang pyesta
tapos 12:30 PM dapat balikan ko na yung mga daga
e 12:37 PM na pagtingin ko sa relo nakakaloka late na late na yung schedule ng mga daga kasi bbyahe pa ang layo ng ospital mga 1 hr kapag jeep
tapos nung 12:45 na, sabi ni meg “di pa ba tayo aalis, may class ka nang 1 a”
tangina nalimutan ko may klase nga ako nang 1!!!!
ang aga ko pumasok sa klase ko sa umaga na wala namang pasok tapos late ako sa sure akong may pasok pota kainis
so naglakad kami mabilis papuntang agapita at nagtricycle
6 mins late ako sa klase pero okay lang
si meg na lang magisa nagbigay ng gamot sa mga daga
tapos naggroupings putangina nadissolve yung group namin kasi kami huling nagpasa ng papel tapos apat lang kami
tapos wala ako kaclose kasi elective subject yung wildlife
tapos walang gustong kumuha sakin pero eventually may nakaisip na kunin ako pero parang di okay sa groupmates niya pero okay lang wala naman akong pake basta sana di sila butaw kasi ako hindi hahhhhahahahahahahaaha lakas
tapos ibang prof na nang 2:00 PM
tapos ibang prof na nang 3:00 PM
tapos uwian na nang 4:00 PM
pero dumaan muna kami ng lab para pakainin yung mga daga
tapos ayaw ko pa umuwi kaya nagyaya ako mag-uturn
kaso di ko magets yung food park na yon bakit onti lang bukas ano na ang init pa
pero masarap yung bubble waffle na inorder ko sa… di ko maalala kung aling tindahan shet
tapos uwi na kami pagkatapos
sobrang traffic di ko maintindihan madilim na pagbaba namin ng olivarez
dumaan kami jhw ni meg tapos bumili ako ng basurahan na cute
tapos umuwi na ko
ang kalat ng apartment ko pota
dinalaw ako ni ate abby pero kukunin niya lang talaga charger at water bottle niya
pero siningit niya din yung pagseselfie sa kama ko kasi nakakaganda daw yung ilaw ko pangvain pak eto sample sinend niya sakin: link
tapos pinarinig ko sa kanya yung mga kanta ni james reid at donnalyn bartolome at dahil alam na alam ko lyrics jinudge nya ko
tapos kumain kami sa mang petrinos na 24 hrs na kainan sa kanto: tapa kanya, bbq akin
ang sarap nung tapa pero ang onti nakakabitin
tapos umuwi na ko
tapos saka nagtext si aizra na nasa ics orgmates may inom
kanina g ako pero ngayon tinatamad na ko e
itutulog ko na lang goodnight
miss u na jaho mahal kita
hahahaha pota landi
12 notes
·
View notes