update again with some fixes