Restructed.  Seperated Header.