REVIEW: Rewrite with switches and privatize