small refactor, proplist replaced with dict