added some class-level comments