Massive changes, merges with ferd.