more refactoring
fetch server data behavior tweak