[Untested, need refactor] finish dict-list panel