semicolon and stupid stuff