header and function updates