Moved to proper immutable struct objects