use core::ffi::*;
use core::ptr::NonNull;
use objc2::__framework_prelude::*;
#[cfg(feature = "objc2-core-foundation")]
use objc2_core_foundation::*;
use objc2_foundation::*;
use crate::*;
extern_protocol!(
pub unsafe trait AXChart: NSObjectProtocol {
#[unsafe(method(accessibilityChartDescriptor))]
#[unsafe(method_family = none)]
unsafe fn accessibilityChartDescriptor(&self) -> Option<Retained<AXChartDescriptor>>;
#[unsafe(method(setAccessibilityChartDescriptor:))]
#[unsafe(method_family = none)]
unsafe fn setAccessibilityChartDescriptor(
&self,
accessibility_chart_descriptor: Option<&AXChartDescriptor>,
);
}
);
extern_protocol!(
pub unsafe trait AXDataAxisDescriptor: NSCopying {
#[unsafe(method(title))]
#[unsafe(method_family = none)]
unsafe fn title(&self) -> Retained<NSString>;
#[unsafe(method(setTitle:))]
#[unsafe(method_family = none)]
unsafe fn setTitle(&self, title: &NSString);
#[unsafe(method(attributedTitle))]
#[unsafe(method_family = none)]
unsafe fn attributedTitle(&self) -> Retained<NSAttributedString>;
#[unsafe(method(setAttributedTitle:))]
#[unsafe(method_family = none)]
unsafe fn setAttributedTitle(&self, attributed_title: &NSAttributedString);
}
);
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct AXNumericDataAxisDescriptorScale(pub NSInteger);
impl AXNumericDataAxisDescriptorScale {
#[doc(alias = "AXScaleTypeLinear")]
pub const ScaleTypeLinear: Self = Self(0);
#[doc(alias = "AXScaleTypeLog10")]
pub const ScaleTypeLog10: Self = Self(1);
#[doc(alias = "AXScaleTypeLn")]
pub const ScaleTypeLn: Self = Self(2);
}
unsafe impl Encode for AXNumericDataAxisDescriptorScale {
const ENCODING: Encoding = NSInteger::ENCODING;
}
unsafe impl RefEncode for AXNumericDataAxisDescriptorScale {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AXNumericDataAxisDescriptor;
);
extern_conformance!(
unsafe impl AXDataAxisDescriptor for AXNumericDataAxisDescriptor {}
);
extern_conformance!(
unsafe impl NSCopying for AXNumericDataAxisDescriptor {}
);
unsafe impl CopyingHelper for AXNumericDataAxisDescriptor {
type Result = Self;
}
extern_conformance!(
unsafe impl NSObjectProtocol for AXNumericDataAxisDescriptor {}
);
impl AXNumericDataAxisDescriptor {
extern_methods!(
#[unsafe(method(scaleType))]
#[unsafe(method_family = none)]
pub unsafe fn scaleType(&self) -> AXNumericDataAxisDescriptorScale;
#[unsafe(method(setScaleType:))]
#[unsafe(method_family = none)]
pub unsafe fn setScaleType(&self, scale_type: AXNumericDataAxisDescriptorScale);
#[unsafe(method(lowerBound))]
#[unsafe(method_family = none)]
pub unsafe fn lowerBound(&self) -> c_double;
#[unsafe(method(setLowerBound:))]
#[unsafe(method_family = none)]
pub unsafe fn setLowerBound(&self, lower_bound: c_double);
#[unsafe(method(upperBound))]
#[unsafe(method_family = none)]
pub unsafe fn upperBound(&self) -> c_double;
#[unsafe(method(setUpperBound:))]
#[unsafe(method_family = none)]
pub unsafe fn setUpperBound(&self, upper_bound: c_double);
#[cfg(feature = "block2")]
#[unsafe(method(valueDescriptionProvider))]
#[unsafe(method_family = none)]
pub unsafe fn valueDescriptionProvider(
&self,
) -> NonNull<block2::DynBlock<dyn Fn(c_double) -> NonNull<NSString>>>;
#[cfg(feature = "block2")]
#[unsafe(method(setValueDescriptionProvider:))]
#[unsafe(method_family = none)]
pub unsafe fn setValueDescriptionProvider(
&self,
value_description_provider: &block2::DynBlock<dyn Fn(c_double) -> NonNull<NSString>>,
);
#[unsafe(method(gridlinePositions))]
#[unsafe(method_family = none)]
pub unsafe fn gridlinePositions(&self) -> Retained<NSArray<NSNumber>>;
#[unsafe(method(setGridlinePositions:))]
#[unsafe(method_family = none)]
pub unsafe fn setGridlinePositions(&self, gridline_positions: &NSArray<NSNumber>);
#[cfg(feature = "block2")]
#[unsafe(method(initWithTitle:lowerBound:upperBound:gridlinePositions:valueDescriptionProvider:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithTitle_lowerBound_upperBound_gridlinePositions_valueDescriptionProvider(
this: Allocated<Self>,
title: &NSString,
lowerbound: c_double,
upper_bound: c_double,
gridline_positions: Option<&NSArray<NSNumber>>,
value_description_provider: &block2::DynBlock<dyn Fn(c_double) -> NonNull<NSString>>,
) -> Retained<Self>;
#[cfg(feature = "block2")]
#[unsafe(method(initWithAttributedTitle:lowerBound:upperBound:gridlinePositions:valueDescriptionProvider:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithAttributedTitle_lowerBound_upperBound_gridlinePositions_valueDescriptionProvider(
this: Allocated<Self>,
attributed_title: &NSAttributedString,
lowerbound: c_double,
upper_bound: c_double,
gridline_positions: Option<&NSArray<NSNumber>>,
value_description_provider: &block2::DynBlock<dyn Fn(c_double) -> NonNull<NSString>>,
) -> Retained<Self>;
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AXCategoricalDataAxisDescriptor;
);
extern_conformance!(
unsafe impl AXDataAxisDescriptor for AXCategoricalDataAxisDescriptor {}
);
extern_conformance!(
unsafe impl NSCopying for AXCategoricalDataAxisDescriptor {}
);
unsafe impl CopyingHelper for AXCategoricalDataAxisDescriptor {
type Result = Self;
}
extern_conformance!(
unsafe impl NSObjectProtocol for AXCategoricalDataAxisDescriptor {}
);
impl AXCategoricalDataAxisDescriptor {
extern_methods!(
#[unsafe(method(categoryOrder))]
#[unsafe(method_family = none)]
pub unsafe fn categoryOrder(&self) -> Retained<NSArray<NSString>>;
#[unsafe(method(setCategoryOrder:))]
#[unsafe(method_family = none)]
pub unsafe fn setCategoryOrder(&self, category_order: &NSArray<NSString>);
#[unsafe(method(initWithTitle:categoryOrder:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithTitle_categoryOrder(
this: Allocated<Self>,
title: &NSString,
category_order: &NSArray<NSString>,
) -> Retained<Self>;
#[unsafe(method(initWithAttributedTitle:categoryOrder:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithAttributedTitle_categoryOrder(
this: Allocated<Self>,
attributed_title: &NSAttributedString,
category_order: &NSArray<NSString>,
) -> Retained<Self>;
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AXDataPointValue;
);
extern_conformance!(
unsafe impl NSCopying for AXDataPointValue {}
);
unsafe impl CopyingHelper for AXDataPointValue {
type Result = Self;
}
extern_conformance!(
unsafe impl NSObjectProtocol for AXDataPointValue {}
);
impl AXDataPointValue {
extern_methods!(
#[unsafe(method(number))]
#[unsafe(method_family = none)]
pub unsafe fn number(&self) -> c_double;
#[unsafe(method(setNumber:))]
#[unsafe(method_family = none)]
pub unsafe fn setNumber(&self, number: c_double);
#[unsafe(method(category))]
#[unsafe(method_family = none)]
pub unsafe fn category(&self) -> Retained<NSString>;
#[unsafe(method(setCategory:))]
#[unsafe(method_family = none)]
pub unsafe fn setCategory(&self, category: &NSString);
#[unsafe(method(valueWithNumber:))]
#[unsafe(method_family = none)]
pub unsafe fn valueWithNumber(number: c_double) -> Retained<Self>;
#[unsafe(method(valueWithCategory:))]
#[unsafe(method_family = none)]
pub unsafe fn valueWithCategory(category: &NSString) -> Retained<Self>;
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AXDataPoint;
);
extern_conformance!(
unsafe impl NSCopying for AXDataPoint {}
);
unsafe impl CopyingHelper for AXDataPoint {
type Result = Self;
}
extern_conformance!(
unsafe impl NSObjectProtocol for AXDataPoint {}
);
impl AXDataPoint {
extern_methods!(
#[unsafe(method(xValue))]
#[unsafe(method_family = none)]
pub unsafe fn xValue(&self) -> Retained<AXDataPointValue>;
#[unsafe(method(setXValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setXValue(&self, x_value: &AXDataPointValue);
#[unsafe(method(yValue))]
#[unsafe(method_family = none)]
pub unsafe fn yValue(&self) -> Option<Retained<AXDataPointValue>>;
#[unsafe(method(setYValue:))]
#[unsafe(method_family = none)]
pub unsafe fn setYValue(&self, y_value: Option<&AXDataPointValue>);
#[unsafe(method(additionalValues))]
#[unsafe(method_family = none)]
pub unsafe fn additionalValues(&self) -> Retained<NSArray<AXDataPointValue>>;
#[unsafe(method(setAdditionalValues:))]
#[unsafe(method_family = none)]
pub unsafe fn setAdditionalValues(&self, additional_values: &NSArray<AXDataPointValue>);
#[unsafe(method(label))]
#[unsafe(method_family = none)]
pub unsafe fn label(&self) -> Option<Retained<NSString>>;
#[unsafe(method(setLabel:))]
#[unsafe(method_family = none)]
pub unsafe fn setLabel(&self, label: Option<&NSString>);
#[unsafe(method(attributedLabel))]
#[unsafe(method_family = none)]
pub unsafe fn attributedLabel(&self) -> Option<Retained<NSAttributedString>>;
#[unsafe(method(setAttributedLabel:))]
#[unsafe(method_family = none)]
pub unsafe fn setAttributedLabel(&self, attributed_label: Option<&NSAttributedString>);
#[unsafe(method(initWithX:y:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithX_y(
this: Allocated<Self>,
x_value: &AXDataPointValue,
y_value: Option<&AXDataPointValue>,
) -> Retained<Self>;
#[unsafe(method(initWithX:y:additionalValues:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithX_y_additionalValues(
this: Allocated<Self>,
x_value: &AXDataPointValue,
y_value: Option<&AXDataPointValue>,
additional_values: Option<&NSArray<AXDataPointValue>>,
) -> Retained<Self>;
#[unsafe(method(initWithX:y:additionalValues:label:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithX_y_additionalValues_label(
this: Allocated<Self>,
x_value: &AXDataPointValue,
y_value: Option<&AXDataPointValue>,
additional_values: Option<&NSArray<AXDataPointValue>>,
label: Option<&NSString>,
) -> Retained<Self>;
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AXDataSeriesDescriptor;
);
extern_conformance!(
unsafe impl NSCopying for AXDataSeriesDescriptor {}
);
unsafe impl CopyingHelper for AXDataSeriesDescriptor {
type Result = Self;
}
extern_conformance!(
unsafe impl NSObjectProtocol for AXDataSeriesDescriptor {}
);
impl AXDataSeriesDescriptor {
extern_methods!(
#[unsafe(method(name))]
#[unsafe(method_family = none)]
pub unsafe fn name(&self) -> Option<Retained<NSString>>;
#[unsafe(method(setName:))]
#[unsafe(method_family = none)]
pub unsafe fn setName(&self, name: Option<&NSString>);
#[unsafe(method(attributedName))]
#[unsafe(method_family = none)]
pub unsafe fn attributedName(&self) -> Retained<NSAttributedString>;
#[unsafe(method(setAttributedName:))]
#[unsafe(method_family = none)]
pub unsafe fn setAttributedName(&self, attributed_name: &NSAttributedString);
#[unsafe(method(isContinuous))]
#[unsafe(method_family = none)]
pub unsafe fn isContinuous(&self) -> bool;
#[unsafe(method(setIsContinuous:))]
#[unsafe(method_family = none)]
pub unsafe fn setIsContinuous(&self, is_continuous: bool);
#[unsafe(method(dataPoints))]
#[unsafe(method_family = none)]
pub unsafe fn dataPoints(&self) -> Retained<NSArray<AXDataPoint>>;
#[unsafe(method(setDataPoints:))]
#[unsafe(method_family = none)]
pub unsafe fn setDataPoints(&self, data_points: &NSArray<AXDataPoint>);
#[unsafe(method(initWithName:isContinuous:dataPoints:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithName_isContinuous_dataPoints(
this: Allocated<Self>,
name: &NSString,
is_continuous: bool,
data_points: &NSArray<AXDataPoint>,
) -> Retained<Self>;
#[unsafe(method(initWithAttributedName:isContinuous:dataPoints:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithAttributedName_isContinuous_dataPoints(
this: Allocated<Self>,
attributed_name: &NSAttributedString,
is_continuous: bool,
data_points: &NSArray<AXDataPoint>,
) -> Retained<Self>;
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct AXChartDescriptorContentDirection(pub NSInteger);
impl AXChartDescriptorContentDirection {
#[doc(alias = "AXChartContentDirectionLeftToRight")]
pub const ContentDirectionLeftToRight: Self = Self(0);
#[doc(alias = "AXChartContentDirectionRightToLeft")]
pub const ContentDirectionRightToLeft: Self = Self(1);
#[doc(alias = "AXChartContentDirectionTopToBottom")]
pub const ContentDirectionTopToBottom: Self = Self(2);
#[doc(alias = "AXChartContentDirectionBottomToTop")]
pub const ContentDirectionBottomToTop: Self = Self(3);
#[doc(alias = "AXChartContentDirectionRadialClockwise")]
pub const ContentDirectionRadialClockwise: Self = Self(4);
#[doc(alias = "AXChartContentDirectionRadialCounterClockwise")]
pub const ContentDirectionRadialCounterClockwise: Self = Self(5);
}
unsafe impl Encode for AXChartDescriptorContentDirection {
const ENCODING: Encoding = NSInteger::ENCODING;
}
unsafe impl RefEncode for AXChartDescriptorContentDirection {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AXChartDescriptor;
);
extern_conformance!(
unsafe impl NSCopying for AXChartDescriptor {}
);
unsafe impl CopyingHelper for AXChartDescriptor {
type Result = Self;
}
extern_conformance!(
unsafe impl NSObjectProtocol for AXChartDescriptor {}
);
impl AXChartDescriptor {
extern_methods!(
#[unsafe(method(title))]
#[unsafe(method_family = none)]
pub unsafe fn title(&self) -> Option<Retained<NSString>>;
#[unsafe(method(setTitle:))]
#[unsafe(method_family = none)]
pub unsafe fn setTitle(&self, title: Option<&NSString>);
#[unsafe(method(attributedTitle))]
#[unsafe(method_family = none)]
pub unsafe fn attributedTitle(&self) -> Option<Retained<NSAttributedString>>;
#[unsafe(method(setAttributedTitle:))]
#[unsafe(method_family = none)]
pub unsafe fn setAttributedTitle(&self, attributed_title: Option<&NSAttributedString>);
#[unsafe(method(summary))]
#[unsafe(method_family = none)]
pub unsafe fn summary(&self) -> Option<Retained<NSString>>;
#[unsafe(method(setSummary:))]
#[unsafe(method_family = none)]
pub unsafe fn setSummary(&self, summary: Option<&NSString>);
#[unsafe(method(contentDirection))]
#[unsafe(method_family = none)]
pub unsafe fn contentDirection(&self) -> AXChartDescriptorContentDirection;
#[unsafe(method(setContentDirection:))]
#[unsafe(method_family = none)]
pub unsafe fn setContentDirection(
&self,
content_direction: AXChartDescriptorContentDirection,
);
#[cfg(feature = "objc2-core-foundation")]
#[unsafe(method(contentFrame))]
#[unsafe(method_family = none)]
pub unsafe fn contentFrame(&self) -> CGRect;
#[cfg(feature = "objc2-core-foundation")]
#[unsafe(method(setContentFrame:))]
#[unsafe(method_family = none)]
pub unsafe fn setContentFrame(&self, content_frame: CGRect);
#[unsafe(method(series))]
#[unsafe(method_family = none)]
pub unsafe fn series(&self) -> Retained<NSArray<AXDataSeriesDescriptor>>;
#[unsafe(method(setSeries:))]
#[unsafe(method_family = none)]
pub unsafe fn setSeries(&self, series: &NSArray<AXDataSeriesDescriptor>);
#[unsafe(method(xAxis))]
#[unsafe(method_family = none)]
pub unsafe fn xAxis(&self) -> Retained<ProtocolObject<dyn AXDataAxisDescriptor>>;
#[unsafe(method(setXAxis:))]
#[unsafe(method_family = none)]
pub unsafe fn setXAxis(&self, x_axis: &ProtocolObject<dyn AXDataAxisDescriptor>);
#[unsafe(method(yAxis))]
#[unsafe(method_family = none)]
pub unsafe fn yAxis(&self) -> Option<Retained<AXNumericDataAxisDescriptor>>;
#[unsafe(method(setYAxis:))]
#[unsafe(method_family = none)]
pub unsafe fn setYAxis(&self, y_axis: Option<&AXNumericDataAxisDescriptor>);
#[unsafe(method(additionalAxes))]
#[unsafe(method_family = none)]
pub unsafe fn additionalAxes(
&self,
) -> Option<Retained<NSArray<ProtocolObject<dyn AXDataAxisDescriptor>>>>;
#[unsafe(method(setAdditionalAxes:))]
#[unsafe(method_family = none)]
pub unsafe fn setAdditionalAxes(
&self,
additional_axes: Option<&NSArray<ProtocolObject<dyn AXDataAxisDescriptor>>>,
);
#[unsafe(method(initWithTitle:summary:xAxisDescriptor:yAxisDescriptor:series:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithTitle_summary_xAxisDescriptor_yAxisDescriptor_series(
this: Allocated<Self>,
title: Option<&NSString>,
summary: Option<&NSString>,
x_axis: &ProtocolObject<dyn AXDataAxisDescriptor>,
y_axis: Option<&AXNumericDataAxisDescriptor>,
series: &NSArray<AXDataSeriesDescriptor>,
) -> Retained<Self>;
#[unsafe(method(initWithAttributedTitle:summary:xAxisDescriptor:yAxisDescriptor:series:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithAttributedTitle_summary_xAxisDescriptor_yAxisDescriptor_series(
this: Allocated<Self>,
attributed_title: Option<&NSAttributedString>,
summary: Option<&NSString>,
x_axis: &ProtocolObject<dyn AXDataAxisDescriptor>,
y_axis: &AXNumericDataAxisDescriptor,
series: &NSArray<AXDataSeriesDescriptor>,
) -> Retained<Self>;
#[unsafe(method(initWithTitle:summary:xAxisDescriptor:yAxisDescriptor:additionalAxes:series:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithTitle_summary_xAxisDescriptor_yAxisDescriptor_additionalAxes_series(
this: Allocated<Self>,
title: Option<&NSString>,
summary: Option<&NSString>,
x_axis: &ProtocolObject<dyn AXDataAxisDescriptor>,
y_axis: Option<&AXNumericDataAxisDescriptor>,
additional_axes: Option<&NSArray<ProtocolObject<dyn AXDataAxisDescriptor>>>,
series: &NSArray<AXDataSeriesDescriptor>,
) -> Retained<Self>;
#[unsafe(method(initWithAttributedTitle:summary:xAxisDescriptor:yAxisDescriptor:additionalAxes:series:))]
#[unsafe(method_family = init)]
pub unsafe fn initWithAttributedTitle_summary_xAxisDescriptor_yAxisDescriptor_additionalAxes_series(
this: Allocated<Self>,
attributed_title: Option<&NSAttributedString>,
summary: Option<&NSString>,
x_axis: &ProtocolObject<dyn AXDataAxisDescriptor>,
y_axis: Option<&AXNumericDataAxisDescriptor>,
additional_axes: Option<&NSArray<ProtocolObject<dyn AXDataAxisDescriptor>>>,
series: &NSArray<AXDataSeriesDescriptor>,
) -> Retained<Self>;
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}
extern_class!(
#[unsafe(super(NSObject))]
#[derive(Debug, PartialEq, Eq, Hash)]
pub struct AXLiveAudioGraph;
);
extern_conformance!(
unsafe impl NSObjectProtocol for AXLiveAudioGraph {}
);
impl AXLiveAudioGraph {
extern_methods!(
#[unsafe(method(start))]
#[unsafe(method_family = none)]
pub unsafe fn start();
#[unsafe(method(updateValue:))]
#[unsafe(method_family = none)]
pub unsafe fn updateValue(value: c_double);
#[unsafe(method(stop))]
#[unsafe(method_family = none)]
pub unsafe fn stop();
);
}
impl AXLiveAudioGraph {
extern_methods!(
#[unsafe(method(init))]
#[unsafe(method_family = init)]
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>;
#[unsafe(method(new))]
#[unsafe(method_family = new)]
pub unsafe fn new() -> Retained<Self>;
);
}