only deserialize when all elements are available