forking doesn't seem to work. must need to be done in same process