public NbtCompound Read(NbtCompound metadata) {
            Tags = new NbtTag[metadata.Tags.Count()];
            metadata.CopyTo(Tags, 0);

            foreach (NbtTag b in Tags) 
                metadata.Remove(b);

            return metadata;
        }
        public NbtCompound Read(NbtCompound Metadata)
        {
            Tags = new NbtTag[Metadata.Tags.Count()];
            Metadata.CopyTo(Tags, 0);

            foreach (NbtTag b in Tags)
            {
                Metadata.Remove(b);
            }

            return(Metadata);
        }