don't use pushd/popd