First kinda mostly working version!