Refactor the 4connect source