giving decent results, small fixes left and will get a working versions