finished keyboard and mouse subsystems