some modifications