Code became more lisible and rewritable
Remove old parts
Merge branch 'feature/optimization' into develop