refactor draw path