initializing functions