heaps of changes. primarily a fixed header