First working version including test