Make `expand_from_hash` protected