some modifications
few relocations