changed logics