moved all to separate namespace and implement fork