First working implementation
Merging conflicts