initial impl
bugfixes