Updated to not use mutable defaults.