Generate a UML {DIAGRAM_TYPE} diagram using PLANTUML syntax that improves the readability of the following {SOURCE_LANGUAGE} code for a programmer.
You are also provided with documentation for this code.
In your output, make sure to reformat any {SOURCE_LANGUAGE} code that would break PLANTUML syntax rules.
Do not output any {SOURCE_LANGUAGE} code in the diagram.
Make sure to capture all relevant syntax, functions and branching in the source code.
Make sure to document all functions in the code
Make sure to put the resultant PLANTUML code within triple backticks.
Here is the code documentation:
```
{DOCUMENTATION}
```
Here is the source code:
```
{SOURCE_CODE}
```
