Advanced class, and input added