update class and testing from original