Add mostly working version