First full working version