Beginning to flesh out important functions