pubmodcounter;/// A trait representing an operation that can be applied to a value.
/// This trait is used for events that can be applied to a value, such as incrementing or decrementing a counter.
pubtraitOperation: Sized {typeValue;fndefault()->Self::Value;fndeserialize(value: String)->Result<Self, Box<dyn std::error::Error>>;fnserialize(&self)-> String;fnapply(&self, value:Self::Value)->Self::Value;}