added Document class