```
code blocks can start in the first line
```

This is a code block

```
foo bar
eggs bacon
```

They are allowed to start within a block:
```
foo
```

Code blocks can contain empty lines
```
before empty line

after empty line
```

Language info strings will add a class to the code block
```sh
#!/bin/sh
ls -la .
```

Accidental code fences can be avoided by escaping
\`\`\`
like this.
\`\`\`

According to commonmark, a code block that is not terminated will continue until the end of file.
```
This is code.
