Fieldo: Refactoring and split up.