added input device class