d800 - refactor