comments and more functions