subsystem refactory