two functions are now operational