Coffee Machine Machine
CoffeeScript, 219 bytes
Thanks to @totallyhuman for saving 4 bytes!
->"""#{l="________"}.#{l}_
#{s="| |"} \\ - /
#{t="| || |"} \\ - /
#{t}___\\___/
#{t} X
#{s} ___
#{s} / - \\
|______| / - \\
| ____ | /_______\\
||7:30||#{l}__
||____| |
|#{l}#{l}_|"""
Try it online!
SOGL V0.12, 78 bytes
≈p⁽.*%θ|»Y?v▼mB8█[=ρļiρKτ¾Γb 2⁴⅟┼¤Μ╬(׀⁾⌠○Yyλ{╝<-³|k¤↑E*UH∙æ¹ΘNσx↔§÷πm‛⁾ņμ׀⁴@≤‘
Try it Here!
SOGL compression beats bubblegum!
Befunge, 166 162 bytes
55+31p"kvvvvvvvvgf:::::kvugvvvvvj6,jHvvvs>?vqg[@:P>vvvg[|P:f::>Jv"v
:0 /\|_-37X.v"vvvv{vvvvg:::>=:@:G>f>f:=|:G>f>fv`vUg:j:>::N>::f::"<
g1+2%+56:-*49<_@#:,g1/+56,
Try it online!
Explanation
This is using a fairly simple compression scheme where every two characters are encoded into a pair as a base 11 number.
We start by translating the characters into indices in a lookup table to minimise their size - this gives us one index in the range 0 to 11, and a second in the range 0 to 8. These indices are combined into a single number as n = i1 + i2*11
. We then add a additional offset to translate that number into the range of printable ASCII characters, so it can be stored in a Befunge string.
When decoding we just perform this process in reverse. We subtract the offset, split the value into two parts with i1 = n%11
and i2 = n/11
, and then lookup those indices in the translation table to obtain the final characters to output.
Bonus Coffee Mug
55+37p"kvvvvvvvvgf::"v
v",6jvvvvvguvk:::" <
>"jHvvvs>?vqg[@:P" v
v"vJ>::f:P|[gvvv>" <
>"::f::>N::>:j:gU" v
v"f>f:=|:G>f>fv`v" <
>">G:@:=>:::gvvvv" v
:0 X/\|_-37X.v"vvvv{"<
@v2%+56:-*49<<_>
>+7g,65+/7g,:^
Try it online!