Refactors SC and SI, now SC takes a reference to SI)