added first working copy full functionality