removed comments and made necessary private variables readonly