fix logical errors caused by breaking the assumption that there