added IMetadataSaver