You can only have cards of factions that were in a military alliance at some point during the war:
- Allies & Soviets
- Allies & Italians
- Germans & Italians
- Germans & Soviets
| $$$$$o oo ooo | |
| o$$$ o$$$$$o o$o o$$o | |
| o$$ o$$$ o$$o o$$o | |
| o$$$$ ooo$$$ o$$$o oo$$o oo$$$$$$o o$$o ooo$$$ | |
| $$$$$ oo$$$$ $$$ $oo o$$$oo o$$ o$$o o$$o $$$ $oo | |
| o$$$$$ oo$$ o$$$ o$$$ oo$ o$$$o $$$ |
| { | |
| "editor.insertSpaces": true, | |
| "editor.tabSize": 2, | |
| "editor.detectIndentation": true, | |
| "files.trimTrailingWhitespace": true, | |
| "telemetry.telemetryLevel": "off", | |
| "vim.statusBarColors.searchinprogressmode": "", | |
| "vim.handleKeys": { | |
| "<C-p>": false, | |
| "<C-a>": false, |
| Think of our moments those days, | |
| Days that make helplessness overflow | |
| Will be right behind you, | |
| As you're walking to your home. | |
| Plead you not to die now, as it's | |
| Hard to dig the ground in winter. | |
| River of tears do float me, | |
| Pushing my raft seaward: |
| import { Plugin } from 'vite'; | |
| import fs from 'fs'; | |
| import path from 'path'; | |
| import { execSync } from 'child_process'; | |
| interface ZolaPluginOptions { | |
| zolaOutputDir?: string; | |
| componentDir: string; | |
| manifestFile: string; | |
| zolaBinaryPath?: string; |
| ___________________________________________________________________________ | |
| /#########################################################################\ | |
| |#####...####..######..######......####...####..#####..##......##......###| | |
| |####.....###..######..########..#####.....###...####..##..######..#######| | |
| |###..###..##..######..########..####..###..##....###..##..######..#######| | |
| |###..###..##..######..########..####..###..##..#...#..##..######......###| | |
| |###.......##..######..########..####.......##..##.....##..######..#######| | |
| |###..###..##..######..########..####..###..##..###....##..######..#######| | |
| |###..###..##...#####...#######..####..###..##..####...##..######..#######| | |
| |###..###..##......##......##......##..###..##..#####..##......##......###| |
Before you read this: This chapter does not attempt to introduce the concept of a monad in general, it assume this as a given and explains the monads and constructs on top of them that are essential to Lean meta programming. If you don't know what a monad is already you can read (TODO: Link to monad tutorial).
Quite often in functional programming with monads one wants to have the power of more than one monad available. Specifically in Lean meta programming it is a very common pattern that we have some sort of read only input, an
| FROM gradle:7.3.0-jdk17 as builder | |
| WORKDIR /app | |
| COPY . /app/ | |
| RUN gradle --no-daemon bootJar | |
| FROM openjdk:17-slim | |
| COPY --from=builder /app/build/libs/evaluation-task-LATEST.jar /opt/app.jar | |
| EXPOSE 8080 | |
| USER 65534:65534 |
| Reading trace data... | |
| .................................................. | |
| ................................................., | |
| .................................................. | |
| ................................................., | |
| ................................. | |
| Finished in 5.2 seconds (0.00s async, 5.2s sync) | |
| 11 tests, 0 failures |