improve transit method