Further filled out skeleton code.