Added 'hooks' for adding on-the-fly functionality