Refactor

refactor as ListView