public static bool TryDeserialize(object[] data, out Join instance) =>
 DecoratorIO.TryDeserializeJoin(data, out instance);
 public object[] Serialize() => DecoratorIO.SerializeJoin(this);
 public static bool TryDeserialize(object[] data, out Block instance) =>
 DecoratorIO.TryDeserializeBlock(data, out instance);
 public static bool TryDeserialize(object[] data, out Fly instance) =>
 DecoratorIO.TryDeserializeFly(data, out instance);
 public object[] Serialize() => DecoratorIO.SerializeBlock(this);