initial import, mostly working