added function headers, not working yet