@@ -0,0 +1,64 @@
1+[3;38;2;102;217;239mnamespace[0m[38;2;248;248;242m [0m[38;2;166;226;46mStackImplementation[0m
2+[38;2;248;248;242m{[0m
3+[38;2;248;248;242m [0m[38;2;249;38;114minternal[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mclass[0m[38;2;248;248;242m [0m[4;38;2;102;217;239mStack[0m[38;2;248;248;242m<[0m[3;38;2;166;226;46mT[0m[38;2;248;248;242m>[0m
4+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
5+[38;2;248;248;242m [0m[38;2;249;38;114mprivate[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m [0m[38;2;255;255;255m_top[0m[38;2;248;248;242m;[0m
6+[38;2;248;248;242m [0m[38;2;249;38;114mprivate[0m[38;2;248;248;242m [0m[38;2;249;38;114mconst[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m [0m[38;2;255;255;255mCapacity[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;190;132;255m4[0m[38;2;248;248;242m;[0m
7+[38;2;248;248;242m [0m[38;2;249;38;114mprivate[0m[38;2;248;248;242m [0m[38;2;249;38;114mreadonly[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mT[0m[38;2;248;248;242m[[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;255;255;255m_stack[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;249;38;114mnew[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mT[0m[38;2;248;248;242m[[0m[38;2;255;255;255mCapacity[0m[38;2;248;248;242m][0m[38;2;248;248;242m;[0m
8+
9+[38;2;248;248;242m [0m[38;2;249;38;114mpublic[0m[38;2;248;248;242m [0m[38;2;166;226;46mStack[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
10+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
11+[38;2;248;248;242m [0m[38;2;255;255;255m_top[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;249;38;114m-[0m[38;2;190;132;255m1[0m[38;2;248;248;242m;[0m
12+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
13+
14+[38;2;248;248;242m [0m[38;2;249;38;114mprivate[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mbool[0m[38;2;248;248;242m [0m[38;2;166;226;46mIsEmpty[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
15+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
16+[38;2;248;248;242m [0m[38;2;249;38;114mreturn[0m[38;2;248;248;242m [0m[38;2;255;255;255m_top[0m[38;2;248;248;242m [0m[38;2;249;38;114m<[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m;[0m
17+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
18+[38;2;248;248;242m [0m[38;2;249;38;114mprivate[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mbool[0m[38;2;248;248;242m [0m[38;2;166;226;46mIsFull[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
19+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
20+[38;2;248;248;242m [0m[38;2;249;38;114mreturn[0m[38;2;248;248;242m [0m[38;2;255;255;255m_top[0m[38;2;248;248;242m [0m[38;2;249;38;114m==[0m[38;2;248;248;242m [0m[38;2;255;255;255mCapacity[0m[38;2;248;248;242m [0m[38;2;249;38;114m-[0m[38;2;248;248;242m [0m[38;2;190;132;255m1[0m[38;2;248;248;242m;[0m
21+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
22+
23+[38;2;248;248;242m [0m[38;2;249;38;114mpublic[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mvoid[0m[38;2;248;248;242m [0m[38;2;166;226;46mPeek[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
24+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
25+[38;2;248;248;242m [0m[38;2;255;255;255mSystem[0m[38;2;248;248;242m.[0m[38;2;255;255;255mConsole[0m[38;2;248;248;242m.[0m[38;2;248;248;242mWriteLine[0m[38;2;248;248;242m([0m[38;2;249;38;114m![0m[38;2;248;248;242mIsEmpty[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m?[0m[38;2;248;248;242m [0m[38;2;230;219;116m$"[0m[38;2;230;219;116mThe topmost element is: [0m[38;2;248;248;242m{[0m[38;2;255;255;255m_stack[0m[38;2;248;248;242m[[0m[38;2;255;255;255m_top[0m[38;2;248;248;242m][0m[38;2;248;248;242m}[0m[38;2;230;219;116m"[0m[38;2;248;248;242m [0m[38;2;249;38;114m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mThe stack is empty.[0m[38;2;230;219;116m"[0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
26+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
27+
28+[38;2;248;248;242m [0m[38;2;249;38;114mpublic[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mT[0m[38;2;248;248;242m [0m[38;2;166;226;46mPop[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
29+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
30+[38;2;248;248;242m [0m[38;2;249;38;114mreturn[0m[38;2;248;248;242m [0m[38;2;249;38;114m![0m[38;2;248;248;242mIsEmpty[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m?[0m[38;2;248;248;242m [0m[38;2;255;255;255m_stack[0m[38;2;248;248;242m[[0m[38;2;255;255;255m_top[0m[38;2;249;38;114m-[0m[38;2;249;38;114m-[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114m:[0m[38;2;248;248;242m [0m[38;2;249;38;114mdefault[0m[38;2;248;248;242m;[0m
31+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
32+
33+[38;2;248;248;242m [0m[38;2;249;38;114mpublic[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mvoid[0m[38;2;248;248;242m [0m[38;2;166;226;46mPush[0m[38;2;248;248;242m([0m[3;38;2;166;226;46mT[0m[38;2;248;248;242m [0m[3;38;2;253;151;31melement[0m[38;2;248;248;242m)[0m
34+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
35+[38;2;248;248;242m [0m[38;2;249;38;114mif[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[38;2;249;38;114m![0m[38;2;248;248;242mIsFull[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m)[0m
36+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
37+[38;2;248;248;242m [0m[38;2;255;255;255m_stack[0m[38;2;248;248;242m[[0m[38;2;249;38;114m+[0m[38;2;249;38;114m+[0m[38;2;255;255;255m_top[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255melement[0m[38;2;248;248;242m;[0m
38+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
39+[38;2;248;248;242m [0m[38;2;249;38;114melse[0m
40+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
41+[38;2;248;248;242m [0m[38;2;255;255;255mSystem[0m[38;2;248;248;242m.[0m[38;2;255;255;255mConsole[0m[38;2;248;248;242m.[0m[38;2;248;248;242mWriteLine[0m[38;2;248;248;242m([0m[38;2;230;219;116m"[0m[38;2;230;219;116mCannot push - the stack is full.[0m[38;2;230;219;116m"[0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
42+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
43+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
44+
45+[38;2;248;248;242m [0m[38;2;249;38;114mpublic[0m[38;2;248;248;242m [0m[38;2;249;38;114moverride[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mstring[0m[38;2;248;248;242m [0m[38;2;166;226;46mToString[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
46+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
47+[38;2;248;248;242m [0m[38;2;249;38;114mif[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[38;2;248;248;242mIsEmpty[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m)[0m
48+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
49+[38;2;248;248;242m [0m[38;2;249;38;114mreturn[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mThe stack is empty.[0m[38;2;230;219;116m"[0m[38;2;248;248;242m;[0m
50+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
51+
52+[38;2;248;248;242m [0m[3;38;2;102;217;239mvar[0m[38;2;248;248;242m [0m[38;2;255;255;255mdepiction[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116m"[0m[38;2;248;248;242m;[0m
53+
54+[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[3;38;2;102;217;239mvar[0m[38;2;248;248;242m [0m[38;2;255;255;255mindex[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;255;255;255mindex[0m[38;2;248;248;242m [0m[38;2;249;38;114m<[0m[38;2;248;248;242m [0m[38;2;255;255;255m_top[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;255;255;255mindex[0m[38;2;249;38;114m+[0m[38;2;249;38;114m+[0m[38;2;248;248;242m)[0m
55+[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
56+[38;2;248;248;242m [0m[38;2;255;255;255mdepiction[0m[38;2;248;248;242m [0m[38;2;249;38;114m+=[0m[38;2;248;248;242m [0m[38;2;255;255;255m_stack[0m[38;2;248;248;242m[[0m[38;2;255;255;255mindex[0m[38;2;248;248;242m][0m[38;2;248;248;242m.[0m[38;2;248;248;242mToString[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m+[0m[38;2;248;248;242m [0m[38;2;190;132;255m' '[0m[38;2;248;248;242m;[0m
57+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
58+
59+[38;2;248;248;242m [0m[38;2;255;255;255mdepiction[0m[38;2;248;248;242m [0m[38;2;249;38;114m+=[0m[38;2;248;248;242m [0m[38;2;255;255;255m_stack[0m[38;2;248;248;242m[[0m[38;2;255;255;255m_top[0m[38;2;248;248;242m][0m[38;2;248;248;242m.[0m[38;2;248;248;242mToString[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m;[0m
60+
61+[38;2;248;248;242m [0m[38;2;249;38;114mreturn[0m[38;2;248;248;242m [0m[38;2;230;219;116m$"[0m[38;2;230;219;116mStack: [[0m[38;2;248;248;242m{[0m[38;2;255;255;255mdepiction[0m[38;2;248;248;242m}[0m[38;2;230;219;116m][0m[38;2;230;219;116m"[0m[38;2;248;248;242m;[0m
62+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
63+[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
64+[38;2;248;248;242m}[0m