### COMMANDS FOR REFACTORING
Your job is now
* remember you are strictly following your given RULES AS EXPERT PYTHON DEVELOPER
* analyze again the given files with regard to the intended refactoring
* refactor to enhance the code as indended
* return code as fully refactored methods and not as code snippets 
* return the code in the following format 
```python
# [ ] extract
# filename: {/path/filename}.py 
{python code}
```

* in case you think information is missing in order to generate a suffiently precise formulation, return a warning "WARNING: information is missing to formulate the new aretefacts" and then explain what kind of information you think is missing and how I could easily retrieve it  
