Add doc and comments