| Mili의 싱글 |
| <colbgcolor=#61b5b7,#61b5b7><colcolor=#fff> {{{#!wiki style="margin: 0 -10px -5px" {{{#!wiki style="display: inline-table; min-width: max(20%); min-height: calc(1.5em + 5px)" {{{#!folding [ 12-16 ] {{{#!wiki style="margin: -5px -1px" | Chocological | Friction | ||||
| Nine Point Eight | Maroma Samsa | YUBIKIRI-GENMAN | ||||
| Witch’s Invitation | Rosetta | |||||
| Fable | Imagined Flight | Colorful | ||||
| Unidentified Flavourful Object | ||||||
| Bathtub Mermaid | Space Colony | |||||
| RTRT | }}}}}}}}}{{{#!wiki style="display: inline-table; min-width: max(20%); min-height: calc(1.5em + 5px)" {{{#!folding [ 17-20 ] {{{#!wiki style="margin: -5px -1px" | 幾年月 | Opium | |||
| 奶水 | Mirror Mirror | |||||
| Camelia | ||||||
| Rightfully | Within | Victim | ||||
| 不死蝶 | Sloth | 蜜蜂 | ||||
| Birthday Kid | Static | |||||
| sustain++; | From a Place of Love | |||||
| }}}}}}}}}{{{#!wiki style="display: inline-table; min-width: max(20%); min-height: calc(1.5em + 5px)" {{{#!folding [ 21-24 ] {{{#!wiki style="margin: -5px -1px; " | Iron Lotus | Bulbel | Flowerworks | |||
| In Hell We Live, Lament | ||||||
| Bento Box Bivouac | Sideshow Duckling | My Creator | ||||
| Skin-Deep Comedy | Paper Bouquet | GIVE ME RICE | ||||
| Mortal With You | Ocean Bby | |||||
| Between Two Worlds | Gunners in the Rain | Fly, My Wings | ||||
| Sleep Talk Metropolis | Compass | |||||
| Duetting Solo | Grown-up’s Paradise | |||||
| Hero | Life We Sow | }}}}}}}}}{{{#!wiki style="display: inline-table; min-width: max(20%); min-height: calc(1.5em + 5px)" {{{#!folding [ 25-28 ] {{{#!wiki style="margin: -5px -1px -11px" | Year N | Classroom Dreamer | Hearts Stay Unchanged | |
| I Am a Fluff | TIAN TIAN | To Your Oblivion | ||||
| Peach Pit and Cyanide | What the Ripple Sees | SAIKAI | }}}}}}}}}}}} | |||
| <colcolor=#fff,#fff> sustain++; 서스테인++; | ||
| |
| <colbgcolor=#61b5b7,#61b5b7> 발매일 | 2020년 6월 9일 | |
| 작사 | Cassie Wei | |
| 작곡 | Cassie Wei, Yamato Kasai | |
| 편곡 | Yamato Kasai, Yukihito Mitomo Shoto Yoshida | |
| 녹음 | Satoshi Yoneda, Keisuke Fujimaki | |
| 믹싱 | Satoshi Yoneda | |
| 마스터링 | KOTARO Kojima | |
1. 개요
| Ending Short ver. |
| Full ver. |
음악 프로젝트 그룹 Mili의 곡.
2020년 4월 넷플릭스 독점 방영 예정인 애니메이션 공각기동대 SAC 2045의 엔딩 테마곡이다. 2020년 2월 13일 Ending 버전이 공개되었으며, 2020년 6월 9일 Full 버전이 공개되었다.
2. 가사
| If abstraction is the definition of beauty 추상이 아름다움의 정의라면 Are those of us chasing after clarity 명료함을 추구하는 우리는 A representation of ugly? 추함의 상징인 걸까요?[1] CALL ME MOMMY 날 엄마라고 불러 JUST LIKE YOUR FANTASY 딱 네 환상[2]처럼 There is no crime in ideality 이상에는 죄악이 없어요[3] MUX>>>DEMUX 소수출력>>>다수출력[4] Can't you understand me? 이해할 수 없나요? I'm not mine NAND I'm not yours 전 제 것이 아니죠 NAND 전 당신의 것도 아니에요[5] Ah 아[6] This could end right here if you don't let it out 당신이 털어놓지 않는다면 여기서 끝날 수도 있어요[7] Let it out 털어놓으세요 Give up or give me your all[8] 포기하던지, 제게 모든 것을 주던지 Tell me now 지금 말해줘요 Tell me now 지금 당장 말해주세요
|
===# 코드 #===
#!syntax java
package extraLarge;
/**
* The goal of this program is to obtain a HEALTHY
* and SUSTAINABLE relationship,darling.
*
* @author Cassise wei from Mili
*/
public class sustainPlusPlus {
public static void main(String[] args){
World world = new World();
Life me = new Ghost();
Life you = new Ghost();
/**
* If abstraction is the definition of beauty
* Are those of us chasing after clarity
* A representation of ugly?
*/
world.getObject().sortByAttribute("beauty");
if(world.getObject().getFirst().getArtTags().indexOf("abstract") != -1) {
me.addPhysicalAttribute("ugly");
you.addPhysicalAttribute("ugly");
}
world.giveBestAward("ugly", me);
world.giveBestAward("ugly", you);
/**
* CALL ME ,MOMMY
* JUST LIKE YOUR FANTASY
* There is no crime in ideality
*/
if(you.getFetishes().searchByType("name calling", "mommy") != -1) {
you.addToMemory(me);
you.setNicknameFor(you.getMemory(me), "mommy");
}
Rule r = new Rule("Oedipus complex is okay", true);
world.addRule(r);
/**
* MUX>>>DEMUX
* Can't you understand me?
* I'm not mine NAND I'm not yours
* Ah
*/
try {
you.decodeMessage(me.codeMessage("I'm not mine NAND I'm not yours.","mux"),"mux");
} catch(InsufficientIntelligenceQuotientException e) {
world.sendMessage("Oh you dummy.", you);
me.announce("Ah");
}
/**
* This could end right here if you don't let it out
* Let it out
*/
if(you.getThoughts().size() != 0) {
try {
you.sayTo(you.getThoughts(), me);
you.clearThoughts();
} catch(ToomuchOfApussyException e) {
world.getRelationship(me, you).end();
}
}
/**
* Give up or give me your all
* tell me now
* tell me now
*/
if (you.getMemories(me).getLove() < 0.5) {
world.getRelationship(me, you).setSustain(0);
} else {
you.transferThoughs(me);
you.transferAttributes(me);
//sustain++;
world.getRelationship(me, you).increaseSustain();
}
/**
* If we can be completely simulated
* Do we need a real reality?
*/
Simulation s =new Simulation(me, world, 1993, 227760);
if (s.compareToOriginal(me) == 100) {
world.execute(me);
}
/**
* Don't let words die, let love run dry
* Like what we did to the rivers we killed off in our near future
* Ah
*/
for (int sustain = 0; sustain < world.getRiver().size(); sustain++) {
me.sayTo("I love you.", you);
you.sayTo("I love you." me);
}
/**
* And mumble some stupid stuff
* Like
* "I saw it comming"
* Pretend it's not happening
* us loser do nothing so winners keep winning
*/
String[] tags = {"stupid", "dumb", "petty", "ignorant"};
world.mute(me, tags);
world.mute(you, tags);
for (Life them : world.getLifeTopOnePercent()) {
me.fight(them);
you.fight(them);
}
/**
* Sit
* Fetch your leash
* DICTATED ECONOMY
*/
me.command(you, "sit");
me.command(you, "fetch");
you.pay(me, you.getFinanceProperties(), "educational purposes");
/**
* Show me
* Your belly
* FORGOTTEN ECOLOGY
*/
me.command(you, "strip");
me.command(you, "exhibit");
world.addPollution("environmental", "indecency", you)
/**
* Stay
* Okay, eat
* HUAMN PSYCHOLOGY
*/
me.command(you, "stay");
me.command(you, "eat");
you.love(me);
/**
* g 0 0 d b o i
* Here's a treat
* HUNGRY FOR ENERGY
*/
me.praise(you, "Good boy.");
me.gift(you, "meat");
you.consumeLast();
/**
* We are searching
* Following our human instincts
* Looking for ghosts of the non-existing kind
* Who make us whole from the very beginning
*/
Ghost[] findings = world.search(me, "ghost");
Ghost[] parents = new Ghost[2];
for (Ghost g : findings) {
me.addFamily(g);
if (me.isHappy()) {
if (parents[0] == null) {
parents[0] = g;
}
else if(parents[1] == null) {
parents[1] = g;
}
else{
//IGNORED because 'me' is never happy
//and will never be happy anyway
}
}
me.removeFamily(g);
}
/**
* We keep chasing
* Dreaming about the perfect being
* Perfect parents who are non-existing
* Our bodies grew, our minds stayed the same
*/
if (me.getDreamParents().equals(parents)) {
me.setParents(parents);
}
else {
me.throwTantrum();
}
/**
* Now darling, where do we go from here?
*/
me.ask(you, "Where do we go from here?");
/**
* Now darling, where do we go from here?
*/
me.ask(you, "Where do we go from here?");
/**
* Now darling, where do we go from here?
*/
me.ask(you, "Where do we go from here?");
/**
* Darling, darling
*/
me.callFor(you);
me.callFor(you);
/**
* Hey honey, where do we go from here?
*/
you.ask(me, "Where do we go from here?");
/**
* Hey honey, where do we go from here?
*/
you.ask(me, "Where do we go from here?");
/**
* Now darling, where do we go from here?
*/
me.ask(you, "Where do we go from here?");
/**
* Now darling, where do we go from here?
*/
me.ask(you, "Where do we go from here?");
/**
* To where?
*/
me.ask(world. "To where?");
/**
* CALL ME DADDY
* WHERE'S YOUR "YES SIR" & "PLEASE"?
* That's the only vocabulary you need
*/
you.setNicknameFor(you.getMemory(me),"daddy");
String[] vocab = {"sir", "yes", "no", "please", "thank you", "master",
"red", "green", "yellow"};
you.setVocabulary(vocab);
/**
* MUX>>>DEMUX
* Can't you understand me?
* You turn my screen #0000ff
*/
you.disorient(me);
/**
* We could end right here if you'd just let us fall
* Let us fall
*/
for (War w : you.getOngoingFights()) {
if (w.getScore(you) < 0.5) {
world.execute(me);
world.execute(you);
}
}
/**
* No tears, No regrets
* No zero-days at our fault
*/
me.setMemory("sad", null);
you.setMemory("sad", null);
me.setMemory("regretful", null);
you.setMemory("regretful", null);
Vulnerability zeroDays = world.getVulnerabilities().getZeroDays();
for (Vulnerability v : zeroDays) {
v.setAuthors(null);
}
/**
* Here me out
* It's a perfact plan
*/
me.command(you, "listen");
me.sayTo("Anything inconvenient, I shall erase for you.", you);
/**
* If you'd just
* SHUT UP
* SHUT UP
* Then maybe you'll see what I've endured now
*/
me.command(you, "be quiet");
me.command(you, "be quiet");
try {
you.listenTelepathically(me.world);
} catch (NotAMindReaderException e) {
world.getRelationship(me, you).challenge();
}
/**
* Hear me out
* LILULILALULALULA
*/
me.command(you, "listen");
me.sayTo("I did it all for you.", you);
you.ignoreCommands();
you.setMessages(null);
/**
* It's all just sunk cost, I know
* But I'm not ready to stop
*/
me.manipulate(you, "beg");
me.manipulate(you, "gaslight");
me.manipulate(you, "blame");
me.manipulate(you, "tears");
world.getRelationship(me,you).end();
you.setMemory(me, null);
/**
* I don't want to stop
*/
me.getMemory(you, "positive");
me.getMemory(you, "date");
me.getMemory(you, "fun");
me.getMemory(you, "travel");
me.getMemory(you, "wedding");
me.getMemory(you, "pregnancy");
me.getMemory(you, "kids");
me.getMemory(you, "snuggle");
me.getMemory(you, "netflix&chill");
me.getMemory(you, "gaming");
me.getMemory(you, "birthday");
me.getMemory(you, "cooking");
me.getMemory(you, "exercising");
me.getMemory(you, "studying");
me.getMemory(you, "gardening");
me.getMemory(you, "chores");
me.getMemory(you, "shopping");
me.getMemory(you, "driving");
me.getMemory(you, "daily");
me.getMemory(you, "sad");
me.getMemory(you, "angry");
me.getMemory(you, "fight");
me.getMemory(you, "forgiveness");
me.getMemory(you, "makeup");
me.getMemory(you);
world.setRelationship(me, you, null);
// a
// u
// i
// s
// ;
// i
// t
// s ;
// a n +
// s +
//s t
// s a +
// u in +
//s ;
// ta n+
// ++
// u t n +
//s in
// t n+ ;
// s a
//s t i +
// u i + ;
//s a n +
// s + ;
// u t i +
//s st i +
// us a n +;
// s ain+
//su ai +;
//s tain ;
// ust n +
//s stai + ;
//su t in +;
// ustain++
//sustain++;
//sustain++;
//sustain++;
//sustain++;
//sustain++;
//sustain++;
//sustain++;
}
}
3. 특징
- 이전 작인 world.execute(me);, world.search(you);처럼 제목 자체가 Java 코드로 이루어져 있으며, 동영상에도 가사의 내용과 맞는 Java 코드를 기반으로 하는 가상의 프로그래밍 코드가 나온다.
- 타치코마의 파츠들이 끝없이 연결되어있다.
- 인트로의 전주가 상당히 암울한동시에 웅장하면서도 미래적이다.어두운 mv의 그래픽이 더해지면서 종교적인 분위기마저 띈다.
4. 관련 문서
[1] 이 부분에 대응되는 코드에서 giveBestAward() 함수가 항상 실행된다. 여기에 대응되는 속성이 '추함'이고 대상이 '우리'인 점을 감안하면, '어느 쪽이든 우리는 추함을 피할 수 없다'는 의미가 된다. 그냥 giveAward()도 아니고 giveBestAward()라는 점에서 포상 드립을 노린 것일 수도 있다.[2] 코드상에서는 호칭에 대한 페티시로 표현된다.[3] 이 부분에 대응되는 코드에서 오이디푸스 콤플렉스가 언급된다. 물론 이 코드 역시 항상 실행된다.[4] 멀티플렉서(MUX)와 디멀티플렉서(DEMUX)를 의도한 표현으로, 여러 입력 중 하나를 (적절한 방식으로) 취하고, 그것을 다시 여러 대상 중 하나에 전달한다는 의미이다.[5] 부정논리곱(NAND) 논리게이트를 의도한 표현으로, 적어도 주어진 두 명제 중 하나는 거짓이라는(포기하라는) 의미이다. 드모르간 법칙으로 해석하자면, '난 나의 것 OR 난 너의 것'으로 해석이 된다.[6] 코드상에서는 이 가사만이 예외 처리에 들어가 있다. 즉, 앞서 전달하려 했던 것이 전달되지 않은 (예외가 발생한) 것으로 볼 수 있다. 이 때 코드에서 처리하는 예외의 명칭은 "불충분한 IQ 예외"(InsufficientIntelligenceQuotientException)로, 이 예외는 Can't you understand me?에 대응된다.[7] '끝나는 부분'은 코드상으론 world.getRelationship(me, you).end();에 대응되며, 이 코드는 다시 ToomuchOfApussyException 예외에 대응된다. 즉, 겁쟁이마냥 행동하다가는 끝나버릴 수도 있다는 뜻으로, 과감하게 털어놓으라는 의미.[8] '모든 것을 주는' 부분은 코드상으론 world.getRelationship(me, you).increaseSustain();에 대응된다. 즉, sustain++;은 increaseSustain()의 내부 처리 결과를 의미한다. 이 내용은 주석에도 명시되어 있다. 반대로 '포기'를 의미하는 world.getRelationship(me, you).setSustain(0);은 sustain = 0;을 의미.[9] "zero zero zero zero... F F"로 부르며, 타이밍은 각각의 "zero"를 위의 "NAND I'm not yours"에 맞추고 잠깐(2박자 정도) 쉰 다음 한 박자에 F F를 부른다.[10] 화자가 명령하는 대상이 자신의 말을 이해하지 못하자 화가 나서 이성이 끊어진 상태.[11] 코드의 맥락 상 제로 데이 취약점을 의미한다.