Simple refactor, add StartPoint, Task