define some more functions