add deserialization factories