coding logics