1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[repr(transparent)]
3 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4 pub struct AddDeleteThemeTransition(::windows::runtime::IInspectable);
5 impl AddDeleteThemeTransition {
6     pub fn new() -> ::windows::runtime::Result<Self> {
7         Self::IActivationFactory(|f| f.activate_instance::<Self>())
8     }
9     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
10         static mut SHARED: ::windows::runtime::FactoryCache<AddDeleteThemeTransition, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
11         unsafe { SHARED.call(callback) }
12     }
13     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15         unsafe {
16             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18         }
19     }
20     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
21         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
22         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
23     }
24     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
25         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
26         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
27     }
28     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
29         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
30         unsafe {
31             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
32             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
33         }
34     }
35     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
36         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
37         unsafe {
38             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
39             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
40         }
41     }
42     #[cfg(feature = "UI_Core")]
43     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
44         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
45         unsafe {
46             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
47             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
48         }
49     }
50     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
51         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
52         unsafe {
53             let mut result__: i64 = ::std::mem::zeroed();
54             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
55         }
56     }
57     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
58         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
59         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
60     }
61 }
62 unsafe impl ::windows::runtime::RuntimeType for AddDeleteThemeTransition {
63     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.AddDeleteThemeTransition;{adec852e-4424-4dab-99c1-3a04e36a3c48})");
64 }
65 unsafe impl ::windows::runtime::Interface for AddDeleteThemeTransition {
66     type Vtable = IAddDeleteThemeTransition_abi;
67     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2917958958, 17444, 19883, [153, 193, 58, 4, 227, 106, 60, 72]);
68 }
69 impl ::windows::runtime::RuntimeName for AddDeleteThemeTransition {
70     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.AddDeleteThemeTransition";
71 }
72 impl ::std::convert::From<AddDeleteThemeTransition> for ::windows::runtime::IUnknown {
73     fn from(value: AddDeleteThemeTransition) -> Self {
74         unsafe { ::std::mem::transmute(value) }
75     }
76 }
77 impl ::std::convert::From<&AddDeleteThemeTransition> for ::windows::runtime::IUnknown {
78     fn from(value: &AddDeleteThemeTransition) -> Self {
79         ::std::convert::From::from(::std::clone::Clone::clone(value))
80     }
81 }
82 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for AddDeleteThemeTransition {
83     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
84         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
85     }
86 }
87 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &AddDeleteThemeTransition {
88     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
89         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
90     }
91 }
92 impl ::std::convert::From<AddDeleteThemeTransition> for ::windows::runtime::IInspectable {
93     fn from(value: AddDeleteThemeTransition) -> Self {
94         value.0
95     }
96 }
97 impl ::std::convert::From<&AddDeleteThemeTransition> for ::windows::runtime::IInspectable {
98     fn from(value: &AddDeleteThemeTransition) -> Self {
99         value.0.clone()
100     }
101 }
102 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for AddDeleteThemeTransition {
103     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
104         ::windows::runtime::Param::Owned(self.0)
105     }
106 }
107 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a AddDeleteThemeTransition {
108     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
109         ::windows::runtime::Param::Borrowed(&self.0)
110     }
111 }
112 impl ::std::convert::From<AddDeleteThemeTransition> for Transition {
113     fn from(value: AddDeleteThemeTransition) -> Self {
114         ::std::convert::Into::<Transition>::into(&value)
115     }
116 }
117 impl ::std::convert::From<&AddDeleteThemeTransition> for Transition {
118     fn from(value: &AddDeleteThemeTransition) -> Self {
119         ::windows::runtime::Interface::cast(value).unwrap()
120     }
121 }
122 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for AddDeleteThemeTransition {
123     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
124         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(self))
125     }
126 }
127 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for &AddDeleteThemeTransition {
128     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
129         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(::std::clone::Clone::clone(self)))
130     }
131 }
132 impl ::std::convert::From<AddDeleteThemeTransition> for super::super::DependencyObject {
133     fn from(value: AddDeleteThemeTransition) -> Self {
134         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
135     }
136 }
137 impl ::std::convert::From<&AddDeleteThemeTransition> for super::super::DependencyObject {
138     fn from(value: &AddDeleteThemeTransition) -> Self {
139         ::windows::runtime::Interface::cast(value).unwrap()
140     }
141 }
142 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for AddDeleteThemeTransition {
143     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
144         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
145     }
146 }
147 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &AddDeleteThemeTransition {
148     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
149         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
150     }
151 }
152 unsafe impl ::std::marker::Send for AddDeleteThemeTransition {}
153 unsafe impl ::std::marker::Sync for AddDeleteThemeTransition {}
154 #[repr(transparent)]
155 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
156 pub struct BackEase(::windows::runtime::IInspectable);
157 impl BackEase {
158     pub fn new() -> ::windows::runtime::Result<Self> {
159         Self::IActivationFactory(|f| f.activate_instance::<Self>())
160     }
161     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
162         static mut SHARED: ::windows::runtime::FactoryCache<BackEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
163         unsafe { SHARED.call(callback) }
164     }
165     pub fn Amplitude(&self) -> ::windows::runtime::Result<f64> {
166         let this = self;
167         unsafe {
168             let mut result__: f64 = ::std::mem::zeroed();
169             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
170         }
171     }
172     pub fn SetAmplitude(&self, value: f64) -> ::windows::runtime::Result<()> {
173         let this = self;
174         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
175     }
176     pub fn AmplitudeProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
177         Self::IBackEaseStatics(|this| unsafe {
178             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
179             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
180         })
181     }
182     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
183         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
184         unsafe {
185             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
186             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
187         }
188     }
189     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
190         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
191         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
192     }
193     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
194         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
195         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
196     }
197     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
198         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
199         unsafe {
200             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
201             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
202         }
203     }
204     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
205         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
206         unsafe {
207             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
208             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
209         }
210     }
211     #[cfg(feature = "UI_Core")]
212     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
213         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
214         unsafe {
215             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
216             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
217         }
218     }
219     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
220         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
221         unsafe {
222             let mut result__: i64 = ::std::mem::zeroed();
223             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
224         }
225     }
226     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
227         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
228         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
229     }
230     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
231         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
232         unsafe {
233             let mut result__: EasingMode = ::std::mem::zeroed();
234             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
235         }
236     }
237     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
238         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
239         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
240     }
241     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
242         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
243         unsafe {
244             let mut result__: f64 = ::std::mem::zeroed();
245             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
246         }
247     }
248     pub fn IBackEaseStatics<R, F: FnOnce(&IBackEaseStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
249         static mut SHARED: ::windows::runtime::FactoryCache<BackEase, IBackEaseStatics> = ::windows::runtime::FactoryCache::new();
250         unsafe { SHARED.call(callback) }
251     }
252 }
253 unsafe impl ::windows::runtime::RuntimeType for BackEase {
254     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.BackEase;{e47796e7-f805-4a8f-81c9-38e6472caa94})");
255 }
256 unsafe impl ::windows::runtime::Interface for BackEase {
257     type Vtable = IBackEase_abi;
258     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3833042663, 63493, 19087, [129, 201, 56, 230, 71, 44, 170, 148]);
259 }
260 impl ::windows::runtime::RuntimeName for BackEase {
261     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.BackEase";
262 }
263 impl ::std::convert::From<BackEase> for ::windows::runtime::IUnknown {
264     fn from(value: BackEase) -> Self {
265         unsafe { ::std::mem::transmute(value) }
266     }
267 }
268 impl ::std::convert::From<&BackEase> for ::windows::runtime::IUnknown {
269     fn from(value: &BackEase) -> Self {
270         ::std::convert::From::from(::std::clone::Clone::clone(value))
271     }
272 }
273 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BackEase {
274     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
275         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
276     }
277 }
278 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BackEase {
279     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
280         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
281     }
282 }
283 impl ::std::convert::From<BackEase> for ::windows::runtime::IInspectable {
284     fn from(value: BackEase) -> Self {
285         value.0
286     }
287 }
288 impl ::std::convert::From<&BackEase> for ::windows::runtime::IInspectable {
289     fn from(value: &BackEase) -> Self {
290         value.0.clone()
291     }
292 }
293 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BackEase {
294     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
295         ::windows::runtime::Param::Owned(self.0)
296     }
297 }
298 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BackEase {
299     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
300         ::windows::runtime::Param::Borrowed(&self.0)
301     }
302 }
303 impl ::std::convert::From<BackEase> for EasingFunctionBase {
304     fn from(value: BackEase) -> Self {
305         ::std::convert::Into::<EasingFunctionBase>::into(&value)
306     }
307 }
308 impl ::std::convert::From<&BackEase> for EasingFunctionBase {
309     fn from(value: &BackEase) -> Self {
310         ::windows::runtime::Interface::cast(value).unwrap()
311     }
312 }
313 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for BackEase {
314     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
315         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
316     }
317 }
318 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &BackEase {
319     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
320         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
321     }
322 }
323 impl ::std::convert::From<BackEase> for super::super::DependencyObject {
324     fn from(value: BackEase) -> Self {
325         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
326     }
327 }
328 impl ::std::convert::From<&BackEase> for super::super::DependencyObject {
329     fn from(value: &BackEase) -> Self {
330         ::windows::runtime::Interface::cast(value).unwrap()
331     }
332 }
333 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for BackEase {
334     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
335         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
336     }
337 }
338 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &BackEase {
339     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
340         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
341     }
342 }
343 unsafe impl ::std::marker::Send for BackEase {}
344 unsafe impl ::std::marker::Sync for BackEase {}
345 #[repr(transparent)]
346 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
347 pub struct BasicConnectedAnimationConfiguration(::windows::runtime::IInspectable);
348 impl BasicConnectedAnimationConfiguration {
349     pub fn new() -> ::windows::runtime::Result<BasicConnectedAnimationConfiguration> {
350         Self::IBasicConnectedAnimationConfigurationFactory(|this| unsafe {
351             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
352             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), ::std::ptr::null_mut(), &mut ::std::option::Option::<::windows::runtime::IInspectable>::None as *mut _ as _, &mut result__).from_abi::<BasicConnectedAnimationConfiguration>(result__)
353         })
354     }
355     pub fn IBasicConnectedAnimationConfigurationFactory<R, F: FnOnce(&IBasicConnectedAnimationConfigurationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
356         static mut SHARED: ::windows::runtime::FactoryCache<BasicConnectedAnimationConfiguration, IBasicConnectedAnimationConfigurationFactory> = ::windows::runtime::FactoryCache::new();
357         unsafe { SHARED.call(callback) }
358     }
359 }
360 unsafe impl ::windows::runtime::RuntimeType for BasicConnectedAnimationConfiguration {
361     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.BasicConnectedAnimationConfiguration;{e675f9b5-a4d6-5353-83e6-c89e7cf8d456})");
362 }
363 unsafe impl ::windows::runtime::Interface for BasicConnectedAnimationConfiguration {
364     type Vtable = IBasicConnectedAnimationConfiguration_abi;
365     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3866491317, 42198, 21331, [131, 230, 200, 158, 124, 248, 212, 86]);
366 }
367 impl ::windows::runtime::RuntimeName for BasicConnectedAnimationConfiguration {
368     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.BasicConnectedAnimationConfiguration";
369 }
370 impl ::std::convert::From<BasicConnectedAnimationConfiguration> for ::windows::runtime::IUnknown {
371     fn from(value: BasicConnectedAnimationConfiguration) -> Self {
372         unsafe { ::std::mem::transmute(value) }
373     }
374 }
375 impl ::std::convert::From<&BasicConnectedAnimationConfiguration> for ::windows::runtime::IUnknown {
376     fn from(value: &BasicConnectedAnimationConfiguration) -> Self {
377         ::std::convert::From::from(::std::clone::Clone::clone(value))
378     }
379 }
380 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BasicConnectedAnimationConfiguration {
381     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
382         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
383     }
384 }
385 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BasicConnectedAnimationConfiguration {
386     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
387         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
388     }
389 }
390 impl ::std::convert::From<BasicConnectedAnimationConfiguration> for ::windows::runtime::IInspectable {
391     fn from(value: BasicConnectedAnimationConfiguration) -> Self {
392         value.0
393     }
394 }
395 impl ::std::convert::From<&BasicConnectedAnimationConfiguration> for ::windows::runtime::IInspectable {
396     fn from(value: &BasicConnectedAnimationConfiguration) -> Self {
397         value.0.clone()
398     }
399 }
400 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BasicConnectedAnimationConfiguration {
401     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
402         ::windows::runtime::Param::Owned(self.0)
403     }
404 }
405 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BasicConnectedAnimationConfiguration {
406     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
407         ::windows::runtime::Param::Borrowed(&self.0)
408     }
409 }
410 impl ::std::convert::From<BasicConnectedAnimationConfiguration> for ConnectedAnimationConfiguration {
411     fn from(value: BasicConnectedAnimationConfiguration) -> Self {
412         ::std::convert::Into::<ConnectedAnimationConfiguration>::into(&value)
413     }
414 }
415 impl ::std::convert::From<&BasicConnectedAnimationConfiguration> for ConnectedAnimationConfiguration {
416     fn from(value: &BasicConnectedAnimationConfiguration) -> Self {
417         ::windows::runtime::Interface::cast(value).unwrap()
418     }
419 }
420 impl<'a> ::windows::runtime::IntoParam<'a, ConnectedAnimationConfiguration> for BasicConnectedAnimationConfiguration {
421     fn into_param(self) -> ::windows::runtime::Param<'a, ConnectedAnimationConfiguration> {
422         ::windows::runtime::Param::Owned(::std::convert::Into::<ConnectedAnimationConfiguration>::into(self))
423     }
424 }
425 impl<'a> ::windows::runtime::IntoParam<'a, ConnectedAnimationConfiguration> for &BasicConnectedAnimationConfiguration {
426     fn into_param(self) -> ::windows::runtime::Param<'a, ConnectedAnimationConfiguration> {
427         ::windows::runtime::Param::Owned(::std::convert::Into::<ConnectedAnimationConfiguration>::into(::std::clone::Clone::clone(self)))
428     }
429 }
430 unsafe impl ::std::marker::Send for BasicConnectedAnimationConfiguration {}
431 unsafe impl ::std::marker::Sync for BasicConnectedAnimationConfiguration {}
432 #[repr(transparent)]
433 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
434 pub struct BeginStoryboard(::windows::runtime::IInspectable);
435 impl BeginStoryboard {
436     pub fn new() -> ::windows::runtime::Result<Self> {
437         Self::IActivationFactory(|f| f.activate_instance::<Self>())
438     }
439     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
440         static mut SHARED: ::windows::runtime::FactoryCache<BeginStoryboard, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
441         unsafe { SHARED.call(callback) }
442     }
443     pub fn Storyboard(&self) -> ::windows::runtime::Result<Storyboard> {
444         let this = self;
445         unsafe {
446             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
447             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<Storyboard>(result__)
448         }
449     }
450     pub fn SetStoryboard<'a, Param0: ::windows::runtime::IntoParam<'a, Storyboard>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
451         let this = self;
452         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
453     }
454     pub fn StoryboardProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
455         Self::IBeginStoryboardStatics(|this| unsafe {
456             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
457             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
458         })
459     }
460     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
461         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
462         unsafe {
463             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
464             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
465         }
466     }
467     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
468         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
469         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
470     }
471     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
472         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
473         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
474     }
475     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
476         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
477         unsafe {
478             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
479             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
480         }
481     }
482     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
483         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
484         unsafe {
485             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
486             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
487         }
488     }
489     #[cfg(feature = "UI_Core")]
490     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
491         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
492         unsafe {
493             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
494             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
495         }
496     }
497     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
498         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
499         unsafe {
500             let mut result__: i64 = ::std::mem::zeroed();
501             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
502         }
503     }
504     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
505         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
506         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
507     }
508     pub fn IBeginStoryboardStatics<R, F: FnOnce(&IBeginStoryboardStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
509         static mut SHARED: ::windows::runtime::FactoryCache<BeginStoryboard, IBeginStoryboardStatics> = ::windows::runtime::FactoryCache::new();
510         unsafe { SHARED.call(callback) }
511     }
512 }
513 unsafe impl ::windows::runtime::RuntimeType for BeginStoryboard {
514     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.BeginStoryboard;{64189fcd-49ec-4e52-a6f6-55324c921053})");
515 }
516 unsafe impl ::windows::runtime::Interface for BeginStoryboard {
517     type Vtable = IBeginStoryboard_abi;
518     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1679335373, 18924, 20050, [166, 246, 85, 50, 76, 146, 16, 83]);
519 }
520 impl ::windows::runtime::RuntimeName for BeginStoryboard {
521     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.BeginStoryboard";
522 }
523 impl ::std::convert::From<BeginStoryboard> for ::windows::runtime::IUnknown {
524     fn from(value: BeginStoryboard) -> Self {
525         unsafe { ::std::mem::transmute(value) }
526     }
527 }
528 impl ::std::convert::From<&BeginStoryboard> for ::windows::runtime::IUnknown {
529     fn from(value: &BeginStoryboard) -> Self {
530         ::std::convert::From::from(::std::clone::Clone::clone(value))
531     }
532 }
533 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BeginStoryboard {
534     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
535         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
536     }
537 }
538 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BeginStoryboard {
539     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
540         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
541     }
542 }
543 impl ::std::convert::From<BeginStoryboard> for ::windows::runtime::IInspectable {
544     fn from(value: BeginStoryboard) -> Self {
545         value.0
546     }
547 }
548 impl ::std::convert::From<&BeginStoryboard> for ::windows::runtime::IInspectable {
549     fn from(value: &BeginStoryboard) -> Self {
550         value.0.clone()
551     }
552 }
553 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BeginStoryboard {
554     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
555         ::windows::runtime::Param::Owned(self.0)
556     }
557 }
558 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BeginStoryboard {
559     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
560         ::windows::runtime::Param::Borrowed(&self.0)
561     }
562 }
563 impl ::std::convert::From<BeginStoryboard> for super::super::TriggerAction {
564     fn from(value: BeginStoryboard) -> Self {
565         ::std::convert::Into::<super::super::TriggerAction>::into(&value)
566     }
567 }
568 impl ::std::convert::From<&BeginStoryboard> for super::super::TriggerAction {
569     fn from(value: &BeginStoryboard) -> Self {
570         ::windows::runtime::Interface::cast(value).unwrap()
571     }
572 }
573 impl<'a> ::windows::runtime::IntoParam<'a, super::super::TriggerAction> for BeginStoryboard {
574     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::TriggerAction> {
575         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::TriggerAction>::into(self))
576     }
577 }
578 impl<'a> ::windows::runtime::IntoParam<'a, super::super::TriggerAction> for &BeginStoryboard {
579     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::TriggerAction> {
580         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::TriggerAction>::into(::std::clone::Clone::clone(self)))
581     }
582 }
583 impl ::std::convert::From<BeginStoryboard> for super::super::DependencyObject {
584     fn from(value: BeginStoryboard) -> Self {
585         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
586     }
587 }
588 impl ::std::convert::From<&BeginStoryboard> for super::super::DependencyObject {
589     fn from(value: &BeginStoryboard) -> Self {
590         ::windows::runtime::Interface::cast(value).unwrap()
591     }
592 }
593 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for BeginStoryboard {
594     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
595         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
596     }
597 }
598 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &BeginStoryboard {
599     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
600         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
601     }
602 }
603 unsafe impl ::std::marker::Send for BeginStoryboard {}
604 unsafe impl ::std::marker::Sync for BeginStoryboard {}
605 #[repr(transparent)]
606 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
607 pub struct BounceEase(::windows::runtime::IInspectable);
608 impl BounceEase {
609     pub fn new() -> ::windows::runtime::Result<Self> {
610         Self::IActivationFactory(|f| f.activate_instance::<Self>())
611     }
612     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
613         static mut SHARED: ::windows::runtime::FactoryCache<BounceEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
614         unsafe { SHARED.call(callback) }
615     }
616     pub fn Bounces(&self) -> ::windows::runtime::Result<i32> {
617         let this = self;
618         unsafe {
619             let mut result__: i32 = ::std::mem::zeroed();
620             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<i32>(result__)
621         }
622     }
623     pub fn SetBounces(&self, value: i32) -> ::windows::runtime::Result<()> {
624         let this = self;
625         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
626     }
627     pub fn Bounciness(&self) -> ::windows::runtime::Result<f64> {
628         let this = self;
629         unsafe {
630             let mut result__: f64 = ::std::mem::zeroed();
631             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
632         }
633     }
634     pub fn SetBounciness(&self, value: f64) -> ::windows::runtime::Result<()> {
635         let this = self;
636         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
637     }
638     pub fn BouncesProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
639         Self::IBounceEaseStatics(|this| unsafe {
640             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
641             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
642         })
643     }
644     pub fn BouncinessProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
645         Self::IBounceEaseStatics(|this| unsafe {
646             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
647             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
648         })
649     }
650     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
651         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
652         unsafe {
653             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
654             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
655         }
656     }
657     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
658         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
659         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
660     }
661     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
662         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
663         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
664     }
665     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
666         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
667         unsafe {
668             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
669             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
670         }
671     }
672     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
673         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
674         unsafe {
675             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
676             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
677         }
678     }
679     #[cfg(feature = "UI_Core")]
680     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
681         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
682         unsafe {
683             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
684             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
685         }
686     }
687     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
688         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
689         unsafe {
690             let mut result__: i64 = ::std::mem::zeroed();
691             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
692         }
693     }
694     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
695         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
696         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
697     }
698     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
699         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
700         unsafe {
701             let mut result__: EasingMode = ::std::mem::zeroed();
702             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
703         }
704     }
705     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
706         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
707         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
708     }
709     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
710         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
711         unsafe {
712             let mut result__: f64 = ::std::mem::zeroed();
713             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
714         }
715     }
716     pub fn IBounceEaseStatics<R, F: FnOnce(&IBounceEaseStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
717         static mut SHARED: ::windows::runtime::FactoryCache<BounceEase, IBounceEaseStatics> = ::windows::runtime::FactoryCache::new();
718         unsafe { SHARED.call(callback) }
719     }
720 }
721 unsafe impl ::windows::runtime::RuntimeType for BounceEase {
722     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.BounceEase;{2bf1464e-fc71-47ed-85a1-3ba9577718b4})");
723 }
724 unsafe impl ::windows::runtime::Interface for BounceEase {
725     type Vtable = IBounceEase_abi;
726     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(737232462, 64625, 18413, [133, 161, 59, 169, 87, 119, 24, 180]);
727 }
728 impl ::windows::runtime::RuntimeName for BounceEase {
729     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.BounceEase";
730 }
731 impl ::std::convert::From<BounceEase> for ::windows::runtime::IUnknown {
732     fn from(value: BounceEase) -> Self {
733         unsafe { ::std::mem::transmute(value) }
734     }
735 }
736 impl ::std::convert::From<&BounceEase> for ::windows::runtime::IUnknown {
737     fn from(value: &BounceEase) -> Self {
738         ::std::convert::From::from(::std::clone::Clone::clone(value))
739     }
740 }
741 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for BounceEase {
742     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
743         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
744     }
745 }
746 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &BounceEase {
747     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
748         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
749     }
750 }
751 impl ::std::convert::From<BounceEase> for ::windows::runtime::IInspectable {
752     fn from(value: BounceEase) -> Self {
753         value.0
754     }
755 }
756 impl ::std::convert::From<&BounceEase> for ::windows::runtime::IInspectable {
757     fn from(value: &BounceEase) -> Self {
758         value.0.clone()
759     }
760 }
761 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for BounceEase {
762     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
763         ::windows::runtime::Param::Owned(self.0)
764     }
765 }
766 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a BounceEase {
767     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
768         ::windows::runtime::Param::Borrowed(&self.0)
769     }
770 }
771 impl ::std::convert::From<BounceEase> for EasingFunctionBase {
772     fn from(value: BounceEase) -> Self {
773         ::std::convert::Into::<EasingFunctionBase>::into(&value)
774     }
775 }
776 impl ::std::convert::From<&BounceEase> for EasingFunctionBase {
777     fn from(value: &BounceEase) -> Self {
778         ::windows::runtime::Interface::cast(value).unwrap()
779     }
780 }
781 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for BounceEase {
782     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
783         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
784     }
785 }
786 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &BounceEase {
787     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
788         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
789     }
790 }
791 impl ::std::convert::From<BounceEase> for super::super::DependencyObject {
792     fn from(value: BounceEase) -> Self {
793         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
794     }
795 }
796 impl ::std::convert::From<&BounceEase> for super::super::DependencyObject {
797     fn from(value: &BounceEase) -> Self {
798         ::windows::runtime::Interface::cast(value).unwrap()
799     }
800 }
801 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for BounceEase {
802     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
803         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
804     }
805 }
806 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &BounceEase {
807     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
808         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
809     }
810 }
811 unsafe impl ::std::marker::Send for BounceEase {}
812 unsafe impl ::std::marker::Sync for BounceEase {}
813 #[repr(transparent)]
814 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
815 pub struct CircleEase(::windows::runtime::IInspectable);
816 impl CircleEase {
817     pub fn new() -> ::windows::runtime::Result<Self> {
818         Self::IActivationFactory(|f| f.activate_instance::<Self>())
819     }
820     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
821         static mut SHARED: ::windows::runtime::FactoryCache<CircleEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
822         unsafe { SHARED.call(callback) }
823     }
824     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
825         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
826         unsafe {
827             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
828             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
829         }
830     }
831     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
832         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
833         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
834     }
835     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
836         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
837         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
838     }
839     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
840         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
841         unsafe {
842             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
843             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
844         }
845     }
846     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
847         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
848         unsafe {
849             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
850             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
851         }
852     }
853     #[cfg(feature = "UI_Core")]
854     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
855         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
856         unsafe {
857             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
858             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
859         }
860     }
861     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
862         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
863         unsafe {
864             let mut result__: i64 = ::std::mem::zeroed();
865             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
866         }
867     }
868     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
869         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
870         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
871     }
872     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
873         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
874         unsafe {
875             let mut result__: EasingMode = ::std::mem::zeroed();
876             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
877         }
878     }
879     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
880         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
881         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
882     }
883     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
884         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
885         unsafe {
886             let mut result__: f64 = ::std::mem::zeroed();
887             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
888         }
889     }
890 }
891 unsafe impl ::windows::runtime::RuntimeType for CircleEase {
892     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.CircleEase;{53a3bdb2-9177-4e6e-a043-5082d889ab1f})");
893 }
894 unsafe impl ::windows::runtime::Interface for CircleEase {
895     type Vtable = ICircleEase_abi;
896     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1403239858, 37239, 20078, [160, 67, 80, 130, 216, 137, 171, 31]);
897 }
898 impl ::windows::runtime::RuntimeName for CircleEase {
899     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.CircleEase";
900 }
901 impl ::std::convert::From<CircleEase> for ::windows::runtime::IUnknown {
902     fn from(value: CircleEase) -> Self {
903         unsafe { ::std::mem::transmute(value) }
904     }
905 }
906 impl ::std::convert::From<&CircleEase> for ::windows::runtime::IUnknown {
907     fn from(value: &CircleEase) -> Self {
908         ::std::convert::From::from(::std::clone::Clone::clone(value))
909     }
910 }
911 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CircleEase {
912     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
913         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
914     }
915 }
916 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CircleEase {
917     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
918         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
919     }
920 }
921 impl ::std::convert::From<CircleEase> for ::windows::runtime::IInspectable {
922     fn from(value: CircleEase) -> Self {
923         value.0
924     }
925 }
926 impl ::std::convert::From<&CircleEase> for ::windows::runtime::IInspectable {
927     fn from(value: &CircleEase) -> Self {
928         value.0.clone()
929     }
930 }
931 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CircleEase {
932     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
933         ::windows::runtime::Param::Owned(self.0)
934     }
935 }
936 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CircleEase {
937     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
938         ::windows::runtime::Param::Borrowed(&self.0)
939     }
940 }
941 impl ::std::convert::From<CircleEase> for EasingFunctionBase {
942     fn from(value: CircleEase) -> Self {
943         ::std::convert::Into::<EasingFunctionBase>::into(&value)
944     }
945 }
946 impl ::std::convert::From<&CircleEase> for EasingFunctionBase {
947     fn from(value: &CircleEase) -> Self {
948         ::windows::runtime::Interface::cast(value).unwrap()
949     }
950 }
951 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for CircleEase {
952     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
953         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
954     }
955 }
956 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &CircleEase {
957     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
958         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
959     }
960 }
961 impl ::std::convert::From<CircleEase> for super::super::DependencyObject {
962     fn from(value: CircleEase) -> Self {
963         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
964     }
965 }
966 impl ::std::convert::From<&CircleEase> for super::super::DependencyObject {
967     fn from(value: &CircleEase) -> Self {
968         ::windows::runtime::Interface::cast(value).unwrap()
969     }
970 }
971 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for CircleEase {
972     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
973         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
974     }
975 }
976 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &CircleEase {
977     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
978         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
979     }
980 }
981 unsafe impl ::std::marker::Send for CircleEase {}
982 unsafe impl ::std::marker::Sync for CircleEase {}
983 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
984 #[repr(transparent)]
985 pub struct ClockState(pub i32);
986 impl ClockState {
987     pub const Active: ClockState = ClockState(0i32);
988     pub const Filling: ClockState = ClockState(1i32);
989     pub const Stopped: ClockState = ClockState(2i32);
990 }
991 impl ::std::convert::From<i32> for ClockState {
992     fn from(value: i32) -> Self {
993         Self(value)
994     }
995 }
996 unsafe impl ::windows::runtime::Abi for ClockState {
997     type Abi = Self;
998     type DefaultType = Self;
999 }
1000 unsafe impl ::windows::runtime::RuntimeType for ClockState {
1001     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.UI.Xaml.Media.Animation.ClockState;i4)");
1002 }
1003 #[repr(transparent)]
1004 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1005 pub struct ColorAnimation(::windows::runtime::IInspectable);
1006 impl ColorAnimation {
1007     pub fn new() -> ::windows::runtime::Result<Self> {
1008         Self::IActivationFactory(|f| f.activate_instance::<Self>())
1009     }
1010     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1011         static mut SHARED: ::windows::runtime::FactoryCache<ColorAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
1012         unsafe { SHARED.call(callback) }
1013     }
1014     #[cfg(feature = "Foundation")]
1015     pub fn From(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::Color>> {
1016         let this = self;
1017         unsafe {
1018             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1019             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::Color>>(result__)
1020         }
1021     }
1022     #[cfg(feature = "Foundation")]
1023     pub fn SetFrom<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::Color>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1024         let this = self;
1025         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1026     }
1027     #[cfg(feature = "Foundation")]
1028     pub fn To(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::Color>> {
1029         let this = self;
1030         unsafe {
1031             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1032             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::Color>>(result__)
1033         }
1034     }
1035     #[cfg(feature = "Foundation")]
1036     pub fn SetTo<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::Color>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1037         let this = self;
1038         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1039     }
1040     #[cfg(feature = "Foundation")]
1041     pub fn By(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::Color>> {
1042         let this = self;
1043         unsafe {
1044             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1045             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::Color>>(result__)
1046         }
1047     }
1048     #[cfg(feature = "Foundation")]
1049     pub fn SetBy<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::Color>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1050         let this = self;
1051         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1052     }
1053     pub fn EasingFunction(&self) -> ::windows::runtime::Result<EasingFunctionBase> {
1054         let this = self;
1055         unsafe {
1056             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1057             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingFunctionBase>(result__)
1058         }
1059     }
1060     pub fn SetEasingFunction<'a, Param0: ::windows::runtime::IntoParam<'a, EasingFunctionBase>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1061         let this = self;
1062         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1063     }
1064     pub fn EnableDependentAnimation(&self) -> ::windows::runtime::Result<bool> {
1065         let this = self;
1066         unsafe {
1067             let mut result__: bool = ::std::mem::zeroed();
1068             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1069         }
1070     }
1071     pub fn SetEnableDependentAnimation(&self, value: bool) -> ::windows::runtime::Result<()> {
1072         let this = self;
1073         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
1074     }
1075     pub fn FromProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
1076         Self::IColorAnimationStatics(|this| unsafe {
1077             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1078             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
1079         })
1080     }
1081     pub fn ToProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
1082         Self::IColorAnimationStatics(|this| unsafe {
1083             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1084             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
1085         })
1086     }
1087     pub fn ByProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
1088         Self::IColorAnimationStatics(|this| unsafe {
1089             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1090             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
1091         })
1092     }
1093     pub fn EasingFunctionProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
1094         Self::IColorAnimationStatics(|this| unsafe {
1095             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1096             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
1097         })
1098     }
1099     pub fn EnableDependentAnimationProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
1100         Self::IColorAnimationStatics(|this| unsafe {
1101             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1102             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
1103         })
1104     }
1105     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
1106         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1107         unsafe {
1108             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1109             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
1110         }
1111     }
1112     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
1113         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1114         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
1115     }
1116     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
1117         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1118         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
1119     }
1120     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
1121         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1122         unsafe {
1123             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1124             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
1125         }
1126     }
1127     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
1128         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1129         unsafe {
1130             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1131             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
1132         }
1133     }
1134     #[cfg(feature = "UI_Core")]
1135     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
1136         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1137         unsafe {
1138             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1139             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
1140         }
1141     }
1142     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
1143         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
1144         unsafe {
1145             let mut result__: i64 = ::std::mem::zeroed();
1146             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
1147         }
1148     }
1149     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
1150         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
1151         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
1152     }
1153     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
1154         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1155         unsafe {
1156             let mut result__: bool = ::std::mem::zeroed();
1157             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1158         }
1159     }
1160     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
1161         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1162         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
1163     }
1164     #[cfg(feature = "Foundation")]
1165     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
1166         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1167         unsafe {
1168             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1169             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
1170         }
1171     }
1172     #[cfg(feature = "Foundation")]
1173     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1174         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1175         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1176     }
1177     #[cfg(feature = "Foundation")]
1178     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
1179         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1180         unsafe {
1181             let mut result__: super::super::Duration = ::std::mem::zeroed();
1182             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
1183         }
1184     }
1185     #[cfg(feature = "Foundation")]
1186     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1187         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1188         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1189     }
1190     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
1191         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1192         unsafe {
1193             let mut result__: f64 = ::std::mem::zeroed();
1194             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
1195         }
1196     }
1197     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
1198         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1199         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
1200     }
1201     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
1202         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1203         unsafe {
1204             let mut result__: FillBehavior = ::std::mem::zeroed();
1205             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
1206         }
1207     }
1208     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
1209         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1210         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
1211     }
1212     #[cfg(feature = "Foundation")]
1213     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
1214         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1215         unsafe {
1216             let mut result__: RepeatBehavior = ::std::mem::zeroed();
1217             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
1218         }
1219     }
1220     #[cfg(feature = "Foundation")]
1221     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1222         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1223         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1224     }
1225     #[cfg(feature = "Foundation")]
1226     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
1227         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1228         unsafe {
1229             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1230             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
1231         }
1232     }
1233     #[cfg(feature = "Foundation")]
1234     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
1235         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1236         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
1237     }
1238     pub fn IColorAnimationStatics<R, F: FnOnce(&IColorAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1239         static mut SHARED: ::windows::runtime::FactoryCache<ColorAnimation, IColorAnimationStatics> = ::windows::runtime::FactoryCache::new();
1240         unsafe { SHARED.call(callback) }
1241     }
1242 }
1243 unsafe impl ::windows::runtime::RuntimeType for ColorAnimation {
1244     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ColorAnimation;{b8ae8a15-0f63-4694-9467-bdafac1253ea})");
1245 }
1246 unsafe impl ::windows::runtime::Interface for ColorAnimation {
1247     type Vtable = IColorAnimation_abi;
1248     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3098446357, 3939, 18068, [148, 103, 189, 175, 172, 18, 83, 234]);
1249 }
1250 impl ::windows::runtime::RuntimeName for ColorAnimation {
1251     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ColorAnimation";
1252 }
1253 impl ::std::convert::From<ColorAnimation> for ::windows::runtime::IUnknown {
1254     fn from(value: ColorAnimation) -> Self {
1255         unsafe { ::std::mem::transmute(value) }
1256     }
1257 }
1258 impl ::std::convert::From<&ColorAnimation> for ::windows::runtime::IUnknown {
1259     fn from(value: &ColorAnimation) -> Self {
1260         ::std::convert::From::from(::std::clone::Clone::clone(value))
1261     }
1262 }
1263 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ColorAnimation {
1264     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1265         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1266     }
1267 }
1268 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ColorAnimation {
1269     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1270         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1271     }
1272 }
1273 impl ::std::convert::From<ColorAnimation> for ::windows::runtime::IInspectable {
1274     fn from(value: ColorAnimation) -> Self {
1275         value.0
1276     }
1277 }
1278 impl ::std::convert::From<&ColorAnimation> for ::windows::runtime::IInspectable {
1279     fn from(value: &ColorAnimation) -> Self {
1280         value.0.clone()
1281     }
1282 }
1283 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ColorAnimation {
1284     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1285         ::windows::runtime::Param::Owned(self.0)
1286     }
1287 }
1288 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ColorAnimation {
1289     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1290         ::windows::runtime::Param::Borrowed(&self.0)
1291     }
1292 }
1293 impl ::std::convert::From<ColorAnimation> for Timeline {
1294     fn from(value: ColorAnimation) -> Self {
1295         ::std::convert::Into::<Timeline>::into(&value)
1296     }
1297 }
1298 impl ::std::convert::From<&ColorAnimation> for Timeline {
1299     fn from(value: &ColorAnimation) -> Self {
1300         ::windows::runtime::Interface::cast(value).unwrap()
1301     }
1302 }
1303 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for ColorAnimation {
1304     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
1305         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
1306     }
1307 }
1308 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &ColorAnimation {
1309     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
1310         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
1311     }
1312 }
1313 impl ::std::convert::From<ColorAnimation> for super::super::DependencyObject {
1314     fn from(value: ColorAnimation) -> Self {
1315         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
1316     }
1317 }
1318 impl ::std::convert::From<&ColorAnimation> for super::super::DependencyObject {
1319     fn from(value: &ColorAnimation) -> Self {
1320         ::windows::runtime::Interface::cast(value).unwrap()
1321     }
1322 }
1323 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ColorAnimation {
1324     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
1325         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
1326     }
1327 }
1328 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ColorAnimation {
1329     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
1330         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
1331     }
1332 }
1333 unsafe impl ::std::marker::Send for ColorAnimation {}
1334 unsafe impl ::std::marker::Sync for ColorAnimation {}
1335 #[repr(transparent)]
1336 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1337 pub struct ColorAnimationUsingKeyFrames(::windows::runtime::IInspectable);
1338 impl ColorAnimationUsingKeyFrames {
1339     pub fn new() -> ::windows::runtime::Result<Self> {
1340         Self::IActivationFactory(|f| f.activate_instance::<Self>())
1341     }
1342     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1343         static mut SHARED: ::windows::runtime::FactoryCache<ColorAnimationUsingKeyFrames, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
1344         unsafe { SHARED.call(callback) }
1345     }
1346     #[cfg(feature = "Foundation_Collections")]
1347     pub fn KeyFrames(&self) -> ::windows::runtime::Result<ColorKeyFrameCollection> {
1348         let this = self;
1349         unsafe {
1350             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1351             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ColorKeyFrameCollection>(result__)
1352         }
1353     }
1354     pub fn EnableDependentAnimation(&self) -> ::windows::runtime::Result<bool> {
1355         let this = self;
1356         unsafe {
1357             let mut result__: bool = ::std::mem::zeroed();
1358             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1359         }
1360     }
1361     pub fn SetEnableDependentAnimation(&self, value: bool) -> ::windows::runtime::Result<()> {
1362         let this = self;
1363         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
1364     }
1365     pub fn EnableDependentAnimationProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
1366         Self::IColorAnimationUsingKeyFramesStatics(|this| unsafe {
1367             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1368             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
1369         })
1370     }
1371     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
1372         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1373         unsafe {
1374             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1375             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
1376         }
1377     }
1378     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
1379         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1380         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
1381     }
1382     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
1383         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1384         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
1385     }
1386     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
1387         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1388         unsafe {
1389             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1390             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
1391         }
1392     }
1393     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
1394         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1395         unsafe {
1396             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1397             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
1398         }
1399     }
1400     #[cfg(feature = "UI_Core")]
1401     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
1402         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1403         unsafe {
1404             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1405             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
1406         }
1407     }
1408     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
1409         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
1410         unsafe {
1411             let mut result__: i64 = ::std::mem::zeroed();
1412             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
1413         }
1414     }
1415     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
1416         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
1417         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
1418     }
1419     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
1420         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1421         unsafe {
1422             let mut result__: bool = ::std::mem::zeroed();
1423             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1424         }
1425     }
1426     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
1427         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1428         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
1429     }
1430     #[cfg(feature = "Foundation")]
1431     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
1432         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1433         unsafe {
1434             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1435             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
1436         }
1437     }
1438     #[cfg(feature = "Foundation")]
1439     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1440         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1441         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1442     }
1443     #[cfg(feature = "Foundation")]
1444     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
1445         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1446         unsafe {
1447             let mut result__: super::super::Duration = ::std::mem::zeroed();
1448             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
1449         }
1450     }
1451     #[cfg(feature = "Foundation")]
1452     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1453         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1454         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1455     }
1456     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
1457         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1458         unsafe {
1459             let mut result__: f64 = ::std::mem::zeroed();
1460             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
1461         }
1462     }
1463     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
1464         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1465         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
1466     }
1467     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
1468         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1469         unsafe {
1470             let mut result__: FillBehavior = ::std::mem::zeroed();
1471             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
1472         }
1473     }
1474     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
1475         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1476         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
1477     }
1478     #[cfg(feature = "Foundation")]
1479     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
1480         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1481         unsafe {
1482             let mut result__: RepeatBehavior = ::std::mem::zeroed();
1483             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
1484         }
1485     }
1486     #[cfg(feature = "Foundation")]
1487     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1488         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1489         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1490     }
1491     #[cfg(feature = "Foundation")]
1492     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
1493         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1494         unsafe {
1495             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1496             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
1497         }
1498     }
1499     #[cfg(feature = "Foundation")]
1500     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
1501         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
1502         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
1503     }
1504     pub fn IColorAnimationUsingKeyFramesStatics<R, F: FnOnce(&IColorAnimationUsingKeyFramesStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1505         static mut SHARED: ::windows::runtime::FactoryCache<ColorAnimationUsingKeyFrames, IColorAnimationUsingKeyFramesStatics> = ::windows::runtime::FactoryCache::new();
1506         unsafe { SHARED.call(callback) }
1507     }
1508 }
1509 unsafe impl ::windows::runtime::RuntimeType for ColorAnimationUsingKeyFrames {
1510     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ColorAnimationUsingKeyFrames;{f5c82640-13c3-42aa-9ae2-7e6b51c92f95})");
1511 }
1512 unsafe impl ::windows::runtime::Interface for ColorAnimationUsingKeyFrames {
1513     type Vtable = IColorAnimationUsingKeyFrames_abi;
1514     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4123534912, 5059, 17066, [154, 226, 126, 107, 81, 201, 47, 149]);
1515 }
1516 impl ::windows::runtime::RuntimeName for ColorAnimationUsingKeyFrames {
1517     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ColorAnimationUsingKeyFrames";
1518 }
1519 impl ::std::convert::From<ColorAnimationUsingKeyFrames> for ::windows::runtime::IUnknown {
1520     fn from(value: ColorAnimationUsingKeyFrames) -> Self {
1521         unsafe { ::std::mem::transmute(value) }
1522     }
1523 }
1524 impl ::std::convert::From<&ColorAnimationUsingKeyFrames> for ::windows::runtime::IUnknown {
1525     fn from(value: &ColorAnimationUsingKeyFrames) -> Self {
1526         ::std::convert::From::from(::std::clone::Clone::clone(value))
1527     }
1528 }
1529 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ColorAnimationUsingKeyFrames {
1530     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1531         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1532     }
1533 }
1534 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ColorAnimationUsingKeyFrames {
1535     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1536         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1537     }
1538 }
1539 impl ::std::convert::From<ColorAnimationUsingKeyFrames> for ::windows::runtime::IInspectable {
1540     fn from(value: ColorAnimationUsingKeyFrames) -> Self {
1541         value.0
1542     }
1543 }
1544 impl ::std::convert::From<&ColorAnimationUsingKeyFrames> for ::windows::runtime::IInspectable {
1545     fn from(value: &ColorAnimationUsingKeyFrames) -> Self {
1546         value.0.clone()
1547     }
1548 }
1549 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ColorAnimationUsingKeyFrames {
1550     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1551         ::windows::runtime::Param::Owned(self.0)
1552     }
1553 }
1554 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ColorAnimationUsingKeyFrames {
1555     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1556         ::windows::runtime::Param::Borrowed(&self.0)
1557     }
1558 }
1559 impl ::std::convert::From<ColorAnimationUsingKeyFrames> for Timeline {
1560     fn from(value: ColorAnimationUsingKeyFrames) -> Self {
1561         ::std::convert::Into::<Timeline>::into(&value)
1562     }
1563 }
1564 impl ::std::convert::From<&ColorAnimationUsingKeyFrames> for Timeline {
1565     fn from(value: &ColorAnimationUsingKeyFrames) -> Self {
1566         ::windows::runtime::Interface::cast(value).unwrap()
1567     }
1568 }
1569 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for ColorAnimationUsingKeyFrames {
1570     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
1571         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
1572     }
1573 }
1574 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &ColorAnimationUsingKeyFrames {
1575     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
1576         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
1577     }
1578 }
1579 impl ::std::convert::From<ColorAnimationUsingKeyFrames> for super::super::DependencyObject {
1580     fn from(value: ColorAnimationUsingKeyFrames) -> Self {
1581         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
1582     }
1583 }
1584 impl ::std::convert::From<&ColorAnimationUsingKeyFrames> for super::super::DependencyObject {
1585     fn from(value: &ColorAnimationUsingKeyFrames) -> Self {
1586         ::windows::runtime::Interface::cast(value).unwrap()
1587     }
1588 }
1589 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ColorAnimationUsingKeyFrames {
1590     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
1591         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
1592     }
1593 }
1594 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ColorAnimationUsingKeyFrames {
1595     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
1596         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
1597     }
1598 }
1599 unsafe impl ::std::marker::Send for ColorAnimationUsingKeyFrames {}
1600 unsafe impl ::std::marker::Sync for ColorAnimationUsingKeyFrames {}
1601 #[repr(transparent)]
1602 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1603 pub struct ColorKeyFrame(::windows::runtime::IInspectable);
1604 impl ColorKeyFrame {
1605     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::Color> {
1606         let this = self;
1607         unsafe {
1608             let mut result__: super::super::super::Color = ::std::mem::zeroed();
1609             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Color>(result__)
1610         }
1611     }
1612     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Color>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1613         let this = self;
1614         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1615     }
1616     #[cfg(feature = "Foundation")]
1617     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
1618         let this = self;
1619         unsafe {
1620             let mut result__: KeyTime = ::std::mem::zeroed();
1621             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
1622         }
1623     }
1624     #[cfg(feature = "Foundation")]
1625     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1626         let this = self;
1627         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1628     }
1629     pub fn ValueProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
1630         Self::IColorKeyFrameStatics(|this| unsafe {
1631             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1632             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
1633         })
1634     }
1635     pub fn KeyTimeProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
1636         Self::IColorKeyFrameStatics(|this| unsafe {
1637             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1638             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
1639         })
1640     }
1641     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
1642         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1643         unsafe {
1644             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1645             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
1646         }
1647     }
1648     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
1649         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1650         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
1651     }
1652     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
1653         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1654         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
1655     }
1656     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
1657         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1658         unsafe {
1659             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1660             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
1661         }
1662     }
1663     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
1664         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1665         unsafe {
1666             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1667             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
1668         }
1669     }
1670     #[cfg(feature = "UI_Core")]
1671     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
1672         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
1673         unsafe {
1674             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1675             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
1676         }
1677     }
1678     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
1679         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
1680         unsafe {
1681             let mut result__: i64 = ::std::mem::zeroed();
1682             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
1683         }
1684     }
1685     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
1686         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
1687         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
1688     }
1689     pub fn IColorKeyFrameStatics<R, F: FnOnce(&IColorKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1690         static mut SHARED: ::windows::runtime::FactoryCache<ColorKeyFrame, IColorKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
1691         unsafe { SHARED.call(callback) }
1692     }
1693 }
1694 unsafe impl ::windows::runtime::RuntimeType for ColorKeyFrame {
1695     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ColorKeyFrame;{b51d82d9-0910-4589-a284-b0c9205858e9})");
1696 }
1697 unsafe impl ::windows::runtime::Interface for ColorKeyFrame {
1698     type Vtable = IColorKeyFrame_abi;
1699     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3038610137, 2320, 17801, [162, 132, 176, 201, 32, 88, 88, 233]);
1700 }
1701 impl ::windows::runtime::RuntimeName for ColorKeyFrame {
1702     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ColorKeyFrame";
1703 }
1704 impl ::std::convert::From<ColorKeyFrame> for ::windows::runtime::IUnknown {
1705     fn from(value: ColorKeyFrame) -> Self {
1706         unsafe { ::std::mem::transmute(value) }
1707     }
1708 }
1709 impl ::std::convert::From<&ColorKeyFrame> for ::windows::runtime::IUnknown {
1710     fn from(value: &ColorKeyFrame) -> Self {
1711         ::std::convert::From::from(::std::clone::Clone::clone(value))
1712     }
1713 }
1714 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ColorKeyFrame {
1715     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1716         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1717     }
1718 }
1719 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ColorKeyFrame {
1720     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1721         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1722     }
1723 }
1724 impl ::std::convert::From<ColorKeyFrame> for ::windows::runtime::IInspectable {
1725     fn from(value: ColorKeyFrame) -> Self {
1726         value.0
1727     }
1728 }
1729 impl ::std::convert::From<&ColorKeyFrame> for ::windows::runtime::IInspectable {
1730     fn from(value: &ColorKeyFrame) -> Self {
1731         value.0.clone()
1732     }
1733 }
1734 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ColorKeyFrame {
1735     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1736         ::windows::runtime::Param::Owned(self.0)
1737     }
1738 }
1739 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ColorKeyFrame {
1740     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1741         ::windows::runtime::Param::Borrowed(&self.0)
1742     }
1743 }
1744 impl ::std::convert::From<ColorKeyFrame> for super::super::DependencyObject {
1745     fn from(value: ColorKeyFrame) -> Self {
1746         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
1747     }
1748 }
1749 impl ::std::convert::From<&ColorKeyFrame> for super::super::DependencyObject {
1750     fn from(value: &ColorKeyFrame) -> Self {
1751         ::windows::runtime::Interface::cast(value).unwrap()
1752     }
1753 }
1754 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ColorKeyFrame {
1755     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
1756         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
1757     }
1758 }
1759 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ColorKeyFrame {
1760     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
1761         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
1762     }
1763 }
1764 unsafe impl ::std::marker::Send for ColorKeyFrame {}
1765 unsafe impl ::std::marker::Sync for ColorKeyFrame {}
1766 #[cfg(feature = "Foundation_Collections")]
1767 #[repr(transparent)]
1768 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1769 pub struct ColorKeyFrameCollection(::windows::runtime::IInspectable);
1770 #[cfg(feature = "Foundation_Collections")]
1771 impl ColorKeyFrameCollection {
1772     pub fn new() -> ::windows::runtime::Result<Self> {
1773         Self::IActivationFactory(|f| f.activate_instance::<Self>())
1774     }
1775     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1776         static mut SHARED: ::windows::runtime::FactoryCache<ColorKeyFrameCollection, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
1777         unsafe { SHARED.call(callback) }
1778     }
1779     #[cfg(feature = "Foundation_Collections")]
1780     pub fn GetAt(&self, index: u32) -> ::windows::runtime::Result<ColorKeyFrame> {
1781         let this = self;
1782         unsafe {
1783             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1784             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), index, &mut result__).from_abi::<ColorKeyFrame>(result__)
1785         }
1786     }
1787     #[cfg(feature = "Foundation_Collections")]
1788     pub fn Size(&self) -> ::windows::runtime::Result<u32> {
1789         let this = self;
1790         unsafe {
1791             let mut result__: u32 = ::std::mem::zeroed();
1792             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1793         }
1794     }
1795     #[cfg(feature = "Foundation_Collections")]
1796     pub fn GetView(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IVectorView<ColorKeyFrame>> {
1797         let this = self;
1798         unsafe {
1799             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1800             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IVectorView<ColorKeyFrame>>(result__)
1801         }
1802     }
1803     #[cfg(feature = "Foundation_Collections")]
1804     pub fn IndexOf<'a, Param0: ::windows::runtime::IntoParam<'a, ColorKeyFrame>>(&self, value: Param0, index: &mut u32) -> ::windows::runtime::Result<bool> {
1805         let this = self;
1806         unsafe {
1807             let mut result__: bool = ::std::mem::zeroed();
1808             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi(), index, &mut result__).from_abi::<bool>(result__)
1809         }
1810     }
1811     #[cfg(feature = "Foundation_Collections")]
1812     pub fn SetAt<'a, Param1: ::windows::runtime::IntoParam<'a, ColorKeyFrame>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
1813         let this = self;
1814         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
1815     }
1816     #[cfg(feature = "Foundation_Collections")]
1817     pub fn InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, ColorKeyFrame>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
1818         let this = self;
1819         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
1820     }
1821     #[cfg(feature = "Foundation_Collections")]
1822     pub fn RemoveAt(&self, index: u32) -> ::windows::runtime::Result<()> {
1823         let this = self;
1824         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), index).ok() }
1825     }
1826     #[cfg(feature = "Foundation_Collections")]
1827     pub fn Append<'a, Param0: ::windows::runtime::IntoParam<'a, ColorKeyFrame>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1828         let this = self;
1829         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1830     }
1831     #[cfg(feature = "Foundation_Collections")]
1832     pub fn RemoveAtEnd(&self) -> ::windows::runtime::Result<()> {
1833         let this = self;
1834         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
1835     }
1836     #[cfg(feature = "Foundation_Collections")]
1837     pub fn Clear(&self) -> ::windows::runtime::Result<()> {
1838         let this = self;
1839         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this)).ok() }
1840     }
1841     #[cfg(feature = "Foundation_Collections")]
1842     pub fn GetMany(&self, startindex: u32, items: &mut [<ColorKeyFrame as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<u32> {
1843         let this = self;
1844         unsafe {
1845             let mut result__: u32 = ::std::mem::zeroed();
1846             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), startindex, items.len() as u32, ::std::mem::transmute_copy(&items), &mut result__).from_abi::<u32>(result__)
1847         }
1848     }
1849     #[cfg(feature = "Foundation_Collections")]
1850     pub fn ReplaceAll(&self, items: &[<ColorKeyFrame as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<()> {
1851         let this = self;
1852         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), items.len() as u32, ::std::mem::transmute(items.as_ptr())).ok() }
1853     }
1854     #[cfg(feature = "Foundation_Collections")]
1855     pub fn First(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IIterator<ColorKeyFrame>> {
1856         let this = &::windows::runtime::Interface::cast::<super::super::super::super::Foundation::Collections::IIterable<ColorKeyFrame>>(self)?;
1857         unsafe {
1858             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1859             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IIterator<ColorKeyFrame>>(result__)
1860         }
1861     }
1862 }
1863 #[cfg(feature = "Foundation_Collections")]
1864 unsafe impl ::windows::runtime::RuntimeType for ColorKeyFrameCollection {
1865     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ColorKeyFrameCollection;pinterface({913337e9-11a1-4345-a3a2-4e7f956e222d};rc(Windows.UI.Xaml.Media.Animation.ColorKeyFrame;{b51d82d9-0910-4589-a284-b0c9205858e9})))");
1866 }
1867 #[cfg(feature = "Foundation_Collections")]
1868 unsafe impl ::windows::runtime::Interface for ColorKeyFrameCollection {
1869     type Vtable = super::super::super::super::Foundation::Collections::IVector_abi<ColorKeyFrame>;
1870     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_signature(<super::super::super::super::Foundation::Collections::IVector<ColorKeyFrame> as ::windows::runtime::RuntimeType>::SIGNATURE);
1871 }
1872 #[cfg(feature = "Foundation_Collections")]
1873 impl ::windows::runtime::RuntimeName for ColorKeyFrameCollection {
1874     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ColorKeyFrameCollection";
1875 }
1876 #[cfg(feature = "Foundation_Collections")]
1877 impl ::std::convert::From<ColorKeyFrameCollection> for ::windows::runtime::IUnknown {
1878     fn from(value: ColorKeyFrameCollection) -> Self {
1879         unsafe { ::std::mem::transmute(value) }
1880     }
1881 }
1882 #[cfg(feature = "Foundation_Collections")]
1883 impl ::std::convert::From<&ColorKeyFrameCollection> for ::windows::runtime::IUnknown {
1884     fn from(value: &ColorKeyFrameCollection) -> Self {
1885         ::std::convert::From::from(::std::clone::Clone::clone(value))
1886     }
1887 }
1888 #[cfg(feature = "Foundation_Collections")]
1889 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ColorKeyFrameCollection {
1890     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1891         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1892     }
1893 }
1894 #[cfg(feature = "Foundation_Collections")]
1895 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ColorKeyFrameCollection {
1896     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1897         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1898     }
1899 }
1900 #[cfg(feature = "Foundation_Collections")]
1901 impl ::std::convert::From<ColorKeyFrameCollection> for ::windows::runtime::IInspectable {
1902     fn from(value: ColorKeyFrameCollection) -> Self {
1903         value.0
1904     }
1905 }
1906 #[cfg(feature = "Foundation_Collections")]
1907 impl ::std::convert::From<&ColorKeyFrameCollection> for ::windows::runtime::IInspectable {
1908     fn from(value: &ColorKeyFrameCollection) -> Self {
1909         value.0.clone()
1910     }
1911 }
1912 #[cfg(feature = "Foundation_Collections")]
1913 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ColorKeyFrameCollection {
1914     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1915         ::windows::runtime::Param::Owned(self.0)
1916     }
1917 }
1918 #[cfg(feature = "Foundation_Collections")]
1919 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ColorKeyFrameCollection {
1920     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1921         ::windows::runtime::Param::Borrowed(&self.0)
1922     }
1923 }
1924 #[cfg(feature = "Foundation_Collections")]
1925 impl ::std::convert::From<ColorKeyFrameCollection> for super::super::super::super::Foundation::Collections::IVector<ColorKeyFrame> {
1926     fn from(value: ColorKeyFrameCollection) -> Self {
1927         unsafe { ::std::mem::transmute(value) }
1928     }
1929 }
1930 #[cfg(feature = "Foundation_Collections")]
1931 impl ::std::convert::From<&ColorKeyFrameCollection> for super::super::super::super::Foundation::Collections::IVector<ColorKeyFrame> {
1932     fn from(value: &ColorKeyFrameCollection) -> Self {
1933         ::std::convert::From::from(::std::clone::Clone::clone(value))
1934     }
1935 }
1936 #[cfg(feature = "Foundation_Collections")]
1937 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<ColorKeyFrame>> for ColorKeyFrameCollection {
1938     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<ColorKeyFrame>> {
1939         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<ColorKeyFrame>>::into(self))
1940     }
1941 }
1942 #[cfg(feature = "Foundation_Collections")]
1943 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<ColorKeyFrame>> for &ColorKeyFrameCollection {
1944     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<ColorKeyFrame>> {
1945         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<ColorKeyFrame>>::into(::std::clone::Clone::clone(self)))
1946     }
1947 }
1948 #[cfg(feature = "Foundation_Collections")]
1949 impl ::std::convert::TryFrom<ColorKeyFrameCollection> for super::super::super::super::Foundation::Collections::IIterable<ColorKeyFrame> {
1950     type Error = ::windows::runtime::Error;
1951     fn try_from(value: ColorKeyFrameCollection) -> ::windows::runtime::Result<Self> {
1952         ::std::convert::TryFrom::try_from(&value)
1953     }
1954 }
1955 #[cfg(feature = "Foundation_Collections")]
1956 impl ::std::convert::TryFrom<&ColorKeyFrameCollection> for super::super::super::super::Foundation::Collections::IIterable<ColorKeyFrame> {
1957     type Error = ::windows::runtime::Error;
1958     fn try_from(value: &ColorKeyFrameCollection) -> ::windows::runtime::Result<Self> {
1959         ::windows::runtime::Interface::cast(value)
1960     }
1961 }
1962 #[cfg(feature = "Foundation_Collections")]
1963 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<ColorKeyFrame>> for ColorKeyFrameCollection {
1964     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<ColorKeyFrame>> {
1965         ::windows::runtime::IntoParam::into_param(&self)
1966     }
1967 }
1968 #[cfg(feature = "Foundation_Collections")]
1969 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<ColorKeyFrame>> for &ColorKeyFrameCollection {
1970     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<ColorKeyFrame>> {
1971         ::std::convert::TryInto::<super::super::super::super::Foundation::Collections::IIterable<ColorKeyFrame>>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
1972     }
1973 }
1974 #[cfg(feature = "Foundation_Collections")]
1975 unsafe impl ::std::marker::Send for ColorKeyFrameCollection {}
1976 #[cfg(feature = "Foundation_Collections")]
1977 unsafe impl ::std::marker::Sync for ColorKeyFrameCollection {}
1978 #[cfg(all(feature = "Foundation_Collections"))]
1979 impl ::std::iter::IntoIterator for ColorKeyFrameCollection {
1980     type Item = ColorKeyFrame;
1981     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
1982     fn into_iter(self) -> Self::IntoIter {
1983         ::std::iter::IntoIterator::into_iter(&self)
1984     }
1985 }
1986 #[cfg(all(feature = "Foundation_Collections"))]
1987 impl ::std::iter::IntoIterator for &ColorKeyFrameCollection {
1988     type Item = ColorKeyFrame;
1989     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
1990     fn into_iter(self) -> Self::IntoIter {
1991         super::super::super::super::Foundation::Collections::VectorIterator::new(::std::convert::TryInto::try_into(self).ok())
1992     }
1993 }
1994 #[repr(transparent)]
1995 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1996 pub struct CommonNavigationTransitionInfo(::windows::runtime::IInspectable);
1997 impl CommonNavigationTransitionInfo {
1998     pub fn new() -> ::windows::runtime::Result<Self> {
1999         Self::IActivationFactory(|f| f.activate_instance::<Self>())
2000     }
2001     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2002         static mut SHARED: ::windows::runtime::FactoryCache<CommonNavigationTransitionInfo, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
2003         unsafe { SHARED.call(callback) }
2004     }
2005     pub fn IsStaggeringEnabled(&self) -> ::windows::runtime::Result<bool> {
2006         let this = self;
2007         unsafe {
2008             let mut result__: bool = ::std::mem::zeroed();
2009             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2010         }
2011     }
2012     pub fn SetIsStaggeringEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
2013         let this = self;
2014         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
2015     }
2016     pub fn IsStaggeringEnabledProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
2017         Self::ICommonNavigationTransitionInfoStatics(|this| unsafe {
2018             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2019             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
2020         })
2021     }
2022     pub fn IsStaggerElementProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
2023         Self::ICommonNavigationTransitionInfoStatics(|this| unsafe {
2024             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2025             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
2026         })
2027     }
2028     pub fn GetIsStaggerElement<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(element: Param0) -> ::windows::runtime::Result<bool> {
2029         Self::ICommonNavigationTransitionInfoStatics(|this| unsafe {
2030             let mut result__: bool = ::std::mem::zeroed();
2031             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), element.into_param().abi(), &mut result__).from_abi::<bool>(result__)
2032         })
2033     }
2034     pub fn SetIsStaggerElement<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(element: Param0, value: bool) -> ::windows::runtime::Result<()> {
2035         Self::ICommonNavigationTransitionInfoStatics(|this| unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), element.into_param().abi(), value).ok() })
2036     }
2037     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2038         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2039         unsafe {
2040             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2041             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2042         }
2043     }
2044     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
2045         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2046         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
2047     }
2048     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
2049         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2050         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
2051     }
2052     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2053         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2054         unsafe {
2055             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2056             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2057         }
2058     }
2059     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2060         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2061         unsafe {
2062             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2063             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2064         }
2065     }
2066     #[cfg(feature = "UI_Core")]
2067     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
2068         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2069         unsafe {
2070             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2071             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
2072         }
2073     }
2074     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
2075         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
2076         unsafe {
2077             let mut result__: i64 = ::std::mem::zeroed();
2078             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
2079         }
2080     }
2081     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
2082         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
2083         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
2084     }
2085     pub fn GetNavigationStateCore(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
2086         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
2087         unsafe {
2088             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
2089             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
2090         }
2091     }
2092     pub fn SetNavigationStateCore<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, navigationstate: Param0) -> ::windows::runtime::Result<()> {
2093         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
2094         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), navigationstate.into_param().abi()).ok() }
2095     }
2096     pub fn ICommonNavigationTransitionInfoStatics<R, F: FnOnce(&ICommonNavigationTransitionInfoStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2097         static mut SHARED: ::windows::runtime::FactoryCache<CommonNavigationTransitionInfo, ICommonNavigationTransitionInfoStatics> = ::windows::runtime::FactoryCache::new();
2098         unsafe { SHARED.call(callback) }
2099     }
2100 }
2101 unsafe impl ::windows::runtime::RuntimeType for CommonNavigationTransitionInfo {
2102     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.CommonNavigationTransitionInfo;{50345692-a555-4624-a361-0a91c1706473})");
2103 }
2104 unsafe impl ::windows::runtime::Interface for CommonNavigationTransitionInfo {
2105     type Vtable = ICommonNavigationTransitionInfo_abi;
2106     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1345607314, 42325, 17956, [163, 97, 10, 145, 193, 112, 100, 115]);
2107 }
2108 impl ::windows::runtime::RuntimeName for CommonNavigationTransitionInfo {
2109     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.CommonNavigationTransitionInfo";
2110 }
2111 impl ::std::convert::From<CommonNavigationTransitionInfo> for ::windows::runtime::IUnknown {
2112     fn from(value: CommonNavigationTransitionInfo) -> Self {
2113         unsafe { ::std::mem::transmute(value) }
2114     }
2115 }
2116 impl ::std::convert::From<&CommonNavigationTransitionInfo> for ::windows::runtime::IUnknown {
2117     fn from(value: &CommonNavigationTransitionInfo) -> Self {
2118         ::std::convert::From::from(::std::clone::Clone::clone(value))
2119     }
2120 }
2121 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CommonNavigationTransitionInfo {
2122     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2123         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2124     }
2125 }
2126 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CommonNavigationTransitionInfo {
2127     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2128         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2129     }
2130 }
2131 impl ::std::convert::From<CommonNavigationTransitionInfo> for ::windows::runtime::IInspectable {
2132     fn from(value: CommonNavigationTransitionInfo) -> Self {
2133         value.0
2134     }
2135 }
2136 impl ::std::convert::From<&CommonNavigationTransitionInfo> for ::windows::runtime::IInspectable {
2137     fn from(value: &CommonNavigationTransitionInfo) -> Self {
2138         value.0.clone()
2139     }
2140 }
2141 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CommonNavigationTransitionInfo {
2142     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2143         ::windows::runtime::Param::Owned(self.0)
2144     }
2145 }
2146 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CommonNavigationTransitionInfo {
2147     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2148         ::windows::runtime::Param::Borrowed(&self.0)
2149     }
2150 }
2151 impl ::std::convert::From<CommonNavigationTransitionInfo> for NavigationTransitionInfo {
2152     fn from(value: CommonNavigationTransitionInfo) -> Self {
2153         ::std::convert::Into::<NavigationTransitionInfo>::into(&value)
2154     }
2155 }
2156 impl ::std::convert::From<&CommonNavigationTransitionInfo> for NavigationTransitionInfo {
2157     fn from(value: &CommonNavigationTransitionInfo) -> Self {
2158         ::windows::runtime::Interface::cast(value).unwrap()
2159     }
2160 }
2161 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for CommonNavigationTransitionInfo {
2162     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
2163         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(self))
2164     }
2165 }
2166 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for &CommonNavigationTransitionInfo {
2167     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
2168         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(::std::clone::Clone::clone(self)))
2169     }
2170 }
2171 impl ::std::convert::From<CommonNavigationTransitionInfo> for super::super::DependencyObject {
2172     fn from(value: CommonNavigationTransitionInfo) -> Self {
2173         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
2174     }
2175 }
2176 impl ::std::convert::From<&CommonNavigationTransitionInfo> for super::super::DependencyObject {
2177     fn from(value: &CommonNavigationTransitionInfo) -> Self {
2178         ::windows::runtime::Interface::cast(value).unwrap()
2179     }
2180 }
2181 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for CommonNavigationTransitionInfo {
2182     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
2183         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
2184     }
2185 }
2186 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &CommonNavigationTransitionInfo {
2187     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
2188         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
2189     }
2190 }
2191 unsafe impl ::std::marker::Send for CommonNavigationTransitionInfo {}
2192 unsafe impl ::std::marker::Sync for CommonNavigationTransitionInfo {}
2193 #[repr(transparent)]
2194 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2195 pub struct ConnectedAnimation(::windows::runtime::IInspectable);
2196 impl ConnectedAnimation {
2197     #[cfg(feature = "Foundation")]
2198     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::TypedEventHandler<ConnectedAnimation, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
2199         let this = self;
2200         unsafe {
2201             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
2202             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
2203         }
2204     }
2205     #[cfg(feature = "Foundation")]
2206     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
2207         let this = self;
2208         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
2209     }
2210     pub fn TryStart<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(&self, destination: Param0) -> ::windows::runtime::Result<bool> {
2211         let this = self;
2212         unsafe {
2213             let mut result__: bool = ::std::mem::zeroed();
2214             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), destination.into_param().abi(), &mut result__).from_abi::<bool>(result__)
2215         }
2216     }
2217     pub fn Cancel(&self) -> ::windows::runtime::Result<()> {
2218         let this = self;
2219         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this)).ok() }
2220     }
2221     pub fn IsScaleAnimationEnabled(&self) -> ::windows::runtime::Result<bool> {
2222         let this = &::windows::runtime::Interface::cast::<IConnectedAnimation2>(self)?;
2223         unsafe {
2224             let mut result__: bool = ::std::mem::zeroed();
2225             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2226         }
2227     }
2228     pub fn SetIsScaleAnimationEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
2229         let this = &::windows::runtime::Interface::cast::<IConnectedAnimation2>(self)?;
2230         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
2231     }
2232     #[cfg(feature = "Foundation_Collections")]
2233     pub fn TryStartWithCoordinatedElements<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>, Param1: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<super::super::UIElement>>>(&self, destination: Param0, coordinatedelements: Param1) -> ::windows::runtime::Result<bool> {
2234         let this = &::windows::runtime::Interface::cast::<IConnectedAnimation2>(self)?;
2235         unsafe {
2236             let mut result__: bool = ::std::mem::zeroed();
2237             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), destination.into_param().abi(), coordinatedelements.into_param().abi(), &mut result__).from_abi::<bool>(result__)
2238         }
2239     }
2240     #[cfg(feature = "UI_Composition")]
2241     pub fn SetAnimationComponent<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::super::Composition::ICompositionAnimationBase>>(&self, component: ConnectedAnimationComponent, animation: Param1) -> ::windows::runtime::Result<()> {
2242         let this = &::windows::runtime::Interface::cast::<IConnectedAnimation2>(self)?;
2243         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), component, animation.into_param().abi()).ok() }
2244     }
2245     pub fn Configuration(&self) -> ::windows::runtime::Result<ConnectedAnimationConfiguration> {
2246         let this = &::windows::runtime::Interface::cast::<IConnectedAnimation3>(self)?;
2247         unsafe {
2248             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2249             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ConnectedAnimationConfiguration>(result__)
2250         }
2251     }
2252     pub fn SetConfiguration<'a, Param0: ::windows::runtime::IntoParam<'a, ConnectedAnimationConfiguration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2253         let this = &::windows::runtime::Interface::cast::<IConnectedAnimation3>(self)?;
2254         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2255     }
2256 }
2257 unsafe impl ::windows::runtime::RuntimeType for ConnectedAnimation {
2258     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ConnectedAnimation;{3518628c-f387-4c25-ac98-44e86c3cadf0})");
2259 }
2260 unsafe impl ::windows::runtime::Interface for ConnectedAnimation {
2261     type Vtable = IConnectedAnimation_abi;
2262     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(890790540, 62343, 19493, [172, 152, 68, 232, 108, 60, 173, 240]);
2263 }
2264 impl ::windows::runtime::RuntimeName for ConnectedAnimation {
2265     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ConnectedAnimation";
2266 }
2267 impl ::std::convert::From<ConnectedAnimation> for ::windows::runtime::IUnknown {
2268     fn from(value: ConnectedAnimation) -> Self {
2269         unsafe { ::std::mem::transmute(value) }
2270     }
2271 }
2272 impl ::std::convert::From<&ConnectedAnimation> for ::windows::runtime::IUnknown {
2273     fn from(value: &ConnectedAnimation) -> Self {
2274         ::std::convert::From::from(::std::clone::Clone::clone(value))
2275     }
2276 }
2277 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ConnectedAnimation {
2278     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2279         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2280     }
2281 }
2282 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ConnectedAnimation {
2283     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2284         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2285     }
2286 }
2287 impl ::std::convert::From<ConnectedAnimation> for ::windows::runtime::IInspectable {
2288     fn from(value: ConnectedAnimation) -> Self {
2289         value.0
2290     }
2291 }
2292 impl ::std::convert::From<&ConnectedAnimation> for ::windows::runtime::IInspectable {
2293     fn from(value: &ConnectedAnimation) -> Self {
2294         value.0.clone()
2295     }
2296 }
2297 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ConnectedAnimation {
2298     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2299         ::windows::runtime::Param::Owned(self.0)
2300     }
2301 }
2302 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ConnectedAnimation {
2303     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2304         ::windows::runtime::Param::Borrowed(&self.0)
2305     }
2306 }
2307 unsafe impl ::std::marker::Send for ConnectedAnimation {}
2308 unsafe impl ::std::marker::Sync for ConnectedAnimation {}
2309 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2310 #[repr(transparent)]
2311 pub struct ConnectedAnimationComponent(pub i32);
2312 impl ConnectedAnimationComponent {
2313     pub const OffsetX: ConnectedAnimationComponent = ConnectedAnimationComponent(0i32);
2314     pub const OffsetY: ConnectedAnimationComponent = ConnectedAnimationComponent(1i32);
2315     pub const CrossFade: ConnectedAnimationComponent = ConnectedAnimationComponent(2i32);
2316     pub const Scale: ConnectedAnimationComponent = ConnectedAnimationComponent(3i32);
2317 }
2318 impl ::std::convert::From<i32> for ConnectedAnimationComponent {
2319     fn from(value: i32) -> Self {
2320         Self(value)
2321     }
2322 }
2323 unsafe impl ::windows::runtime::Abi for ConnectedAnimationComponent {
2324     type Abi = Self;
2325     type DefaultType = Self;
2326 }
2327 unsafe impl ::windows::runtime::RuntimeType for ConnectedAnimationComponent {
2328     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.UI.Xaml.Media.Animation.ConnectedAnimationComponent;i4)");
2329 }
2330 #[repr(transparent)]
2331 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2332 pub struct ConnectedAnimationConfiguration(::windows::runtime::IInspectable);
2333 impl ConnectedAnimationConfiguration {}
2334 unsafe impl ::windows::runtime::RuntimeType for ConnectedAnimationConfiguration {
2335     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ConnectedAnimationConfiguration;{00218aae-cd8c-5651-92a0-c1db95c03998})");
2336 }
2337 unsafe impl ::windows::runtime::Interface for ConnectedAnimationConfiguration {
2338     type Vtable = IConnectedAnimationConfiguration_abi;
2339     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2198190, 52620, 22097, [146, 160, 193, 219, 149, 192, 57, 152]);
2340 }
2341 impl ::windows::runtime::RuntimeName for ConnectedAnimationConfiguration {
2342     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ConnectedAnimationConfiguration";
2343 }
2344 impl ::std::convert::From<ConnectedAnimationConfiguration> for ::windows::runtime::IUnknown {
2345     fn from(value: ConnectedAnimationConfiguration) -> Self {
2346         unsafe { ::std::mem::transmute(value) }
2347     }
2348 }
2349 impl ::std::convert::From<&ConnectedAnimationConfiguration> for ::windows::runtime::IUnknown {
2350     fn from(value: &ConnectedAnimationConfiguration) -> Self {
2351         ::std::convert::From::from(::std::clone::Clone::clone(value))
2352     }
2353 }
2354 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ConnectedAnimationConfiguration {
2355     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2356         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2357     }
2358 }
2359 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ConnectedAnimationConfiguration {
2360     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2361         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2362     }
2363 }
2364 impl ::std::convert::From<ConnectedAnimationConfiguration> for ::windows::runtime::IInspectable {
2365     fn from(value: ConnectedAnimationConfiguration) -> Self {
2366         value.0
2367     }
2368 }
2369 impl ::std::convert::From<&ConnectedAnimationConfiguration> for ::windows::runtime::IInspectable {
2370     fn from(value: &ConnectedAnimationConfiguration) -> Self {
2371         value.0.clone()
2372     }
2373 }
2374 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ConnectedAnimationConfiguration {
2375     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2376         ::windows::runtime::Param::Owned(self.0)
2377     }
2378 }
2379 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ConnectedAnimationConfiguration {
2380     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2381         ::windows::runtime::Param::Borrowed(&self.0)
2382     }
2383 }
2384 unsafe impl ::std::marker::Send for ConnectedAnimationConfiguration {}
2385 unsafe impl ::std::marker::Sync for ConnectedAnimationConfiguration {}
2386 #[repr(transparent)]
2387 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2388 pub struct ConnectedAnimationService(::windows::runtime::IInspectable);
2389 impl ConnectedAnimationService {
2390     #[cfg(feature = "Foundation")]
2391     pub fn DefaultDuration(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::TimeSpan> {
2392         let this = self;
2393         unsafe {
2394             let mut result__: super::super::super::super::Foundation::TimeSpan = ::std::mem::zeroed();
2395             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::TimeSpan>(result__)
2396         }
2397     }
2398     #[cfg(feature = "Foundation")]
2399     pub fn SetDefaultDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2400         let this = self;
2401         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2402     }
2403     #[cfg(feature = "UI_Composition")]
2404     pub fn DefaultEasingFunction(&self) -> ::windows::runtime::Result<super::super::super::Composition::CompositionEasingFunction> {
2405         let this = self;
2406         unsafe {
2407             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2408             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Composition::CompositionEasingFunction>(result__)
2409         }
2410     }
2411     #[cfg(feature = "UI_Composition")]
2412     pub fn SetDefaultEasingFunction<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Composition::CompositionEasingFunction>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2413         let this = self;
2414         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2415     }
2416     pub fn PrepareToAnimate<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(&self, key: Param0, source: Param1) -> ::windows::runtime::Result<ConnectedAnimation> {
2417         let this = self;
2418         unsafe {
2419             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2420             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), key.into_param().abi(), source.into_param().abi(), &mut result__).from_abi::<ConnectedAnimation>(result__)
2421         }
2422     }
2423     pub fn GetAnimation<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, key: Param0) -> ::windows::runtime::Result<ConnectedAnimation> {
2424         let this = self;
2425         unsafe {
2426             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2427             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), key.into_param().abi(), &mut result__).from_abi::<ConnectedAnimation>(result__)
2428         }
2429     }
2430     pub fn GetForCurrentView() -> ::windows::runtime::Result<ConnectedAnimationService> {
2431         Self::IConnectedAnimationServiceStatics(|this| unsafe {
2432             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2433             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ConnectedAnimationService>(result__)
2434         })
2435     }
2436     pub fn IConnectedAnimationServiceStatics<R, F: FnOnce(&IConnectedAnimationServiceStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2437         static mut SHARED: ::windows::runtime::FactoryCache<ConnectedAnimationService, IConnectedAnimationServiceStatics> = ::windows::runtime::FactoryCache::new();
2438         unsafe { SHARED.call(callback) }
2439     }
2440 }
2441 unsafe impl ::windows::runtime::RuntimeType for ConnectedAnimationService {
2442     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ConnectedAnimationService;{1c6875c9-19bb-4d47-b9aa-66c802dcb9ff})");
2443 }
2444 unsafe impl ::windows::runtime::Interface for ConnectedAnimationService {
2445     type Vtable = IConnectedAnimationService_abi;
2446     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(476607945, 6587, 19783, [185, 170, 102, 200, 2, 220, 185, 255]);
2447 }
2448 impl ::windows::runtime::RuntimeName for ConnectedAnimationService {
2449     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ConnectedAnimationService";
2450 }
2451 impl ::std::convert::From<ConnectedAnimationService> for ::windows::runtime::IUnknown {
2452     fn from(value: ConnectedAnimationService) -> Self {
2453         unsafe { ::std::mem::transmute(value) }
2454     }
2455 }
2456 impl ::std::convert::From<&ConnectedAnimationService> for ::windows::runtime::IUnknown {
2457     fn from(value: &ConnectedAnimationService) -> Self {
2458         ::std::convert::From::from(::std::clone::Clone::clone(value))
2459     }
2460 }
2461 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ConnectedAnimationService {
2462     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2463         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2464     }
2465 }
2466 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ConnectedAnimationService {
2467     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2468         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2469     }
2470 }
2471 impl ::std::convert::From<ConnectedAnimationService> for ::windows::runtime::IInspectable {
2472     fn from(value: ConnectedAnimationService) -> Self {
2473         value.0
2474     }
2475 }
2476 impl ::std::convert::From<&ConnectedAnimationService> for ::windows::runtime::IInspectable {
2477     fn from(value: &ConnectedAnimationService) -> Self {
2478         value.0.clone()
2479     }
2480 }
2481 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ConnectedAnimationService {
2482     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2483         ::windows::runtime::Param::Owned(self.0)
2484     }
2485 }
2486 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ConnectedAnimationService {
2487     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2488         ::windows::runtime::Param::Borrowed(&self.0)
2489     }
2490 }
2491 unsafe impl ::std::marker::Send for ConnectedAnimationService {}
2492 unsafe impl ::std::marker::Sync for ConnectedAnimationService {}
2493 #[repr(transparent)]
2494 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2495 pub struct ContentThemeTransition(::windows::runtime::IInspectable);
2496 impl ContentThemeTransition {
2497     pub fn new() -> ::windows::runtime::Result<Self> {
2498         Self::IActivationFactory(|f| f.activate_instance::<Self>())
2499     }
2500     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2501         static mut SHARED: ::windows::runtime::FactoryCache<ContentThemeTransition, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
2502         unsafe { SHARED.call(callback) }
2503     }
2504     pub fn HorizontalOffset(&self) -> ::windows::runtime::Result<f64> {
2505         let this = self;
2506         unsafe {
2507             let mut result__: f64 = ::std::mem::zeroed();
2508             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
2509         }
2510     }
2511     pub fn SetHorizontalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
2512         let this = self;
2513         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
2514     }
2515     pub fn VerticalOffset(&self) -> ::windows::runtime::Result<f64> {
2516         let this = self;
2517         unsafe {
2518             let mut result__: f64 = ::std::mem::zeroed();
2519             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
2520         }
2521     }
2522     pub fn SetVerticalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
2523         let this = self;
2524         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
2525     }
2526     pub fn HorizontalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
2527         Self::IContentThemeTransitionStatics(|this| unsafe {
2528             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2529             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
2530         })
2531     }
2532     pub fn VerticalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
2533         Self::IContentThemeTransitionStatics(|this| unsafe {
2534             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2535             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
2536         })
2537     }
2538     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2539         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2540         unsafe {
2541             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2542             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2543         }
2544     }
2545     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
2546         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2547         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
2548     }
2549     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
2550         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2551         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
2552     }
2553     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2554         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2555         unsafe {
2556             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2557             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2558         }
2559     }
2560     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2561         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2562         unsafe {
2563             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2564             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2565         }
2566     }
2567     #[cfg(feature = "UI_Core")]
2568     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
2569         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2570         unsafe {
2571             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2572             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
2573         }
2574     }
2575     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
2576         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
2577         unsafe {
2578             let mut result__: i64 = ::std::mem::zeroed();
2579             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
2580         }
2581     }
2582     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
2583         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
2584         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
2585     }
2586     pub fn IContentThemeTransitionStatics<R, F: FnOnce(&IContentThemeTransitionStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2587         static mut SHARED: ::windows::runtime::FactoryCache<ContentThemeTransition, IContentThemeTransitionStatics> = ::windows::runtime::FactoryCache::new();
2588         unsafe { SHARED.call(callback) }
2589     }
2590 }
2591 unsafe impl ::windows::runtime::RuntimeType for ContentThemeTransition {
2592     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ContentThemeTransition;{f66fc5c3-5915-437d-8e3b-adf8e7f0ab57})");
2593 }
2594 unsafe impl ::windows::runtime::Interface for ContentThemeTransition {
2595     type Vtable = IContentThemeTransition_abi;
2596     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4134520259, 22805, 17277, [142, 59, 173, 248, 231, 240, 171, 87]);
2597 }
2598 impl ::windows::runtime::RuntimeName for ContentThemeTransition {
2599     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ContentThemeTransition";
2600 }
2601 impl ::std::convert::From<ContentThemeTransition> for ::windows::runtime::IUnknown {
2602     fn from(value: ContentThemeTransition) -> Self {
2603         unsafe { ::std::mem::transmute(value) }
2604     }
2605 }
2606 impl ::std::convert::From<&ContentThemeTransition> for ::windows::runtime::IUnknown {
2607     fn from(value: &ContentThemeTransition) -> Self {
2608         ::std::convert::From::from(::std::clone::Clone::clone(value))
2609     }
2610 }
2611 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ContentThemeTransition {
2612     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2613         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2614     }
2615 }
2616 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ContentThemeTransition {
2617     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2618         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2619     }
2620 }
2621 impl ::std::convert::From<ContentThemeTransition> for ::windows::runtime::IInspectable {
2622     fn from(value: ContentThemeTransition) -> Self {
2623         value.0
2624     }
2625 }
2626 impl ::std::convert::From<&ContentThemeTransition> for ::windows::runtime::IInspectable {
2627     fn from(value: &ContentThemeTransition) -> Self {
2628         value.0.clone()
2629     }
2630 }
2631 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ContentThemeTransition {
2632     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2633         ::windows::runtime::Param::Owned(self.0)
2634     }
2635 }
2636 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ContentThemeTransition {
2637     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2638         ::windows::runtime::Param::Borrowed(&self.0)
2639     }
2640 }
2641 impl ::std::convert::From<ContentThemeTransition> for Transition {
2642     fn from(value: ContentThemeTransition) -> Self {
2643         ::std::convert::Into::<Transition>::into(&value)
2644     }
2645 }
2646 impl ::std::convert::From<&ContentThemeTransition> for Transition {
2647     fn from(value: &ContentThemeTransition) -> Self {
2648         ::windows::runtime::Interface::cast(value).unwrap()
2649     }
2650 }
2651 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for ContentThemeTransition {
2652     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
2653         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(self))
2654     }
2655 }
2656 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for &ContentThemeTransition {
2657     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
2658         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(::std::clone::Clone::clone(self)))
2659     }
2660 }
2661 impl ::std::convert::From<ContentThemeTransition> for super::super::DependencyObject {
2662     fn from(value: ContentThemeTransition) -> Self {
2663         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
2664     }
2665 }
2666 impl ::std::convert::From<&ContentThemeTransition> for super::super::DependencyObject {
2667     fn from(value: &ContentThemeTransition) -> Self {
2668         ::windows::runtime::Interface::cast(value).unwrap()
2669     }
2670 }
2671 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ContentThemeTransition {
2672     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
2673         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
2674     }
2675 }
2676 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ContentThemeTransition {
2677     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
2678         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
2679     }
2680 }
2681 unsafe impl ::std::marker::Send for ContentThemeTransition {}
2682 unsafe impl ::std::marker::Sync for ContentThemeTransition {}
2683 #[repr(transparent)]
2684 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2685 pub struct ContinuumNavigationTransitionInfo(::windows::runtime::IInspectable);
2686 impl ContinuumNavigationTransitionInfo {
2687     pub fn new() -> ::windows::runtime::Result<Self> {
2688         Self::IActivationFactory(|f| f.activate_instance::<Self>())
2689     }
2690     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2691         static mut SHARED: ::windows::runtime::FactoryCache<ContinuumNavigationTransitionInfo, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
2692         unsafe { SHARED.call(callback) }
2693     }
2694     pub fn ExitElement(&self) -> ::windows::runtime::Result<super::super::UIElement> {
2695         let this = self;
2696         unsafe {
2697             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2698             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::UIElement>(result__)
2699         }
2700     }
2701     pub fn SetExitElement<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2702         let this = self;
2703         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2704     }
2705     pub fn ExitElementProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
2706         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe {
2707             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2708             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
2709         })
2710     }
2711     pub fn IsEntranceElementProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
2712         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe {
2713             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2714             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
2715         })
2716     }
2717     pub fn GetIsEntranceElement<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(element: Param0) -> ::windows::runtime::Result<bool> {
2718         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe {
2719             let mut result__: bool = ::std::mem::zeroed();
2720             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), element.into_param().abi(), &mut result__).from_abi::<bool>(result__)
2721         })
2722     }
2723     pub fn SetIsEntranceElement<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(element: Param0, value: bool) -> ::windows::runtime::Result<()> {
2724         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), element.into_param().abi(), value).ok() })
2725     }
2726     pub fn IsExitElementProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
2727         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe {
2728             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2729             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
2730         })
2731     }
2732     pub fn GetIsExitElement<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(element: Param0) -> ::windows::runtime::Result<bool> {
2733         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe {
2734             let mut result__: bool = ::std::mem::zeroed();
2735             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), element.into_param().abi(), &mut result__).from_abi::<bool>(result__)
2736         })
2737     }
2738     pub fn SetIsExitElement<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(element: Param0, value: bool) -> ::windows::runtime::Result<()> {
2739         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), element.into_param().abi(), value).ok() })
2740     }
2741     pub fn ExitElementContainerProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
2742         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe {
2743             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2744             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
2745         })
2746     }
2747     #[cfg(feature = "UI_Xaml_Controls")]
2748     pub fn GetExitElementContainer<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Controls::ListViewBase>>(element: Param0) -> ::windows::runtime::Result<bool> {
2749         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe {
2750             let mut result__: bool = ::std::mem::zeroed();
2751             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), element.into_param().abi(), &mut result__).from_abi::<bool>(result__)
2752         })
2753     }
2754     #[cfg(feature = "UI_Xaml_Controls")]
2755     pub fn SetExitElementContainer<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Controls::ListViewBase>>(element: Param0, value: bool) -> ::windows::runtime::Result<()> {
2756         Self::IContinuumNavigationTransitionInfoStatics(|this| unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), element.into_param().abi(), value).ok() })
2757     }
2758     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2759         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2760         unsafe {
2761             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2762             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2763         }
2764     }
2765     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
2766         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2767         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
2768     }
2769     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
2770         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2771         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
2772     }
2773     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2774         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2775         unsafe {
2776             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2777             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2778         }
2779     }
2780     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2781         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2782         unsafe {
2783             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2784             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2785         }
2786     }
2787     #[cfg(feature = "UI_Core")]
2788     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
2789         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2790         unsafe {
2791             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2792             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
2793         }
2794     }
2795     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
2796         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
2797         unsafe {
2798             let mut result__: i64 = ::std::mem::zeroed();
2799             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
2800         }
2801     }
2802     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
2803         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
2804         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
2805     }
2806     pub fn GetNavigationStateCore(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
2807         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
2808         unsafe {
2809             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
2810             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
2811         }
2812     }
2813     pub fn SetNavigationStateCore<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, navigationstate: Param0) -> ::windows::runtime::Result<()> {
2814         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
2815         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), navigationstate.into_param().abi()).ok() }
2816     }
2817     pub fn IContinuumNavigationTransitionInfoStatics<R, F: FnOnce(&IContinuumNavigationTransitionInfoStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2818         static mut SHARED: ::windows::runtime::FactoryCache<ContinuumNavigationTransitionInfo, IContinuumNavigationTransitionInfoStatics> = ::windows::runtime::FactoryCache::new();
2819         unsafe { SHARED.call(callback) }
2820     }
2821 }
2822 unsafe impl ::windows::runtime::RuntimeType for ContinuumNavigationTransitionInfo {
2823     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ContinuumNavigationTransitionInfo;{4be1dbad-8ba6-4004-8438-8a9017978543})");
2824 }
2825 unsafe impl ::windows::runtime::Interface for ContinuumNavigationTransitionInfo {
2826     type Vtable = IContinuumNavigationTransitionInfo_abi;
2827     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1273093037, 35750, 16388, [132, 56, 138, 144, 23, 151, 133, 67]);
2828 }
2829 impl ::windows::runtime::RuntimeName for ContinuumNavigationTransitionInfo {
2830     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ContinuumNavigationTransitionInfo";
2831 }
2832 impl ::std::convert::From<ContinuumNavigationTransitionInfo> for ::windows::runtime::IUnknown {
2833     fn from(value: ContinuumNavigationTransitionInfo) -> Self {
2834         unsafe { ::std::mem::transmute(value) }
2835     }
2836 }
2837 impl ::std::convert::From<&ContinuumNavigationTransitionInfo> for ::windows::runtime::IUnknown {
2838     fn from(value: &ContinuumNavigationTransitionInfo) -> Self {
2839         ::std::convert::From::from(::std::clone::Clone::clone(value))
2840     }
2841 }
2842 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ContinuumNavigationTransitionInfo {
2843     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2844         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2845     }
2846 }
2847 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ContinuumNavigationTransitionInfo {
2848     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2849         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2850     }
2851 }
2852 impl ::std::convert::From<ContinuumNavigationTransitionInfo> for ::windows::runtime::IInspectable {
2853     fn from(value: ContinuumNavigationTransitionInfo) -> Self {
2854         value.0
2855     }
2856 }
2857 impl ::std::convert::From<&ContinuumNavigationTransitionInfo> for ::windows::runtime::IInspectable {
2858     fn from(value: &ContinuumNavigationTransitionInfo) -> Self {
2859         value.0.clone()
2860     }
2861 }
2862 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ContinuumNavigationTransitionInfo {
2863     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2864         ::windows::runtime::Param::Owned(self.0)
2865     }
2866 }
2867 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ContinuumNavigationTransitionInfo {
2868     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2869         ::windows::runtime::Param::Borrowed(&self.0)
2870     }
2871 }
2872 impl ::std::convert::From<ContinuumNavigationTransitionInfo> for NavigationTransitionInfo {
2873     fn from(value: ContinuumNavigationTransitionInfo) -> Self {
2874         ::std::convert::Into::<NavigationTransitionInfo>::into(&value)
2875     }
2876 }
2877 impl ::std::convert::From<&ContinuumNavigationTransitionInfo> for NavigationTransitionInfo {
2878     fn from(value: &ContinuumNavigationTransitionInfo) -> Self {
2879         ::windows::runtime::Interface::cast(value).unwrap()
2880     }
2881 }
2882 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for ContinuumNavigationTransitionInfo {
2883     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
2884         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(self))
2885     }
2886 }
2887 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for &ContinuumNavigationTransitionInfo {
2888     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
2889         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(::std::clone::Clone::clone(self)))
2890     }
2891 }
2892 impl ::std::convert::From<ContinuumNavigationTransitionInfo> for super::super::DependencyObject {
2893     fn from(value: ContinuumNavigationTransitionInfo) -> Self {
2894         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
2895     }
2896 }
2897 impl ::std::convert::From<&ContinuumNavigationTransitionInfo> for super::super::DependencyObject {
2898     fn from(value: &ContinuumNavigationTransitionInfo) -> Self {
2899         ::windows::runtime::Interface::cast(value).unwrap()
2900     }
2901 }
2902 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ContinuumNavigationTransitionInfo {
2903     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
2904         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
2905     }
2906 }
2907 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ContinuumNavigationTransitionInfo {
2908     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
2909         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
2910     }
2911 }
2912 unsafe impl ::std::marker::Send for ContinuumNavigationTransitionInfo {}
2913 unsafe impl ::std::marker::Sync for ContinuumNavigationTransitionInfo {}
2914 #[repr(transparent)]
2915 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2916 pub struct CubicEase(::windows::runtime::IInspectable);
2917 impl CubicEase {
2918     pub fn new() -> ::windows::runtime::Result<Self> {
2919         Self::IActivationFactory(|f| f.activate_instance::<Self>())
2920     }
2921     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2922         static mut SHARED: ::windows::runtime::FactoryCache<CubicEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
2923         unsafe { SHARED.call(callback) }
2924     }
2925     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2926         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2927         unsafe {
2928             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2929             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2930         }
2931     }
2932     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
2933         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2934         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
2935     }
2936     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
2937         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2938         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
2939     }
2940     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2941         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2942         unsafe {
2943             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2944             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2945         }
2946     }
2947     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
2948         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2949         unsafe {
2950             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2951             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
2952         }
2953     }
2954     #[cfg(feature = "UI_Core")]
2955     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
2956         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
2957         unsafe {
2958             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2959             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
2960         }
2961     }
2962     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
2963         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
2964         unsafe {
2965             let mut result__: i64 = ::std::mem::zeroed();
2966             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
2967         }
2968     }
2969     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
2970         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
2971         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
2972     }
2973     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
2974         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
2975         unsafe {
2976             let mut result__: EasingMode = ::std::mem::zeroed();
2977             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
2978         }
2979     }
2980     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
2981         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
2982         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
2983     }
2984     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
2985         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
2986         unsafe {
2987             let mut result__: f64 = ::std::mem::zeroed();
2988             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
2989         }
2990     }
2991 }
2992 unsafe impl ::windows::runtime::RuntimeType for CubicEase {
2993     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.CubicEase;{1b94fc76-dad7-4354-b1a2-7969fbf6a70d})");
2994 }
2995 unsafe impl ::windows::runtime::Interface for CubicEase {
2996     type Vtable = ICubicEase_abi;
2997     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(462748790, 56023, 17236, [177, 162, 121, 105, 251, 246, 167, 13]);
2998 }
2999 impl ::windows::runtime::RuntimeName for CubicEase {
3000     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.CubicEase";
3001 }
3002 impl ::std::convert::From<CubicEase> for ::windows::runtime::IUnknown {
3003     fn from(value: CubicEase) -> Self {
3004         unsafe { ::std::mem::transmute(value) }
3005     }
3006 }
3007 impl ::std::convert::From<&CubicEase> for ::windows::runtime::IUnknown {
3008     fn from(value: &CubicEase) -> Self {
3009         ::std::convert::From::from(::std::clone::Clone::clone(value))
3010     }
3011 }
3012 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CubicEase {
3013     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3014         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3015     }
3016 }
3017 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CubicEase {
3018     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3019         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3020     }
3021 }
3022 impl ::std::convert::From<CubicEase> for ::windows::runtime::IInspectable {
3023     fn from(value: CubicEase) -> Self {
3024         value.0
3025     }
3026 }
3027 impl ::std::convert::From<&CubicEase> for ::windows::runtime::IInspectable {
3028     fn from(value: &CubicEase) -> Self {
3029         value.0.clone()
3030     }
3031 }
3032 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CubicEase {
3033     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3034         ::windows::runtime::Param::Owned(self.0)
3035     }
3036 }
3037 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CubicEase {
3038     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3039         ::windows::runtime::Param::Borrowed(&self.0)
3040     }
3041 }
3042 impl ::std::convert::From<CubicEase> for EasingFunctionBase {
3043     fn from(value: CubicEase) -> Self {
3044         ::std::convert::Into::<EasingFunctionBase>::into(&value)
3045     }
3046 }
3047 impl ::std::convert::From<&CubicEase> for EasingFunctionBase {
3048     fn from(value: &CubicEase) -> Self {
3049         ::windows::runtime::Interface::cast(value).unwrap()
3050     }
3051 }
3052 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for CubicEase {
3053     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
3054         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
3055     }
3056 }
3057 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &CubicEase {
3058     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
3059         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
3060     }
3061 }
3062 impl ::std::convert::From<CubicEase> for super::super::DependencyObject {
3063     fn from(value: CubicEase) -> Self {
3064         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
3065     }
3066 }
3067 impl ::std::convert::From<&CubicEase> for super::super::DependencyObject {
3068     fn from(value: &CubicEase) -> Self {
3069         ::windows::runtime::Interface::cast(value).unwrap()
3070     }
3071 }
3072 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for CubicEase {
3073     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3074         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
3075     }
3076 }
3077 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &CubicEase {
3078     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3079         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
3080     }
3081 }
3082 unsafe impl ::std::marker::Send for CubicEase {}
3083 unsafe impl ::std::marker::Sync for CubicEase {}
3084 #[repr(transparent)]
3085 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3086 pub struct DirectConnectedAnimationConfiguration(::windows::runtime::IInspectable);
3087 impl DirectConnectedAnimationConfiguration {
3088     pub fn new() -> ::windows::runtime::Result<DirectConnectedAnimationConfiguration> {
3089         Self::IDirectConnectedAnimationConfigurationFactory(|this| unsafe {
3090             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3091             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), ::std::ptr::null_mut(), &mut ::std::option::Option::<::windows::runtime::IInspectable>::None as *mut _ as _, &mut result__).from_abi::<DirectConnectedAnimationConfiguration>(result__)
3092         })
3093     }
3094     pub fn IDirectConnectedAnimationConfigurationFactory<R, F: FnOnce(&IDirectConnectedAnimationConfigurationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3095         static mut SHARED: ::windows::runtime::FactoryCache<DirectConnectedAnimationConfiguration, IDirectConnectedAnimationConfigurationFactory> = ::windows::runtime::FactoryCache::new();
3096         unsafe { SHARED.call(callback) }
3097     }
3098 }
3099 unsafe impl ::windows::runtime::RuntimeType for DirectConnectedAnimationConfiguration {
3100     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DirectConnectedAnimationConfiguration;{ee5d736f-5738-5d86-b770-151948cf365e})");
3101 }
3102 unsafe impl ::windows::runtime::Interface for DirectConnectedAnimationConfiguration {
3103     type Vtable = IDirectConnectedAnimationConfiguration_abi;
3104     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3999101807, 22328, 23942, [183, 112, 21, 25, 72, 207, 54, 94]);
3105 }
3106 impl ::windows::runtime::RuntimeName for DirectConnectedAnimationConfiguration {
3107     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DirectConnectedAnimationConfiguration";
3108 }
3109 impl ::std::convert::From<DirectConnectedAnimationConfiguration> for ::windows::runtime::IUnknown {
3110     fn from(value: DirectConnectedAnimationConfiguration) -> Self {
3111         unsafe { ::std::mem::transmute(value) }
3112     }
3113 }
3114 impl ::std::convert::From<&DirectConnectedAnimationConfiguration> for ::windows::runtime::IUnknown {
3115     fn from(value: &DirectConnectedAnimationConfiguration) -> Self {
3116         ::std::convert::From::from(::std::clone::Clone::clone(value))
3117     }
3118 }
3119 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DirectConnectedAnimationConfiguration {
3120     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3121         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3122     }
3123 }
3124 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DirectConnectedAnimationConfiguration {
3125     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3126         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3127     }
3128 }
3129 impl ::std::convert::From<DirectConnectedAnimationConfiguration> for ::windows::runtime::IInspectable {
3130     fn from(value: DirectConnectedAnimationConfiguration) -> Self {
3131         value.0
3132     }
3133 }
3134 impl ::std::convert::From<&DirectConnectedAnimationConfiguration> for ::windows::runtime::IInspectable {
3135     fn from(value: &DirectConnectedAnimationConfiguration) -> Self {
3136         value.0.clone()
3137     }
3138 }
3139 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DirectConnectedAnimationConfiguration {
3140     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3141         ::windows::runtime::Param::Owned(self.0)
3142     }
3143 }
3144 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DirectConnectedAnimationConfiguration {
3145     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3146         ::windows::runtime::Param::Borrowed(&self.0)
3147     }
3148 }
3149 impl ::std::convert::From<DirectConnectedAnimationConfiguration> for ConnectedAnimationConfiguration {
3150     fn from(value: DirectConnectedAnimationConfiguration) -> Self {
3151         ::std::convert::Into::<ConnectedAnimationConfiguration>::into(&value)
3152     }
3153 }
3154 impl ::std::convert::From<&DirectConnectedAnimationConfiguration> for ConnectedAnimationConfiguration {
3155     fn from(value: &DirectConnectedAnimationConfiguration) -> Self {
3156         ::windows::runtime::Interface::cast(value).unwrap()
3157     }
3158 }
3159 impl<'a> ::windows::runtime::IntoParam<'a, ConnectedAnimationConfiguration> for DirectConnectedAnimationConfiguration {
3160     fn into_param(self) -> ::windows::runtime::Param<'a, ConnectedAnimationConfiguration> {
3161         ::windows::runtime::Param::Owned(::std::convert::Into::<ConnectedAnimationConfiguration>::into(self))
3162     }
3163 }
3164 impl<'a> ::windows::runtime::IntoParam<'a, ConnectedAnimationConfiguration> for &DirectConnectedAnimationConfiguration {
3165     fn into_param(self) -> ::windows::runtime::Param<'a, ConnectedAnimationConfiguration> {
3166         ::windows::runtime::Param::Owned(::std::convert::Into::<ConnectedAnimationConfiguration>::into(::std::clone::Clone::clone(self)))
3167     }
3168 }
3169 unsafe impl ::std::marker::Send for DirectConnectedAnimationConfiguration {}
3170 unsafe impl ::std::marker::Sync for DirectConnectedAnimationConfiguration {}
3171 #[repr(transparent)]
3172 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3173 pub struct DiscreteColorKeyFrame(::windows::runtime::IInspectable);
3174 impl DiscreteColorKeyFrame {
3175     pub fn new() -> ::windows::runtime::Result<Self> {
3176         Self::IActivationFactory(|f| f.activate_instance::<Self>())
3177     }
3178     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3179         static mut SHARED: ::windows::runtime::FactoryCache<DiscreteColorKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
3180         unsafe { SHARED.call(callback) }
3181     }
3182     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3183         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3184         unsafe {
3185             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3186             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3187         }
3188     }
3189     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
3190         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3191         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
3192     }
3193     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
3194         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3195         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
3196     }
3197     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3198         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3199         unsafe {
3200             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3201             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3202         }
3203     }
3204     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3205         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3206         unsafe {
3207             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3208             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3209         }
3210     }
3211     #[cfg(feature = "UI_Core")]
3212     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
3213         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3214         unsafe {
3215             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3216             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
3217         }
3218     }
3219     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
3220         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
3221         unsafe {
3222             let mut result__: i64 = ::std::mem::zeroed();
3223             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
3224         }
3225     }
3226     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
3227         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
3228         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
3229     }
3230     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::Color> {
3231         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
3232         unsafe {
3233             let mut result__: super::super::super::Color = ::std::mem::zeroed();
3234             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Color>(result__)
3235         }
3236     }
3237     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Color>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3238         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
3239         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3240     }
3241     #[cfg(feature = "Foundation")]
3242     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
3243         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
3244         unsafe {
3245             let mut result__: KeyTime = ::std::mem::zeroed();
3246             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
3247         }
3248     }
3249     #[cfg(feature = "Foundation")]
3250     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3251         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
3252         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3253     }
3254 }
3255 unsafe impl ::windows::runtime::RuntimeType for DiscreteColorKeyFrame {
3256     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DiscreteColorKeyFrame;{230c08f4-e062-4cb1-8e2a-14093d73ed8c})");
3257 }
3258 unsafe impl ::windows::runtime::Interface for DiscreteColorKeyFrame {
3259     type Vtable = IDiscreteColorKeyFrame_abi;
3260     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(587991284, 57442, 19633, [142, 42, 20, 9, 61, 115, 237, 140]);
3261 }
3262 impl ::windows::runtime::RuntimeName for DiscreteColorKeyFrame {
3263     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DiscreteColorKeyFrame";
3264 }
3265 impl ::std::convert::From<DiscreteColorKeyFrame> for ::windows::runtime::IUnknown {
3266     fn from(value: DiscreteColorKeyFrame) -> Self {
3267         unsafe { ::std::mem::transmute(value) }
3268     }
3269 }
3270 impl ::std::convert::From<&DiscreteColorKeyFrame> for ::windows::runtime::IUnknown {
3271     fn from(value: &DiscreteColorKeyFrame) -> Self {
3272         ::std::convert::From::from(::std::clone::Clone::clone(value))
3273     }
3274 }
3275 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DiscreteColorKeyFrame {
3276     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3277         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3278     }
3279 }
3280 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DiscreteColorKeyFrame {
3281     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3282         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3283     }
3284 }
3285 impl ::std::convert::From<DiscreteColorKeyFrame> for ::windows::runtime::IInspectable {
3286     fn from(value: DiscreteColorKeyFrame) -> Self {
3287         value.0
3288     }
3289 }
3290 impl ::std::convert::From<&DiscreteColorKeyFrame> for ::windows::runtime::IInspectable {
3291     fn from(value: &DiscreteColorKeyFrame) -> Self {
3292         value.0.clone()
3293     }
3294 }
3295 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DiscreteColorKeyFrame {
3296     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3297         ::windows::runtime::Param::Owned(self.0)
3298     }
3299 }
3300 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DiscreteColorKeyFrame {
3301     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3302         ::windows::runtime::Param::Borrowed(&self.0)
3303     }
3304 }
3305 impl ::std::convert::From<DiscreteColorKeyFrame> for ColorKeyFrame {
3306     fn from(value: DiscreteColorKeyFrame) -> Self {
3307         ::std::convert::Into::<ColorKeyFrame>::into(&value)
3308     }
3309 }
3310 impl ::std::convert::From<&DiscreteColorKeyFrame> for ColorKeyFrame {
3311     fn from(value: &DiscreteColorKeyFrame) -> Self {
3312         ::windows::runtime::Interface::cast(value).unwrap()
3313     }
3314 }
3315 impl<'a> ::windows::runtime::IntoParam<'a, ColorKeyFrame> for DiscreteColorKeyFrame {
3316     fn into_param(self) -> ::windows::runtime::Param<'a, ColorKeyFrame> {
3317         ::windows::runtime::Param::Owned(::std::convert::Into::<ColorKeyFrame>::into(self))
3318     }
3319 }
3320 impl<'a> ::windows::runtime::IntoParam<'a, ColorKeyFrame> for &DiscreteColorKeyFrame {
3321     fn into_param(self) -> ::windows::runtime::Param<'a, ColorKeyFrame> {
3322         ::windows::runtime::Param::Owned(::std::convert::Into::<ColorKeyFrame>::into(::std::clone::Clone::clone(self)))
3323     }
3324 }
3325 impl ::std::convert::From<DiscreteColorKeyFrame> for super::super::DependencyObject {
3326     fn from(value: DiscreteColorKeyFrame) -> Self {
3327         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
3328     }
3329 }
3330 impl ::std::convert::From<&DiscreteColorKeyFrame> for super::super::DependencyObject {
3331     fn from(value: &DiscreteColorKeyFrame) -> Self {
3332         ::windows::runtime::Interface::cast(value).unwrap()
3333     }
3334 }
3335 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DiscreteColorKeyFrame {
3336     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3337         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
3338     }
3339 }
3340 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DiscreteColorKeyFrame {
3341     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3342         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
3343     }
3344 }
3345 unsafe impl ::std::marker::Send for DiscreteColorKeyFrame {}
3346 unsafe impl ::std::marker::Sync for DiscreteColorKeyFrame {}
3347 #[repr(transparent)]
3348 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3349 pub struct DiscreteDoubleKeyFrame(::windows::runtime::IInspectable);
3350 impl DiscreteDoubleKeyFrame {
3351     pub fn new() -> ::windows::runtime::Result<Self> {
3352         Self::IActivationFactory(|f| f.activate_instance::<Self>())
3353     }
3354     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3355         static mut SHARED: ::windows::runtime::FactoryCache<DiscreteDoubleKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
3356         unsafe { SHARED.call(callback) }
3357     }
3358     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3359         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3360         unsafe {
3361             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3362             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3363         }
3364     }
3365     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
3366         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3367         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
3368     }
3369     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
3370         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3371         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
3372     }
3373     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3374         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3375         unsafe {
3376             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3377             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3378         }
3379     }
3380     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3381         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3382         unsafe {
3383             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3384             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3385         }
3386     }
3387     #[cfg(feature = "UI_Core")]
3388     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
3389         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3390         unsafe {
3391             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3392             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
3393         }
3394     }
3395     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
3396         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
3397         unsafe {
3398             let mut result__: i64 = ::std::mem::zeroed();
3399             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
3400         }
3401     }
3402     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
3403         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
3404         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
3405     }
3406     pub fn Value(&self) -> ::windows::runtime::Result<f64> {
3407         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
3408         unsafe {
3409             let mut result__: f64 = ::std::mem::zeroed();
3410             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
3411         }
3412     }
3413     pub fn SetValue2(&self, value: f64) -> ::windows::runtime::Result<()> {
3414         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
3415         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
3416     }
3417     #[cfg(feature = "Foundation")]
3418     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
3419         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
3420         unsafe {
3421             let mut result__: KeyTime = ::std::mem::zeroed();
3422             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
3423         }
3424     }
3425     #[cfg(feature = "Foundation")]
3426     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3427         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
3428         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3429     }
3430 }
3431 unsafe impl ::windows::runtime::RuntimeType for DiscreteDoubleKeyFrame {
3432     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DiscreteDoubleKeyFrame;{f5f51f3a-ad11-49ce-8e1c-08fdf1447446})");
3433 }
3434 unsafe impl ::windows::runtime::Interface for DiscreteDoubleKeyFrame {
3435     type Vtable = IDiscreteDoubleKeyFrame_abi;
3436     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4126482234, 44305, 18894, [142, 28, 8, 253, 241, 68, 116, 70]);
3437 }
3438 impl ::windows::runtime::RuntimeName for DiscreteDoubleKeyFrame {
3439     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DiscreteDoubleKeyFrame";
3440 }
3441 impl ::std::convert::From<DiscreteDoubleKeyFrame> for ::windows::runtime::IUnknown {
3442     fn from(value: DiscreteDoubleKeyFrame) -> Self {
3443         unsafe { ::std::mem::transmute(value) }
3444     }
3445 }
3446 impl ::std::convert::From<&DiscreteDoubleKeyFrame> for ::windows::runtime::IUnknown {
3447     fn from(value: &DiscreteDoubleKeyFrame) -> Self {
3448         ::std::convert::From::from(::std::clone::Clone::clone(value))
3449     }
3450 }
3451 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DiscreteDoubleKeyFrame {
3452     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3453         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3454     }
3455 }
3456 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DiscreteDoubleKeyFrame {
3457     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3458         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3459     }
3460 }
3461 impl ::std::convert::From<DiscreteDoubleKeyFrame> for ::windows::runtime::IInspectable {
3462     fn from(value: DiscreteDoubleKeyFrame) -> Self {
3463         value.0
3464     }
3465 }
3466 impl ::std::convert::From<&DiscreteDoubleKeyFrame> for ::windows::runtime::IInspectable {
3467     fn from(value: &DiscreteDoubleKeyFrame) -> Self {
3468         value.0.clone()
3469     }
3470 }
3471 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DiscreteDoubleKeyFrame {
3472     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3473         ::windows::runtime::Param::Owned(self.0)
3474     }
3475 }
3476 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DiscreteDoubleKeyFrame {
3477     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3478         ::windows::runtime::Param::Borrowed(&self.0)
3479     }
3480 }
3481 impl ::std::convert::From<DiscreteDoubleKeyFrame> for DoubleKeyFrame {
3482     fn from(value: DiscreteDoubleKeyFrame) -> Self {
3483         ::std::convert::Into::<DoubleKeyFrame>::into(&value)
3484     }
3485 }
3486 impl ::std::convert::From<&DiscreteDoubleKeyFrame> for DoubleKeyFrame {
3487     fn from(value: &DiscreteDoubleKeyFrame) -> Self {
3488         ::windows::runtime::Interface::cast(value).unwrap()
3489     }
3490 }
3491 impl<'a> ::windows::runtime::IntoParam<'a, DoubleKeyFrame> for DiscreteDoubleKeyFrame {
3492     fn into_param(self) -> ::windows::runtime::Param<'a, DoubleKeyFrame> {
3493         ::windows::runtime::Param::Owned(::std::convert::Into::<DoubleKeyFrame>::into(self))
3494     }
3495 }
3496 impl<'a> ::windows::runtime::IntoParam<'a, DoubleKeyFrame> for &DiscreteDoubleKeyFrame {
3497     fn into_param(self) -> ::windows::runtime::Param<'a, DoubleKeyFrame> {
3498         ::windows::runtime::Param::Owned(::std::convert::Into::<DoubleKeyFrame>::into(::std::clone::Clone::clone(self)))
3499     }
3500 }
3501 impl ::std::convert::From<DiscreteDoubleKeyFrame> for super::super::DependencyObject {
3502     fn from(value: DiscreteDoubleKeyFrame) -> Self {
3503         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
3504     }
3505 }
3506 impl ::std::convert::From<&DiscreteDoubleKeyFrame> for super::super::DependencyObject {
3507     fn from(value: &DiscreteDoubleKeyFrame) -> Self {
3508         ::windows::runtime::Interface::cast(value).unwrap()
3509     }
3510 }
3511 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DiscreteDoubleKeyFrame {
3512     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3513         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
3514     }
3515 }
3516 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DiscreteDoubleKeyFrame {
3517     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3518         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
3519     }
3520 }
3521 unsafe impl ::std::marker::Send for DiscreteDoubleKeyFrame {}
3522 unsafe impl ::std::marker::Sync for DiscreteDoubleKeyFrame {}
3523 #[repr(transparent)]
3524 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3525 pub struct DiscreteObjectKeyFrame(::windows::runtime::IInspectable);
3526 impl DiscreteObjectKeyFrame {
3527     pub fn new() -> ::windows::runtime::Result<Self> {
3528         Self::IActivationFactory(|f| f.activate_instance::<Self>())
3529     }
3530     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3531         static mut SHARED: ::windows::runtime::FactoryCache<DiscreteObjectKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
3532         unsafe { SHARED.call(callback) }
3533     }
3534     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3535         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3536         unsafe {
3537             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3538             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3539         }
3540     }
3541     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
3542         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3543         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
3544     }
3545     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
3546         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3547         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
3548     }
3549     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3550         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3551         unsafe {
3552             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3553             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3554         }
3555     }
3556     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3557         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3558         unsafe {
3559             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3560             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3561         }
3562     }
3563     #[cfg(feature = "UI_Core")]
3564     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
3565         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3566         unsafe {
3567             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3568             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
3569         }
3570     }
3571     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
3572         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
3573         unsafe {
3574             let mut result__: i64 = ::std::mem::zeroed();
3575             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
3576         }
3577     }
3578     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
3579         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
3580         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
3581     }
3582     pub fn Value(&self) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3583         let this = &::windows::runtime::Interface::cast::<IObjectKeyFrame>(self)?;
3584         unsafe {
3585             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3586             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3587         }
3588     }
3589     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3590         let this = &::windows::runtime::Interface::cast::<IObjectKeyFrame>(self)?;
3591         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3592     }
3593     #[cfg(feature = "Foundation")]
3594     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
3595         let this = &::windows::runtime::Interface::cast::<IObjectKeyFrame>(self)?;
3596         unsafe {
3597             let mut result__: KeyTime = ::std::mem::zeroed();
3598             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
3599         }
3600     }
3601     #[cfg(feature = "Foundation")]
3602     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3603         let this = &::windows::runtime::Interface::cast::<IObjectKeyFrame>(self)?;
3604         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3605     }
3606 }
3607 unsafe impl ::windows::runtime::RuntimeType for DiscreteObjectKeyFrame {
3608     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DiscreteObjectKeyFrame;{c7dcde89-f12d-4a9c-8199-e7a9ece3a473})");
3609 }
3610 unsafe impl ::windows::runtime::Interface for DiscreteObjectKeyFrame {
3611     type Vtable = IDiscreteObjectKeyFrame_abi;
3612     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3353140873, 61741, 19100, [129, 153, 231, 169, 236, 227, 164, 115]);
3613 }
3614 impl ::windows::runtime::RuntimeName for DiscreteObjectKeyFrame {
3615     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DiscreteObjectKeyFrame";
3616 }
3617 impl ::std::convert::From<DiscreteObjectKeyFrame> for ::windows::runtime::IUnknown {
3618     fn from(value: DiscreteObjectKeyFrame) -> Self {
3619         unsafe { ::std::mem::transmute(value) }
3620     }
3621 }
3622 impl ::std::convert::From<&DiscreteObjectKeyFrame> for ::windows::runtime::IUnknown {
3623     fn from(value: &DiscreteObjectKeyFrame) -> Self {
3624         ::std::convert::From::from(::std::clone::Clone::clone(value))
3625     }
3626 }
3627 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DiscreteObjectKeyFrame {
3628     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3629         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3630     }
3631 }
3632 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DiscreteObjectKeyFrame {
3633     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3634         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3635     }
3636 }
3637 impl ::std::convert::From<DiscreteObjectKeyFrame> for ::windows::runtime::IInspectable {
3638     fn from(value: DiscreteObjectKeyFrame) -> Self {
3639         value.0
3640     }
3641 }
3642 impl ::std::convert::From<&DiscreteObjectKeyFrame> for ::windows::runtime::IInspectable {
3643     fn from(value: &DiscreteObjectKeyFrame) -> Self {
3644         value.0.clone()
3645     }
3646 }
3647 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DiscreteObjectKeyFrame {
3648     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3649         ::windows::runtime::Param::Owned(self.0)
3650     }
3651 }
3652 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DiscreteObjectKeyFrame {
3653     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3654         ::windows::runtime::Param::Borrowed(&self.0)
3655     }
3656 }
3657 impl ::std::convert::From<DiscreteObjectKeyFrame> for ObjectKeyFrame {
3658     fn from(value: DiscreteObjectKeyFrame) -> Self {
3659         ::std::convert::Into::<ObjectKeyFrame>::into(&value)
3660     }
3661 }
3662 impl ::std::convert::From<&DiscreteObjectKeyFrame> for ObjectKeyFrame {
3663     fn from(value: &DiscreteObjectKeyFrame) -> Self {
3664         ::windows::runtime::Interface::cast(value).unwrap()
3665     }
3666 }
3667 impl<'a> ::windows::runtime::IntoParam<'a, ObjectKeyFrame> for DiscreteObjectKeyFrame {
3668     fn into_param(self) -> ::windows::runtime::Param<'a, ObjectKeyFrame> {
3669         ::windows::runtime::Param::Owned(::std::convert::Into::<ObjectKeyFrame>::into(self))
3670     }
3671 }
3672 impl<'a> ::windows::runtime::IntoParam<'a, ObjectKeyFrame> for &DiscreteObjectKeyFrame {
3673     fn into_param(self) -> ::windows::runtime::Param<'a, ObjectKeyFrame> {
3674         ::windows::runtime::Param::Owned(::std::convert::Into::<ObjectKeyFrame>::into(::std::clone::Clone::clone(self)))
3675     }
3676 }
3677 impl ::std::convert::From<DiscreteObjectKeyFrame> for super::super::DependencyObject {
3678     fn from(value: DiscreteObjectKeyFrame) -> Self {
3679         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
3680     }
3681 }
3682 impl ::std::convert::From<&DiscreteObjectKeyFrame> for super::super::DependencyObject {
3683     fn from(value: &DiscreteObjectKeyFrame) -> Self {
3684         ::windows::runtime::Interface::cast(value).unwrap()
3685     }
3686 }
3687 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DiscreteObjectKeyFrame {
3688     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3689         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
3690     }
3691 }
3692 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DiscreteObjectKeyFrame {
3693     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3694         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
3695     }
3696 }
3697 unsafe impl ::std::marker::Send for DiscreteObjectKeyFrame {}
3698 unsafe impl ::std::marker::Sync for DiscreteObjectKeyFrame {}
3699 #[repr(transparent)]
3700 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3701 pub struct DiscretePointKeyFrame(::windows::runtime::IInspectable);
3702 impl DiscretePointKeyFrame {
3703     pub fn new() -> ::windows::runtime::Result<Self> {
3704         Self::IActivationFactory(|f| f.activate_instance::<Self>())
3705     }
3706     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3707         static mut SHARED: ::windows::runtime::FactoryCache<DiscretePointKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
3708         unsafe { SHARED.call(callback) }
3709     }
3710     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3711         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3712         unsafe {
3713             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3714             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3715         }
3716     }
3717     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
3718         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3719         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
3720     }
3721     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
3722         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3723         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
3724     }
3725     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3726         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3727         unsafe {
3728             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3729             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3730         }
3731     }
3732     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3733         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3734         unsafe {
3735             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3736             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3737         }
3738     }
3739     #[cfg(feature = "UI_Core")]
3740     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
3741         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3742         unsafe {
3743             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3744             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
3745         }
3746     }
3747     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
3748         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
3749         unsafe {
3750             let mut result__: i64 = ::std::mem::zeroed();
3751             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
3752         }
3753     }
3754     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
3755         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
3756         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
3757     }
3758     #[cfg(feature = "Foundation")]
3759     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Point> {
3760         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
3761         unsafe {
3762             let mut result__: super::super::super::super::Foundation::Point = ::std::mem::zeroed();
3763             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Point>(result__)
3764         }
3765     }
3766     #[cfg(feature = "Foundation")]
3767     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Point>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3768         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
3769         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3770     }
3771     #[cfg(feature = "Foundation")]
3772     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
3773         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
3774         unsafe {
3775             let mut result__: KeyTime = ::std::mem::zeroed();
3776             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
3777         }
3778     }
3779     #[cfg(feature = "Foundation")]
3780     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3781         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
3782         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3783     }
3784 }
3785 unsafe impl ::windows::runtime::RuntimeType for DiscretePointKeyFrame {
3786     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DiscretePointKeyFrame;{e0a9070d-4c42-4a90-983a-75f5a83a2fbe})");
3787 }
3788 unsafe impl ::windows::runtime::Interface for DiscretePointKeyFrame {
3789     type Vtable = IDiscretePointKeyFrame_abi;
3790     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3769173773, 19522, 19088, [152, 58, 117, 245, 168, 58, 47, 190]);
3791 }
3792 impl ::windows::runtime::RuntimeName for DiscretePointKeyFrame {
3793     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DiscretePointKeyFrame";
3794 }
3795 impl ::std::convert::From<DiscretePointKeyFrame> for ::windows::runtime::IUnknown {
3796     fn from(value: DiscretePointKeyFrame) -> Self {
3797         unsafe { ::std::mem::transmute(value) }
3798     }
3799 }
3800 impl ::std::convert::From<&DiscretePointKeyFrame> for ::windows::runtime::IUnknown {
3801     fn from(value: &DiscretePointKeyFrame) -> Self {
3802         ::std::convert::From::from(::std::clone::Clone::clone(value))
3803     }
3804 }
3805 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DiscretePointKeyFrame {
3806     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3807         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3808     }
3809 }
3810 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DiscretePointKeyFrame {
3811     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3812         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3813     }
3814 }
3815 impl ::std::convert::From<DiscretePointKeyFrame> for ::windows::runtime::IInspectable {
3816     fn from(value: DiscretePointKeyFrame) -> Self {
3817         value.0
3818     }
3819 }
3820 impl ::std::convert::From<&DiscretePointKeyFrame> for ::windows::runtime::IInspectable {
3821     fn from(value: &DiscretePointKeyFrame) -> Self {
3822         value.0.clone()
3823     }
3824 }
3825 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DiscretePointKeyFrame {
3826     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3827         ::windows::runtime::Param::Owned(self.0)
3828     }
3829 }
3830 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DiscretePointKeyFrame {
3831     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3832         ::windows::runtime::Param::Borrowed(&self.0)
3833     }
3834 }
3835 impl ::std::convert::From<DiscretePointKeyFrame> for PointKeyFrame {
3836     fn from(value: DiscretePointKeyFrame) -> Self {
3837         ::std::convert::Into::<PointKeyFrame>::into(&value)
3838     }
3839 }
3840 impl ::std::convert::From<&DiscretePointKeyFrame> for PointKeyFrame {
3841     fn from(value: &DiscretePointKeyFrame) -> Self {
3842         ::windows::runtime::Interface::cast(value).unwrap()
3843     }
3844 }
3845 impl<'a> ::windows::runtime::IntoParam<'a, PointKeyFrame> for DiscretePointKeyFrame {
3846     fn into_param(self) -> ::windows::runtime::Param<'a, PointKeyFrame> {
3847         ::windows::runtime::Param::Owned(::std::convert::Into::<PointKeyFrame>::into(self))
3848     }
3849 }
3850 impl<'a> ::windows::runtime::IntoParam<'a, PointKeyFrame> for &DiscretePointKeyFrame {
3851     fn into_param(self) -> ::windows::runtime::Param<'a, PointKeyFrame> {
3852         ::windows::runtime::Param::Owned(::std::convert::Into::<PointKeyFrame>::into(::std::clone::Clone::clone(self)))
3853     }
3854 }
3855 impl ::std::convert::From<DiscretePointKeyFrame> for super::super::DependencyObject {
3856     fn from(value: DiscretePointKeyFrame) -> Self {
3857         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
3858     }
3859 }
3860 impl ::std::convert::From<&DiscretePointKeyFrame> for super::super::DependencyObject {
3861     fn from(value: &DiscretePointKeyFrame) -> Self {
3862         ::windows::runtime::Interface::cast(value).unwrap()
3863     }
3864 }
3865 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DiscretePointKeyFrame {
3866     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3867         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
3868     }
3869 }
3870 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DiscretePointKeyFrame {
3871     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
3872         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
3873     }
3874 }
3875 unsafe impl ::std::marker::Send for DiscretePointKeyFrame {}
3876 unsafe impl ::std::marker::Sync for DiscretePointKeyFrame {}
3877 #[repr(transparent)]
3878 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3879 pub struct DoubleAnimation(::windows::runtime::IInspectable);
3880 impl DoubleAnimation {
3881     pub fn new() -> ::windows::runtime::Result<Self> {
3882         Self::IActivationFactory(|f| f.activate_instance::<Self>())
3883     }
3884     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3885         static mut SHARED: ::windows::runtime::FactoryCache<DoubleAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
3886         unsafe { SHARED.call(callback) }
3887     }
3888     #[cfg(feature = "Foundation")]
3889     pub fn From(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<f64>> {
3890         let this = self;
3891         unsafe {
3892             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3893             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<f64>>(result__)
3894         }
3895     }
3896     #[cfg(feature = "Foundation")]
3897     pub fn SetFrom<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<f64>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3898         let this = self;
3899         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3900     }
3901     #[cfg(feature = "Foundation")]
3902     pub fn To(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<f64>> {
3903         let this = self;
3904         unsafe {
3905             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3906             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<f64>>(result__)
3907         }
3908     }
3909     #[cfg(feature = "Foundation")]
3910     pub fn SetTo<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<f64>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3911         let this = self;
3912         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3913     }
3914     #[cfg(feature = "Foundation")]
3915     pub fn By(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<f64>> {
3916         let this = self;
3917         unsafe {
3918             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3919             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<f64>>(result__)
3920         }
3921     }
3922     #[cfg(feature = "Foundation")]
3923     pub fn SetBy<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<f64>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3924         let this = self;
3925         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3926     }
3927     pub fn EasingFunction(&self) -> ::windows::runtime::Result<EasingFunctionBase> {
3928         let this = self;
3929         unsafe {
3930             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3931             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingFunctionBase>(result__)
3932         }
3933     }
3934     pub fn SetEasingFunction<'a, Param0: ::windows::runtime::IntoParam<'a, EasingFunctionBase>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3935         let this = self;
3936         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3937     }
3938     pub fn EnableDependentAnimation(&self) -> ::windows::runtime::Result<bool> {
3939         let this = self;
3940         unsafe {
3941             let mut result__: bool = ::std::mem::zeroed();
3942             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3943         }
3944     }
3945     pub fn SetEnableDependentAnimation(&self, value: bool) -> ::windows::runtime::Result<()> {
3946         let this = self;
3947         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
3948     }
3949     pub fn FromProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
3950         Self::IDoubleAnimationStatics(|this| unsafe {
3951             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3952             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
3953         })
3954     }
3955     pub fn ToProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
3956         Self::IDoubleAnimationStatics(|this| unsafe {
3957             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3958             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
3959         })
3960     }
3961     pub fn ByProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
3962         Self::IDoubleAnimationStatics(|this| unsafe {
3963             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3964             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
3965         })
3966     }
3967     pub fn EasingFunctionProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
3968         Self::IDoubleAnimationStatics(|this| unsafe {
3969             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3970             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
3971         })
3972     }
3973     pub fn EnableDependentAnimationProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
3974         Self::IDoubleAnimationStatics(|this| unsafe {
3975             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3976             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
3977         })
3978     }
3979     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3980         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3981         unsafe {
3982             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3983             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3984         }
3985     }
3986     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
3987         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3988         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
3989     }
3990     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
3991         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3992         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
3993     }
3994     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
3995         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
3996         unsafe {
3997             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3998             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
3999         }
4000     }
4001     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4002         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4003         unsafe {
4004             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4005             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4006         }
4007     }
4008     #[cfg(feature = "UI_Core")]
4009     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
4010         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4011         unsafe {
4012             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4013             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
4014         }
4015     }
4016     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
4017         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
4018         unsafe {
4019             let mut result__: i64 = ::std::mem::zeroed();
4020             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
4021         }
4022     }
4023     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
4024         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
4025         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
4026     }
4027     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
4028         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4029         unsafe {
4030             let mut result__: bool = ::std::mem::zeroed();
4031             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4032         }
4033     }
4034     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
4035         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4036         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
4037     }
4038     #[cfg(feature = "Foundation")]
4039     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
4040         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4041         unsafe {
4042             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4043             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
4044         }
4045     }
4046     #[cfg(feature = "Foundation")]
4047     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4048         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4049         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4050     }
4051     #[cfg(feature = "Foundation")]
4052     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
4053         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4054         unsafe {
4055             let mut result__: super::super::Duration = ::std::mem::zeroed();
4056             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
4057         }
4058     }
4059     #[cfg(feature = "Foundation")]
4060     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4061         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4062         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4063     }
4064     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
4065         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4066         unsafe {
4067             let mut result__: f64 = ::std::mem::zeroed();
4068             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
4069         }
4070     }
4071     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
4072         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4073         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
4074     }
4075     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
4076         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4077         unsafe {
4078             let mut result__: FillBehavior = ::std::mem::zeroed();
4079             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
4080         }
4081     }
4082     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
4083         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4084         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
4085     }
4086     #[cfg(feature = "Foundation")]
4087     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
4088         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4089         unsafe {
4090             let mut result__: RepeatBehavior = ::std::mem::zeroed();
4091             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
4092         }
4093     }
4094     #[cfg(feature = "Foundation")]
4095     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4096         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4097         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4098     }
4099     #[cfg(feature = "Foundation")]
4100     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
4101         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4102         unsafe {
4103             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
4104             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
4105         }
4106     }
4107     #[cfg(feature = "Foundation")]
4108     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
4109         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4110         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
4111     }
4112     pub fn IDoubleAnimationStatics<R, F: FnOnce(&IDoubleAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4113         static mut SHARED: ::windows::runtime::FactoryCache<DoubleAnimation, IDoubleAnimationStatics> = ::windows::runtime::FactoryCache::new();
4114         unsafe { SHARED.call(callback) }
4115     }
4116 }
4117 unsafe impl ::windows::runtime::RuntimeType for DoubleAnimation {
4118     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DoubleAnimation;{7e9f3d59-0f07-4bc9-977d-03763ff8154f})");
4119 }
4120 unsafe impl ::windows::runtime::Interface for DoubleAnimation {
4121     type Vtable = IDoubleAnimation_abi;
4122     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2124365145, 3847, 19401, [151, 125, 3, 118, 63, 248, 21, 79]);
4123 }
4124 impl ::windows::runtime::RuntimeName for DoubleAnimation {
4125     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DoubleAnimation";
4126 }
4127 impl ::std::convert::From<DoubleAnimation> for ::windows::runtime::IUnknown {
4128     fn from(value: DoubleAnimation) -> Self {
4129         unsafe { ::std::mem::transmute(value) }
4130     }
4131 }
4132 impl ::std::convert::From<&DoubleAnimation> for ::windows::runtime::IUnknown {
4133     fn from(value: &DoubleAnimation) -> Self {
4134         ::std::convert::From::from(::std::clone::Clone::clone(value))
4135     }
4136 }
4137 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DoubleAnimation {
4138     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4139         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4140     }
4141 }
4142 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DoubleAnimation {
4143     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4144         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4145     }
4146 }
4147 impl ::std::convert::From<DoubleAnimation> for ::windows::runtime::IInspectable {
4148     fn from(value: DoubleAnimation) -> Self {
4149         value.0
4150     }
4151 }
4152 impl ::std::convert::From<&DoubleAnimation> for ::windows::runtime::IInspectable {
4153     fn from(value: &DoubleAnimation) -> Self {
4154         value.0.clone()
4155     }
4156 }
4157 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DoubleAnimation {
4158     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4159         ::windows::runtime::Param::Owned(self.0)
4160     }
4161 }
4162 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DoubleAnimation {
4163     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4164         ::windows::runtime::Param::Borrowed(&self.0)
4165     }
4166 }
4167 impl ::std::convert::From<DoubleAnimation> for Timeline {
4168     fn from(value: DoubleAnimation) -> Self {
4169         ::std::convert::Into::<Timeline>::into(&value)
4170     }
4171 }
4172 impl ::std::convert::From<&DoubleAnimation> for Timeline {
4173     fn from(value: &DoubleAnimation) -> Self {
4174         ::windows::runtime::Interface::cast(value).unwrap()
4175     }
4176 }
4177 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for DoubleAnimation {
4178     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
4179         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
4180     }
4181 }
4182 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &DoubleAnimation {
4183     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
4184         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
4185     }
4186 }
4187 impl ::std::convert::From<DoubleAnimation> for super::super::DependencyObject {
4188     fn from(value: DoubleAnimation) -> Self {
4189         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
4190     }
4191 }
4192 impl ::std::convert::From<&DoubleAnimation> for super::super::DependencyObject {
4193     fn from(value: &DoubleAnimation) -> Self {
4194         ::windows::runtime::Interface::cast(value).unwrap()
4195     }
4196 }
4197 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DoubleAnimation {
4198     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
4199         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
4200     }
4201 }
4202 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DoubleAnimation {
4203     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
4204         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
4205     }
4206 }
4207 unsafe impl ::std::marker::Send for DoubleAnimation {}
4208 unsafe impl ::std::marker::Sync for DoubleAnimation {}
4209 #[repr(transparent)]
4210 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4211 pub struct DoubleAnimationUsingKeyFrames(::windows::runtime::IInspectable);
4212 impl DoubleAnimationUsingKeyFrames {
4213     pub fn new() -> ::windows::runtime::Result<Self> {
4214         Self::IActivationFactory(|f| f.activate_instance::<Self>())
4215     }
4216     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4217         static mut SHARED: ::windows::runtime::FactoryCache<DoubleAnimationUsingKeyFrames, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
4218         unsafe { SHARED.call(callback) }
4219     }
4220     #[cfg(feature = "Foundation_Collections")]
4221     pub fn KeyFrames(&self) -> ::windows::runtime::Result<DoubleKeyFrameCollection> {
4222         let this = self;
4223         unsafe {
4224             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4225             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<DoubleKeyFrameCollection>(result__)
4226         }
4227     }
4228     pub fn EnableDependentAnimation(&self) -> ::windows::runtime::Result<bool> {
4229         let this = self;
4230         unsafe {
4231             let mut result__: bool = ::std::mem::zeroed();
4232             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4233         }
4234     }
4235     pub fn SetEnableDependentAnimation(&self, value: bool) -> ::windows::runtime::Result<()> {
4236         let this = self;
4237         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
4238     }
4239     pub fn EnableDependentAnimationProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
4240         Self::IDoubleAnimationUsingKeyFramesStatics(|this| unsafe {
4241             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4242             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
4243         })
4244     }
4245     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4246         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4247         unsafe {
4248             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4249             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4250         }
4251     }
4252     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
4253         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4254         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
4255     }
4256     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
4257         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4258         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
4259     }
4260     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4261         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4262         unsafe {
4263             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4264             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4265         }
4266     }
4267     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4268         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4269         unsafe {
4270             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4271             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4272         }
4273     }
4274     #[cfg(feature = "UI_Core")]
4275     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
4276         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4277         unsafe {
4278             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4279             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
4280         }
4281     }
4282     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
4283         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
4284         unsafe {
4285             let mut result__: i64 = ::std::mem::zeroed();
4286             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
4287         }
4288     }
4289     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
4290         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
4291         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
4292     }
4293     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
4294         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4295         unsafe {
4296             let mut result__: bool = ::std::mem::zeroed();
4297             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4298         }
4299     }
4300     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
4301         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4302         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
4303     }
4304     #[cfg(feature = "Foundation")]
4305     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
4306         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4307         unsafe {
4308             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4309             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
4310         }
4311     }
4312     #[cfg(feature = "Foundation")]
4313     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4314         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4315         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4316     }
4317     #[cfg(feature = "Foundation")]
4318     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
4319         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4320         unsafe {
4321             let mut result__: super::super::Duration = ::std::mem::zeroed();
4322             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
4323         }
4324     }
4325     #[cfg(feature = "Foundation")]
4326     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4327         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4328         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4329     }
4330     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
4331         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4332         unsafe {
4333             let mut result__: f64 = ::std::mem::zeroed();
4334             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
4335         }
4336     }
4337     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
4338         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4339         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
4340     }
4341     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
4342         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4343         unsafe {
4344             let mut result__: FillBehavior = ::std::mem::zeroed();
4345             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
4346         }
4347     }
4348     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
4349         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4350         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
4351     }
4352     #[cfg(feature = "Foundation")]
4353     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
4354         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4355         unsafe {
4356             let mut result__: RepeatBehavior = ::std::mem::zeroed();
4357             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
4358         }
4359     }
4360     #[cfg(feature = "Foundation")]
4361     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4362         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4363         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4364     }
4365     #[cfg(feature = "Foundation")]
4366     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
4367         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4368         unsafe {
4369             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
4370             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
4371         }
4372     }
4373     #[cfg(feature = "Foundation")]
4374     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
4375         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4376         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
4377     }
4378     pub fn IDoubleAnimationUsingKeyFramesStatics<R, F: FnOnce(&IDoubleAnimationUsingKeyFramesStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4379         static mut SHARED: ::windows::runtime::FactoryCache<DoubleAnimationUsingKeyFrames, IDoubleAnimationUsingKeyFramesStatics> = ::windows::runtime::FactoryCache::new();
4380         unsafe { SHARED.call(callback) }
4381     }
4382 }
4383 unsafe impl ::windows::runtime::RuntimeType for DoubleAnimationUsingKeyFrames {
4384     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DoubleAnimationUsingKeyFrames;{4fee628f-bfee-4f75-83c2-a93b39488473})");
4385 }
4386 unsafe impl ::windows::runtime::Interface for DoubleAnimationUsingKeyFrames {
4387     type Vtable = IDoubleAnimationUsingKeyFrames_abi;
4388     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1341022863, 49134, 20341, [131, 194, 169, 59, 57, 72, 132, 115]);
4389 }
4390 impl ::windows::runtime::RuntimeName for DoubleAnimationUsingKeyFrames {
4391     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DoubleAnimationUsingKeyFrames";
4392 }
4393 impl ::std::convert::From<DoubleAnimationUsingKeyFrames> for ::windows::runtime::IUnknown {
4394     fn from(value: DoubleAnimationUsingKeyFrames) -> Self {
4395         unsafe { ::std::mem::transmute(value) }
4396     }
4397 }
4398 impl ::std::convert::From<&DoubleAnimationUsingKeyFrames> for ::windows::runtime::IUnknown {
4399     fn from(value: &DoubleAnimationUsingKeyFrames) -> Self {
4400         ::std::convert::From::from(::std::clone::Clone::clone(value))
4401     }
4402 }
4403 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DoubleAnimationUsingKeyFrames {
4404     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4405         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4406     }
4407 }
4408 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DoubleAnimationUsingKeyFrames {
4409     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4410         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4411     }
4412 }
4413 impl ::std::convert::From<DoubleAnimationUsingKeyFrames> for ::windows::runtime::IInspectable {
4414     fn from(value: DoubleAnimationUsingKeyFrames) -> Self {
4415         value.0
4416     }
4417 }
4418 impl ::std::convert::From<&DoubleAnimationUsingKeyFrames> for ::windows::runtime::IInspectable {
4419     fn from(value: &DoubleAnimationUsingKeyFrames) -> Self {
4420         value.0.clone()
4421     }
4422 }
4423 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DoubleAnimationUsingKeyFrames {
4424     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4425         ::windows::runtime::Param::Owned(self.0)
4426     }
4427 }
4428 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DoubleAnimationUsingKeyFrames {
4429     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4430         ::windows::runtime::Param::Borrowed(&self.0)
4431     }
4432 }
4433 impl ::std::convert::From<DoubleAnimationUsingKeyFrames> for Timeline {
4434     fn from(value: DoubleAnimationUsingKeyFrames) -> Self {
4435         ::std::convert::Into::<Timeline>::into(&value)
4436     }
4437 }
4438 impl ::std::convert::From<&DoubleAnimationUsingKeyFrames> for Timeline {
4439     fn from(value: &DoubleAnimationUsingKeyFrames) -> Self {
4440         ::windows::runtime::Interface::cast(value).unwrap()
4441     }
4442 }
4443 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for DoubleAnimationUsingKeyFrames {
4444     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
4445         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
4446     }
4447 }
4448 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &DoubleAnimationUsingKeyFrames {
4449     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
4450         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
4451     }
4452 }
4453 impl ::std::convert::From<DoubleAnimationUsingKeyFrames> for super::super::DependencyObject {
4454     fn from(value: DoubleAnimationUsingKeyFrames) -> Self {
4455         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
4456     }
4457 }
4458 impl ::std::convert::From<&DoubleAnimationUsingKeyFrames> for super::super::DependencyObject {
4459     fn from(value: &DoubleAnimationUsingKeyFrames) -> Self {
4460         ::windows::runtime::Interface::cast(value).unwrap()
4461     }
4462 }
4463 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DoubleAnimationUsingKeyFrames {
4464     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
4465         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
4466     }
4467 }
4468 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DoubleAnimationUsingKeyFrames {
4469     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
4470         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
4471     }
4472 }
4473 unsafe impl ::std::marker::Send for DoubleAnimationUsingKeyFrames {}
4474 unsafe impl ::std::marker::Sync for DoubleAnimationUsingKeyFrames {}
4475 #[repr(transparent)]
4476 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4477 pub struct DoubleKeyFrame(::windows::runtime::IInspectable);
4478 impl DoubleKeyFrame {
4479     pub fn Value(&self) -> ::windows::runtime::Result<f64> {
4480         let this = self;
4481         unsafe {
4482             let mut result__: f64 = ::std::mem::zeroed();
4483             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
4484         }
4485     }
4486     pub fn SetValue(&self, value: f64) -> ::windows::runtime::Result<()> {
4487         let this = self;
4488         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
4489     }
4490     #[cfg(feature = "Foundation")]
4491     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
4492         let this = self;
4493         unsafe {
4494             let mut result__: KeyTime = ::std::mem::zeroed();
4495             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
4496         }
4497     }
4498     #[cfg(feature = "Foundation")]
4499     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4500         let this = self;
4501         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4502     }
4503     pub fn ValueProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
4504         Self::IDoubleKeyFrameStatics(|this| unsafe {
4505             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4506             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
4507         })
4508     }
4509     pub fn KeyTimeProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
4510         Self::IDoubleKeyFrameStatics(|this| unsafe {
4511             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4512             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
4513         })
4514     }
4515     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4516         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4517         unsafe {
4518             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4519             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4520         }
4521     }
4522     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
4523         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4524         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
4525     }
4526     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
4527         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4528         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
4529     }
4530     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4531         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4532         unsafe {
4533             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4534             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4535         }
4536     }
4537     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4538         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4539         unsafe {
4540             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4541             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4542         }
4543     }
4544     #[cfg(feature = "UI_Core")]
4545     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
4546         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4547         unsafe {
4548             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4549             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
4550         }
4551     }
4552     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
4553         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
4554         unsafe {
4555             let mut result__: i64 = ::std::mem::zeroed();
4556             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
4557         }
4558     }
4559     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
4560         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
4561         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
4562     }
4563     pub fn IDoubleKeyFrameStatics<R, F: FnOnce(&IDoubleKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4564         static mut SHARED: ::windows::runtime::FactoryCache<DoubleKeyFrame, IDoubleKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
4565         unsafe { SHARED.call(callback) }
4566     }
4567 }
4568 unsafe impl ::windows::runtime::RuntimeType for DoubleKeyFrame {
4569     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DoubleKeyFrame;{674456fd-e81e-4f4e-b4ad-0acfed9ecd68})");
4570 }
4571 unsafe impl ::windows::runtime::Interface for DoubleKeyFrame {
4572     type Vtable = IDoubleKeyFrame_abi;
4573     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1732531965, 59422, 20302, [180, 173, 10, 207, 237, 158, 205, 104]);
4574 }
4575 impl ::windows::runtime::RuntimeName for DoubleKeyFrame {
4576     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DoubleKeyFrame";
4577 }
4578 impl ::std::convert::From<DoubleKeyFrame> for ::windows::runtime::IUnknown {
4579     fn from(value: DoubleKeyFrame) -> Self {
4580         unsafe { ::std::mem::transmute(value) }
4581     }
4582 }
4583 impl ::std::convert::From<&DoubleKeyFrame> for ::windows::runtime::IUnknown {
4584     fn from(value: &DoubleKeyFrame) -> Self {
4585         ::std::convert::From::from(::std::clone::Clone::clone(value))
4586     }
4587 }
4588 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DoubleKeyFrame {
4589     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4590         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4591     }
4592 }
4593 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DoubleKeyFrame {
4594     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4595         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4596     }
4597 }
4598 impl ::std::convert::From<DoubleKeyFrame> for ::windows::runtime::IInspectable {
4599     fn from(value: DoubleKeyFrame) -> Self {
4600         value.0
4601     }
4602 }
4603 impl ::std::convert::From<&DoubleKeyFrame> for ::windows::runtime::IInspectable {
4604     fn from(value: &DoubleKeyFrame) -> Self {
4605         value.0.clone()
4606     }
4607 }
4608 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DoubleKeyFrame {
4609     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4610         ::windows::runtime::Param::Owned(self.0)
4611     }
4612 }
4613 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DoubleKeyFrame {
4614     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4615         ::windows::runtime::Param::Borrowed(&self.0)
4616     }
4617 }
4618 impl ::std::convert::From<DoubleKeyFrame> for super::super::DependencyObject {
4619     fn from(value: DoubleKeyFrame) -> Self {
4620         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
4621     }
4622 }
4623 impl ::std::convert::From<&DoubleKeyFrame> for super::super::DependencyObject {
4624     fn from(value: &DoubleKeyFrame) -> Self {
4625         ::windows::runtime::Interface::cast(value).unwrap()
4626     }
4627 }
4628 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DoubleKeyFrame {
4629     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
4630         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
4631     }
4632 }
4633 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DoubleKeyFrame {
4634     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
4635         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
4636     }
4637 }
4638 unsafe impl ::std::marker::Send for DoubleKeyFrame {}
4639 unsafe impl ::std::marker::Sync for DoubleKeyFrame {}
4640 #[cfg(feature = "Foundation_Collections")]
4641 #[repr(transparent)]
4642 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4643 pub struct DoubleKeyFrameCollection(::windows::runtime::IInspectable);
4644 #[cfg(feature = "Foundation_Collections")]
4645 impl DoubleKeyFrameCollection {
4646     pub fn new() -> ::windows::runtime::Result<Self> {
4647         Self::IActivationFactory(|f| f.activate_instance::<Self>())
4648     }
4649     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4650         static mut SHARED: ::windows::runtime::FactoryCache<DoubleKeyFrameCollection, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
4651         unsafe { SHARED.call(callback) }
4652     }
4653     #[cfg(feature = "Foundation_Collections")]
4654     pub fn GetAt(&self, index: u32) -> ::windows::runtime::Result<DoubleKeyFrame> {
4655         let this = self;
4656         unsafe {
4657             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4658             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), index, &mut result__).from_abi::<DoubleKeyFrame>(result__)
4659         }
4660     }
4661     #[cfg(feature = "Foundation_Collections")]
4662     pub fn Size(&self) -> ::windows::runtime::Result<u32> {
4663         let this = self;
4664         unsafe {
4665             let mut result__: u32 = ::std::mem::zeroed();
4666             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
4667         }
4668     }
4669     #[cfg(feature = "Foundation_Collections")]
4670     pub fn GetView(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IVectorView<DoubleKeyFrame>> {
4671         let this = self;
4672         unsafe {
4673             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4674             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IVectorView<DoubleKeyFrame>>(result__)
4675         }
4676     }
4677     #[cfg(feature = "Foundation_Collections")]
4678     pub fn IndexOf<'a, Param0: ::windows::runtime::IntoParam<'a, DoubleKeyFrame>>(&self, value: Param0, index: &mut u32) -> ::windows::runtime::Result<bool> {
4679         let this = self;
4680         unsafe {
4681             let mut result__: bool = ::std::mem::zeroed();
4682             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi(), index, &mut result__).from_abi::<bool>(result__)
4683         }
4684     }
4685     #[cfg(feature = "Foundation_Collections")]
4686     pub fn SetAt<'a, Param1: ::windows::runtime::IntoParam<'a, DoubleKeyFrame>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
4687         let this = self;
4688         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
4689     }
4690     #[cfg(feature = "Foundation_Collections")]
4691     pub fn InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, DoubleKeyFrame>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
4692         let this = self;
4693         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
4694     }
4695     #[cfg(feature = "Foundation_Collections")]
4696     pub fn RemoveAt(&self, index: u32) -> ::windows::runtime::Result<()> {
4697         let this = self;
4698         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), index).ok() }
4699     }
4700     #[cfg(feature = "Foundation_Collections")]
4701     pub fn Append<'a, Param0: ::windows::runtime::IntoParam<'a, DoubleKeyFrame>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4702         let this = self;
4703         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4704     }
4705     #[cfg(feature = "Foundation_Collections")]
4706     pub fn RemoveAtEnd(&self) -> ::windows::runtime::Result<()> {
4707         let this = self;
4708         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
4709     }
4710     #[cfg(feature = "Foundation_Collections")]
4711     pub fn Clear(&self) -> ::windows::runtime::Result<()> {
4712         let this = self;
4713         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this)).ok() }
4714     }
4715     #[cfg(feature = "Foundation_Collections")]
4716     pub fn GetMany(&self, startindex: u32, items: &mut [<DoubleKeyFrame as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<u32> {
4717         let this = self;
4718         unsafe {
4719             let mut result__: u32 = ::std::mem::zeroed();
4720             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), startindex, items.len() as u32, ::std::mem::transmute_copy(&items), &mut result__).from_abi::<u32>(result__)
4721         }
4722     }
4723     #[cfg(feature = "Foundation_Collections")]
4724     pub fn ReplaceAll(&self, items: &[<DoubleKeyFrame as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<()> {
4725         let this = self;
4726         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), items.len() as u32, ::std::mem::transmute(items.as_ptr())).ok() }
4727     }
4728     #[cfg(feature = "Foundation_Collections")]
4729     pub fn First(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IIterator<DoubleKeyFrame>> {
4730         let this = &::windows::runtime::Interface::cast::<super::super::super::super::Foundation::Collections::IIterable<DoubleKeyFrame>>(self)?;
4731         unsafe {
4732             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4733             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IIterator<DoubleKeyFrame>>(result__)
4734         }
4735     }
4736 }
4737 #[cfg(feature = "Foundation_Collections")]
4738 unsafe impl ::windows::runtime::RuntimeType for DoubleKeyFrameCollection {
4739     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DoubleKeyFrameCollection;pinterface({913337e9-11a1-4345-a3a2-4e7f956e222d};rc(Windows.UI.Xaml.Media.Animation.DoubleKeyFrame;{674456fd-e81e-4f4e-b4ad-0acfed9ecd68})))");
4740 }
4741 #[cfg(feature = "Foundation_Collections")]
4742 unsafe impl ::windows::runtime::Interface for DoubleKeyFrameCollection {
4743     type Vtable = super::super::super::super::Foundation::Collections::IVector_abi<DoubleKeyFrame>;
4744     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_signature(<super::super::super::super::Foundation::Collections::IVector<DoubleKeyFrame> as ::windows::runtime::RuntimeType>::SIGNATURE);
4745 }
4746 #[cfg(feature = "Foundation_Collections")]
4747 impl ::windows::runtime::RuntimeName for DoubleKeyFrameCollection {
4748     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DoubleKeyFrameCollection";
4749 }
4750 #[cfg(feature = "Foundation_Collections")]
4751 impl ::std::convert::From<DoubleKeyFrameCollection> for ::windows::runtime::IUnknown {
4752     fn from(value: DoubleKeyFrameCollection) -> Self {
4753         unsafe { ::std::mem::transmute(value) }
4754     }
4755 }
4756 #[cfg(feature = "Foundation_Collections")]
4757 impl ::std::convert::From<&DoubleKeyFrameCollection> for ::windows::runtime::IUnknown {
4758     fn from(value: &DoubleKeyFrameCollection) -> Self {
4759         ::std::convert::From::from(::std::clone::Clone::clone(value))
4760     }
4761 }
4762 #[cfg(feature = "Foundation_Collections")]
4763 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DoubleKeyFrameCollection {
4764     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4765         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4766     }
4767 }
4768 #[cfg(feature = "Foundation_Collections")]
4769 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DoubleKeyFrameCollection {
4770     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4771         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4772     }
4773 }
4774 #[cfg(feature = "Foundation_Collections")]
4775 impl ::std::convert::From<DoubleKeyFrameCollection> for ::windows::runtime::IInspectable {
4776     fn from(value: DoubleKeyFrameCollection) -> Self {
4777         value.0
4778     }
4779 }
4780 #[cfg(feature = "Foundation_Collections")]
4781 impl ::std::convert::From<&DoubleKeyFrameCollection> for ::windows::runtime::IInspectable {
4782     fn from(value: &DoubleKeyFrameCollection) -> Self {
4783         value.0.clone()
4784     }
4785 }
4786 #[cfg(feature = "Foundation_Collections")]
4787 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DoubleKeyFrameCollection {
4788     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4789         ::windows::runtime::Param::Owned(self.0)
4790     }
4791 }
4792 #[cfg(feature = "Foundation_Collections")]
4793 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DoubleKeyFrameCollection {
4794     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4795         ::windows::runtime::Param::Borrowed(&self.0)
4796     }
4797 }
4798 #[cfg(feature = "Foundation_Collections")]
4799 impl ::std::convert::From<DoubleKeyFrameCollection> for super::super::super::super::Foundation::Collections::IVector<DoubleKeyFrame> {
4800     fn from(value: DoubleKeyFrameCollection) -> Self {
4801         unsafe { ::std::mem::transmute(value) }
4802     }
4803 }
4804 #[cfg(feature = "Foundation_Collections")]
4805 impl ::std::convert::From<&DoubleKeyFrameCollection> for super::super::super::super::Foundation::Collections::IVector<DoubleKeyFrame> {
4806     fn from(value: &DoubleKeyFrameCollection) -> Self {
4807         ::std::convert::From::from(::std::clone::Clone::clone(value))
4808     }
4809 }
4810 #[cfg(feature = "Foundation_Collections")]
4811 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<DoubleKeyFrame>> for DoubleKeyFrameCollection {
4812     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<DoubleKeyFrame>> {
4813         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<DoubleKeyFrame>>::into(self))
4814     }
4815 }
4816 #[cfg(feature = "Foundation_Collections")]
4817 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<DoubleKeyFrame>> for &DoubleKeyFrameCollection {
4818     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<DoubleKeyFrame>> {
4819         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<DoubleKeyFrame>>::into(::std::clone::Clone::clone(self)))
4820     }
4821 }
4822 #[cfg(feature = "Foundation_Collections")]
4823 impl ::std::convert::TryFrom<DoubleKeyFrameCollection> for super::super::super::super::Foundation::Collections::IIterable<DoubleKeyFrame> {
4824     type Error = ::windows::runtime::Error;
4825     fn try_from(value: DoubleKeyFrameCollection) -> ::windows::runtime::Result<Self> {
4826         ::std::convert::TryFrom::try_from(&value)
4827     }
4828 }
4829 #[cfg(feature = "Foundation_Collections")]
4830 impl ::std::convert::TryFrom<&DoubleKeyFrameCollection> for super::super::super::super::Foundation::Collections::IIterable<DoubleKeyFrame> {
4831     type Error = ::windows::runtime::Error;
4832     fn try_from(value: &DoubleKeyFrameCollection) -> ::windows::runtime::Result<Self> {
4833         ::windows::runtime::Interface::cast(value)
4834     }
4835 }
4836 #[cfg(feature = "Foundation_Collections")]
4837 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<DoubleKeyFrame>> for DoubleKeyFrameCollection {
4838     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<DoubleKeyFrame>> {
4839         ::windows::runtime::IntoParam::into_param(&self)
4840     }
4841 }
4842 #[cfg(feature = "Foundation_Collections")]
4843 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<DoubleKeyFrame>> for &DoubleKeyFrameCollection {
4844     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<DoubleKeyFrame>> {
4845         ::std::convert::TryInto::<super::super::super::super::Foundation::Collections::IIterable<DoubleKeyFrame>>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
4846     }
4847 }
4848 #[cfg(feature = "Foundation_Collections")]
4849 unsafe impl ::std::marker::Send for DoubleKeyFrameCollection {}
4850 #[cfg(feature = "Foundation_Collections")]
4851 unsafe impl ::std::marker::Sync for DoubleKeyFrameCollection {}
4852 #[cfg(all(feature = "Foundation_Collections"))]
4853 impl ::std::iter::IntoIterator for DoubleKeyFrameCollection {
4854     type Item = DoubleKeyFrame;
4855     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
4856     fn into_iter(self) -> Self::IntoIter {
4857         ::std::iter::IntoIterator::into_iter(&self)
4858     }
4859 }
4860 #[cfg(all(feature = "Foundation_Collections"))]
4861 impl ::std::iter::IntoIterator for &DoubleKeyFrameCollection {
4862     type Item = DoubleKeyFrame;
4863     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
4864     fn into_iter(self) -> Self::IntoIter {
4865         super::super::super::super::Foundation::Collections::VectorIterator::new(::std::convert::TryInto::try_into(self).ok())
4866     }
4867 }
4868 #[repr(transparent)]
4869 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4870 pub struct DragItemThemeAnimation(::windows::runtime::IInspectable);
4871 impl DragItemThemeAnimation {
4872     pub fn new() -> ::windows::runtime::Result<Self> {
4873         Self::IActivationFactory(|f| f.activate_instance::<Self>())
4874     }
4875     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4876         static mut SHARED: ::windows::runtime::FactoryCache<DragItemThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
4877         unsafe { SHARED.call(callback) }
4878     }
4879     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
4880         let this = self;
4881         unsafe {
4882             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
4883             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
4884         }
4885     }
4886     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4887         let this = self;
4888         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4889     }
4890     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
4891         Self::IDragItemThemeAnimationStatics(|this| unsafe {
4892             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4893             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
4894         })
4895     }
4896     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4897         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4898         unsafe {
4899             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4900             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4901         }
4902     }
4903     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
4904         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4905         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
4906     }
4907     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
4908         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4909         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
4910     }
4911     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4912         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4913         unsafe {
4914             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4915             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4916         }
4917     }
4918     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
4919         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4920         unsafe {
4921             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4922             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
4923         }
4924     }
4925     #[cfg(feature = "UI_Core")]
4926     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
4927         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
4928         unsafe {
4929             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4930             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
4931         }
4932     }
4933     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
4934         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
4935         unsafe {
4936             let mut result__: i64 = ::std::mem::zeroed();
4937             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
4938         }
4939     }
4940     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
4941         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
4942         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
4943     }
4944     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
4945         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4946         unsafe {
4947             let mut result__: bool = ::std::mem::zeroed();
4948             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4949         }
4950     }
4951     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
4952         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4953         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
4954     }
4955     #[cfg(feature = "Foundation")]
4956     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
4957         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4958         unsafe {
4959             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4960             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
4961         }
4962     }
4963     #[cfg(feature = "Foundation")]
4964     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4965         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4966         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4967     }
4968     #[cfg(feature = "Foundation")]
4969     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
4970         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4971         unsafe {
4972             let mut result__: super::super::Duration = ::std::mem::zeroed();
4973             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
4974         }
4975     }
4976     #[cfg(feature = "Foundation")]
4977     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4978         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4979         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4980     }
4981     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
4982         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4983         unsafe {
4984             let mut result__: f64 = ::std::mem::zeroed();
4985             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
4986         }
4987     }
4988     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
4989         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4990         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
4991     }
4992     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
4993         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
4994         unsafe {
4995             let mut result__: FillBehavior = ::std::mem::zeroed();
4996             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
4997         }
4998     }
4999     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
5000         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5001         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
5002     }
5003     #[cfg(feature = "Foundation")]
5004     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
5005         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5006         unsafe {
5007             let mut result__: RepeatBehavior = ::std::mem::zeroed();
5008             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
5009         }
5010     }
5011     #[cfg(feature = "Foundation")]
5012     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5013         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5014         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5015     }
5016     #[cfg(feature = "Foundation")]
5017     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
5018         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5019         unsafe {
5020             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
5021             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
5022         }
5023     }
5024     #[cfg(feature = "Foundation")]
5025     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
5026         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5027         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
5028     }
5029     pub fn IDragItemThemeAnimationStatics<R, F: FnOnce(&IDragItemThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
5030         static mut SHARED: ::windows::runtime::FactoryCache<DragItemThemeAnimation, IDragItemThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
5031         unsafe { SHARED.call(callback) }
5032     }
5033 }
5034 unsafe impl ::windows::runtime::RuntimeType for DragItemThemeAnimation {
5035     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DragItemThemeAnimation;{0c7d5db5-7ed6-4949-b4e6-a78c9f4f978d})");
5036 }
5037 unsafe impl ::windows::runtime::Interface for DragItemThemeAnimation {
5038     type Vtable = IDragItemThemeAnimation_abi;
5039     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(209542581, 32470, 18761, [180, 230, 167, 140, 159, 79, 151, 141]);
5040 }
5041 impl ::windows::runtime::RuntimeName for DragItemThemeAnimation {
5042     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DragItemThemeAnimation";
5043 }
5044 impl ::std::convert::From<DragItemThemeAnimation> for ::windows::runtime::IUnknown {
5045     fn from(value: DragItemThemeAnimation) -> Self {
5046         unsafe { ::std::mem::transmute(value) }
5047     }
5048 }
5049 impl ::std::convert::From<&DragItemThemeAnimation> for ::windows::runtime::IUnknown {
5050     fn from(value: &DragItemThemeAnimation) -> Self {
5051         ::std::convert::From::from(::std::clone::Clone::clone(value))
5052     }
5053 }
5054 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DragItemThemeAnimation {
5055     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5056         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
5057     }
5058 }
5059 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DragItemThemeAnimation {
5060     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5061         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
5062     }
5063 }
5064 impl ::std::convert::From<DragItemThemeAnimation> for ::windows::runtime::IInspectable {
5065     fn from(value: DragItemThemeAnimation) -> Self {
5066         value.0
5067     }
5068 }
5069 impl ::std::convert::From<&DragItemThemeAnimation> for ::windows::runtime::IInspectable {
5070     fn from(value: &DragItemThemeAnimation) -> Self {
5071         value.0.clone()
5072     }
5073 }
5074 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DragItemThemeAnimation {
5075     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5076         ::windows::runtime::Param::Owned(self.0)
5077     }
5078 }
5079 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DragItemThemeAnimation {
5080     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5081         ::windows::runtime::Param::Borrowed(&self.0)
5082     }
5083 }
5084 impl ::std::convert::From<DragItemThemeAnimation> for Timeline {
5085     fn from(value: DragItemThemeAnimation) -> Self {
5086         ::std::convert::Into::<Timeline>::into(&value)
5087     }
5088 }
5089 impl ::std::convert::From<&DragItemThemeAnimation> for Timeline {
5090     fn from(value: &DragItemThemeAnimation) -> Self {
5091         ::windows::runtime::Interface::cast(value).unwrap()
5092     }
5093 }
5094 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for DragItemThemeAnimation {
5095     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
5096         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
5097     }
5098 }
5099 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &DragItemThemeAnimation {
5100     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
5101         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
5102     }
5103 }
5104 impl ::std::convert::From<DragItemThemeAnimation> for super::super::DependencyObject {
5105     fn from(value: DragItemThemeAnimation) -> Self {
5106         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
5107     }
5108 }
5109 impl ::std::convert::From<&DragItemThemeAnimation> for super::super::DependencyObject {
5110     fn from(value: &DragItemThemeAnimation) -> Self {
5111         ::windows::runtime::Interface::cast(value).unwrap()
5112     }
5113 }
5114 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DragItemThemeAnimation {
5115     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
5116         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
5117     }
5118 }
5119 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DragItemThemeAnimation {
5120     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
5121         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
5122     }
5123 }
5124 unsafe impl ::std::marker::Send for DragItemThemeAnimation {}
5125 unsafe impl ::std::marker::Sync for DragItemThemeAnimation {}
5126 #[repr(transparent)]
5127 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5128 pub struct DragOverThemeAnimation(::windows::runtime::IInspectable);
5129 impl DragOverThemeAnimation {
5130     pub fn new() -> ::windows::runtime::Result<Self> {
5131         Self::IActivationFactory(|f| f.activate_instance::<Self>())
5132     }
5133     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
5134         static mut SHARED: ::windows::runtime::FactoryCache<DragOverThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
5135         unsafe { SHARED.call(callback) }
5136     }
5137     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
5138         let this = self;
5139         unsafe {
5140             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
5141             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
5142         }
5143     }
5144     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5145         let this = self;
5146         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5147     }
5148     pub fn ToOffset(&self) -> ::windows::runtime::Result<f64> {
5149         let this = self;
5150         unsafe {
5151             let mut result__: f64 = ::std::mem::zeroed();
5152             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
5153         }
5154     }
5155     pub fn SetToOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
5156         let this = self;
5157         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
5158     }
5159     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
5160     pub fn Direction(&self) -> ::windows::runtime::Result<super::super::Controls::Primitives::AnimationDirection> {
5161         let this = self;
5162         unsafe {
5163             let mut result__: super::super::Controls::Primitives::AnimationDirection = ::std::mem::zeroed();
5164             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Controls::Primitives::AnimationDirection>(result__)
5165         }
5166     }
5167     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
5168     pub fn SetDirection(&self, value: super::super::Controls::Primitives::AnimationDirection) -> ::windows::runtime::Result<()> {
5169         let this = self;
5170         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
5171     }
5172     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5173         Self::IDragOverThemeAnimationStatics(|this| unsafe {
5174             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5175             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5176         })
5177     }
5178     pub fn ToOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5179         Self::IDragOverThemeAnimationStatics(|this| unsafe {
5180             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5181             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5182         })
5183     }
5184     pub fn DirectionProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5185         Self::IDragOverThemeAnimationStatics(|this| unsafe {
5186             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5187             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5188         })
5189     }
5190     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5191         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5192         unsafe {
5193             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5194             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5195         }
5196     }
5197     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
5198         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5199         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
5200     }
5201     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
5202         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5203         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
5204     }
5205     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5206         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5207         unsafe {
5208             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5209             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5210         }
5211     }
5212     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5213         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5214         unsafe {
5215             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5216             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5217         }
5218     }
5219     #[cfg(feature = "UI_Core")]
5220     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
5221         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5222         unsafe {
5223             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5224             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
5225         }
5226     }
5227     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
5228         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
5229         unsafe {
5230             let mut result__: i64 = ::std::mem::zeroed();
5231             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
5232         }
5233     }
5234     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
5235         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
5236         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
5237     }
5238     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
5239         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5240         unsafe {
5241             let mut result__: bool = ::std::mem::zeroed();
5242             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
5243         }
5244     }
5245     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
5246         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5247         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
5248     }
5249     #[cfg(feature = "Foundation")]
5250     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
5251         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5252         unsafe {
5253             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5254             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
5255         }
5256     }
5257     #[cfg(feature = "Foundation")]
5258     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5259         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5260         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5261     }
5262     #[cfg(feature = "Foundation")]
5263     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
5264         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5265         unsafe {
5266             let mut result__: super::super::Duration = ::std::mem::zeroed();
5267             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
5268         }
5269     }
5270     #[cfg(feature = "Foundation")]
5271     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5272         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5273         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5274     }
5275     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
5276         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5277         unsafe {
5278             let mut result__: f64 = ::std::mem::zeroed();
5279             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
5280         }
5281     }
5282     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
5283         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5284         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
5285     }
5286     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
5287         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5288         unsafe {
5289             let mut result__: FillBehavior = ::std::mem::zeroed();
5290             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
5291         }
5292     }
5293     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
5294         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5295         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
5296     }
5297     #[cfg(feature = "Foundation")]
5298     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
5299         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5300         unsafe {
5301             let mut result__: RepeatBehavior = ::std::mem::zeroed();
5302             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
5303         }
5304     }
5305     #[cfg(feature = "Foundation")]
5306     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5307         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5308         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5309     }
5310     #[cfg(feature = "Foundation")]
5311     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
5312         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5313         unsafe {
5314             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
5315             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
5316         }
5317     }
5318     #[cfg(feature = "Foundation")]
5319     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
5320         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5321         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
5322     }
5323     pub fn IDragOverThemeAnimationStatics<R, F: FnOnce(&IDragOverThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
5324         static mut SHARED: ::windows::runtime::FactoryCache<DragOverThemeAnimation, IDragOverThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
5325         unsafe { SHARED.call(callback) }
5326     }
5327 }
5328 unsafe impl ::windows::runtime::RuntimeType for DragOverThemeAnimation {
5329     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DragOverThemeAnimation;{72f762f7-7e51-4a6b-b937-dc4b4c1c5458})");
5330 }
5331 unsafe impl ::windows::runtime::Interface for DragOverThemeAnimation {
5332     type Vtable = IDragOverThemeAnimation_abi;
5333     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1928815351, 32337, 19051, [185, 55, 220, 75, 76, 28, 84, 88]);
5334 }
5335 impl ::windows::runtime::RuntimeName for DragOverThemeAnimation {
5336     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DragOverThemeAnimation";
5337 }
5338 impl ::std::convert::From<DragOverThemeAnimation> for ::windows::runtime::IUnknown {
5339     fn from(value: DragOverThemeAnimation) -> Self {
5340         unsafe { ::std::mem::transmute(value) }
5341     }
5342 }
5343 impl ::std::convert::From<&DragOverThemeAnimation> for ::windows::runtime::IUnknown {
5344     fn from(value: &DragOverThemeAnimation) -> Self {
5345         ::std::convert::From::from(::std::clone::Clone::clone(value))
5346     }
5347 }
5348 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DragOverThemeAnimation {
5349     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5350         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
5351     }
5352 }
5353 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DragOverThemeAnimation {
5354     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5355         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
5356     }
5357 }
5358 impl ::std::convert::From<DragOverThemeAnimation> for ::windows::runtime::IInspectable {
5359     fn from(value: DragOverThemeAnimation) -> Self {
5360         value.0
5361     }
5362 }
5363 impl ::std::convert::From<&DragOverThemeAnimation> for ::windows::runtime::IInspectable {
5364     fn from(value: &DragOverThemeAnimation) -> Self {
5365         value.0.clone()
5366     }
5367 }
5368 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DragOverThemeAnimation {
5369     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5370         ::windows::runtime::Param::Owned(self.0)
5371     }
5372 }
5373 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DragOverThemeAnimation {
5374     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5375         ::windows::runtime::Param::Borrowed(&self.0)
5376     }
5377 }
5378 impl ::std::convert::From<DragOverThemeAnimation> for Timeline {
5379     fn from(value: DragOverThemeAnimation) -> Self {
5380         ::std::convert::Into::<Timeline>::into(&value)
5381     }
5382 }
5383 impl ::std::convert::From<&DragOverThemeAnimation> for Timeline {
5384     fn from(value: &DragOverThemeAnimation) -> Self {
5385         ::windows::runtime::Interface::cast(value).unwrap()
5386     }
5387 }
5388 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for DragOverThemeAnimation {
5389     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
5390         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
5391     }
5392 }
5393 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &DragOverThemeAnimation {
5394     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
5395         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
5396     }
5397 }
5398 impl ::std::convert::From<DragOverThemeAnimation> for super::super::DependencyObject {
5399     fn from(value: DragOverThemeAnimation) -> Self {
5400         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
5401     }
5402 }
5403 impl ::std::convert::From<&DragOverThemeAnimation> for super::super::DependencyObject {
5404     fn from(value: &DragOverThemeAnimation) -> Self {
5405         ::windows::runtime::Interface::cast(value).unwrap()
5406     }
5407 }
5408 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DragOverThemeAnimation {
5409     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
5410         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
5411     }
5412 }
5413 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DragOverThemeAnimation {
5414     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
5415         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
5416     }
5417 }
5418 unsafe impl ::std::marker::Send for DragOverThemeAnimation {}
5419 unsafe impl ::std::marker::Sync for DragOverThemeAnimation {}
5420 #[repr(transparent)]
5421 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5422 pub struct DrillInNavigationTransitionInfo(::windows::runtime::IInspectable);
5423 impl DrillInNavigationTransitionInfo {
5424     pub fn new() -> ::windows::runtime::Result<Self> {
5425         Self::IActivationFactory(|f| f.activate_instance::<Self>())
5426     }
5427     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
5428         static mut SHARED: ::windows::runtime::FactoryCache<DrillInNavigationTransitionInfo, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
5429         unsafe { SHARED.call(callback) }
5430     }
5431     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5432         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5433         unsafe {
5434             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5435             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5436         }
5437     }
5438     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
5439         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5440         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
5441     }
5442     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
5443         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5444         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
5445     }
5446     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5447         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5448         unsafe {
5449             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5450             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5451         }
5452     }
5453     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5454         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5455         unsafe {
5456             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5457             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5458         }
5459     }
5460     #[cfg(feature = "UI_Core")]
5461     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
5462         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5463         unsafe {
5464             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5465             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
5466         }
5467     }
5468     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
5469         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
5470         unsafe {
5471             let mut result__: i64 = ::std::mem::zeroed();
5472             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
5473         }
5474     }
5475     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
5476         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
5477         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
5478     }
5479     pub fn GetNavigationStateCore(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
5480         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
5481         unsafe {
5482             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
5483             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
5484         }
5485     }
5486     pub fn SetNavigationStateCore<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, navigationstate: Param0) -> ::windows::runtime::Result<()> {
5487         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
5488         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), navigationstate.into_param().abi()).ok() }
5489     }
5490 }
5491 unsafe impl ::windows::runtime::RuntimeType for DrillInNavigationTransitionInfo {
5492     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DrillInNavigationTransitionInfo;{3b86201a-45d3-463b-939e-c8595f439bcc})");
5493 }
5494 unsafe impl ::windows::runtime::Interface for DrillInNavigationTransitionInfo {
5495     type Vtable = IDrillInNavigationTransitionInfo_abi;
5496     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(998645786, 17875, 17979, [147, 158, 200, 89, 95, 67, 155, 204]);
5497 }
5498 impl ::windows::runtime::RuntimeName for DrillInNavigationTransitionInfo {
5499     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DrillInNavigationTransitionInfo";
5500 }
5501 impl ::std::convert::From<DrillInNavigationTransitionInfo> for ::windows::runtime::IUnknown {
5502     fn from(value: DrillInNavigationTransitionInfo) -> Self {
5503         unsafe { ::std::mem::transmute(value) }
5504     }
5505 }
5506 impl ::std::convert::From<&DrillInNavigationTransitionInfo> for ::windows::runtime::IUnknown {
5507     fn from(value: &DrillInNavigationTransitionInfo) -> Self {
5508         ::std::convert::From::from(::std::clone::Clone::clone(value))
5509     }
5510 }
5511 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DrillInNavigationTransitionInfo {
5512     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5513         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
5514     }
5515 }
5516 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DrillInNavigationTransitionInfo {
5517     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5518         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
5519     }
5520 }
5521 impl ::std::convert::From<DrillInNavigationTransitionInfo> for ::windows::runtime::IInspectable {
5522     fn from(value: DrillInNavigationTransitionInfo) -> Self {
5523         value.0
5524     }
5525 }
5526 impl ::std::convert::From<&DrillInNavigationTransitionInfo> for ::windows::runtime::IInspectable {
5527     fn from(value: &DrillInNavigationTransitionInfo) -> Self {
5528         value.0.clone()
5529     }
5530 }
5531 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DrillInNavigationTransitionInfo {
5532     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5533         ::windows::runtime::Param::Owned(self.0)
5534     }
5535 }
5536 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DrillInNavigationTransitionInfo {
5537     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5538         ::windows::runtime::Param::Borrowed(&self.0)
5539     }
5540 }
5541 impl ::std::convert::From<DrillInNavigationTransitionInfo> for NavigationTransitionInfo {
5542     fn from(value: DrillInNavigationTransitionInfo) -> Self {
5543         ::std::convert::Into::<NavigationTransitionInfo>::into(&value)
5544     }
5545 }
5546 impl ::std::convert::From<&DrillInNavigationTransitionInfo> for NavigationTransitionInfo {
5547     fn from(value: &DrillInNavigationTransitionInfo) -> Self {
5548         ::windows::runtime::Interface::cast(value).unwrap()
5549     }
5550 }
5551 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for DrillInNavigationTransitionInfo {
5552     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
5553         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(self))
5554     }
5555 }
5556 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for &DrillInNavigationTransitionInfo {
5557     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
5558         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(::std::clone::Clone::clone(self)))
5559     }
5560 }
5561 impl ::std::convert::From<DrillInNavigationTransitionInfo> for super::super::DependencyObject {
5562     fn from(value: DrillInNavigationTransitionInfo) -> Self {
5563         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
5564     }
5565 }
5566 impl ::std::convert::From<&DrillInNavigationTransitionInfo> for super::super::DependencyObject {
5567     fn from(value: &DrillInNavigationTransitionInfo) -> Self {
5568         ::windows::runtime::Interface::cast(value).unwrap()
5569     }
5570 }
5571 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DrillInNavigationTransitionInfo {
5572     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
5573         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
5574     }
5575 }
5576 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DrillInNavigationTransitionInfo {
5577     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
5578         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
5579     }
5580 }
5581 unsafe impl ::std::marker::Send for DrillInNavigationTransitionInfo {}
5582 unsafe impl ::std::marker::Sync for DrillInNavigationTransitionInfo {}
5583 #[repr(transparent)]
5584 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5585 pub struct DrillInThemeAnimation(::windows::runtime::IInspectable);
5586 impl DrillInThemeAnimation {
5587     pub fn new() -> ::windows::runtime::Result<Self> {
5588         Self::IActivationFactory(|f| f.activate_instance::<Self>())
5589     }
5590     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
5591         static mut SHARED: ::windows::runtime::FactoryCache<DrillInThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
5592         unsafe { SHARED.call(callback) }
5593     }
5594     pub fn EntranceTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
5595         let this = self;
5596         unsafe {
5597             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
5598             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
5599         }
5600     }
5601     pub fn SetEntranceTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5602         let this = self;
5603         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5604     }
5605     pub fn EntranceTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
5606         let this = self;
5607         unsafe {
5608             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5609             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
5610         }
5611     }
5612     pub fn SetEntranceTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5613         let this = self;
5614         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5615     }
5616     pub fn ExitTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
5617         let this = self;
5618         unsafe {
5619             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
5620             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
5621         }
5622     }
5623     pub fn SetExitTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5624         let this = self;
5625         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5626     }
5627     pub fn ExitTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
5628         let this = self;
5629         unsafe {
5630             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5631             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
5632         }
5633     }
5634     pub fn SetExitTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5635         let this = self;
5636         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5637     }
5638     pub fn EntranceTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5639         Self::IDrillInThemeAnimationStatics(|this| unsafe {
5640             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5641             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5642         })
5643     }
5644     pub fn EntranceTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5645         Self::IDrillInThemeAnimationStatics(|this| unsafe {
5646             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5647             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5648         })
5649     }
5650     pub fn ExitTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5651         Self::IDrillInThemeAnimationStatics(|this| unsafe {
5652             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5653             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5654         })
5655     }
5656     pub fn ExitTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5657         Self::IDrillInThemeAnimationStatics(|this| unsafe {
5658             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5659             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5660         })
5661     }
5662     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5663         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5664         unsafe {
5665             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5666             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5667         }
5668     }
5669     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
5670         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5671         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
5672     }
5673     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
5674         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5675         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
5676     }
5677     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5678         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5679         unsafe {
5680             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5681             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5682         }
5683     }
5684     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5685         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5686         unsafe {
5687             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5688             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5689         }
5690     }
5691     #[cfg(feature = "UI_Core")]
5692     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
5693         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5694         unsafe {
5695             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5696             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
5697         }
5698     }
5699     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
5700         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
5701         unsafe {
5702             let mut result__: i64 = ::std::mem::zeroed();
5703             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
5704         }
5705     }
5706     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
5707         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
5708         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
5709     }
5710     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
5711         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5712         unsafe {
5713             let mut result__: bool = ::std::mem::zeroed();
5714             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
5715         }
5716     }
5717     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
5718         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5719         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
5720     }
5721     #[cfg(feature = "Foundation")]
5722     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
5723         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5724         unsafe {
5725             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5726             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
5727         }
5728     }
5729     #[cfg(feature = "Foundation")]
5730     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5731         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5732         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5733     }
5734     #[cfg(feature = "Foundation")]
5735     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
5736         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5737         unsafe {
5738             let mut result__: super::super::Duration = ::std::mem::zeroed();
5739             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
5740         }
5741     }
5742     #[cfg(feature = "Foundation")]
5743     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5744         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5745         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5746     }
5747     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
5748         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5749         unsafe {
5750             let mut result__: f64 = ::std::mem::zeroed();
5751             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
5752         }
5753     }
5754     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
5755         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5756         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
5757     }
5758     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
5759         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5760         unsafe {
5761             let mut result__: FillBehavior = ::std::mem::zeroed();
5762             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
5763         }
5764     }
5765     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
5766         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5767         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
5768     }
5769     #[cfg(feature = "Foundation")]
5770     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
5771         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5772         unsafe {
5773             let mut result__: RepeatBehavior = ::std::mem::zeroed();
5774             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
5775         }
5776     }
5777     #[cfg(feature = "Foundation")]
5778     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5779         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5780         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5781     }
5782     #[cfg(feature = "Foundation")]
5783     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
5784         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5785         unsafe {
5786             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
5787             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
5788         }
5789     }
5790     #[cfg(feature = "Foundation")]
5791     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
5792         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
5793         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
5794     }
5795     pub fn IDrillInThemeAnimationStatics<R, F: FnOnce(&IDrillInThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
5796         static mut SHARED: ::windows::runtime::FactoryCache<DrillInThemeAnimation, IDrillInThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
5797         unsafe { SHARED.call(callback) }
5798     }
5799 }
5800 unsafe impl ::windows::runtime::RuntimeType for DrillInThemeAnimation {
5801     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DrillInThemeAnimation;{b090b824-f1d2-41b8-87ba-78034126594c})");
5802 }
5803 unsafe impl ::windows::runtime::Interface for DrillInThemeAnimation {
5804     type Vtable = IDrillInThemeAnimation_abi;
5805     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2962274340, 61906, 16824, [135, 186, 120, 3, 65, 38, 89, 76]);
5806 }
5807 impl ::windows::runtime::RuntimeName for DrillInThemeAnimation {
5808     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DrillInThemeAnimation";
5809 }
5810 impl ::std::convert::From<DrillInThemeAnimation> for ::windows::runtime::IUnknown {
5811     fn from(value: DrillInThemeAnimation) -> Self {
5812         unsafe { ::std::mem::transmute(value) }
5813     }
5814 }
5815 impl ::std::convert::From<&DrillInThemeAnimation> for ::windows::runtime::IUnknown {
5816     fn from(value: &DrillInThemeAnimation) -> Self {
5817         ::std::convert::From::from(::std::clone::Clone::clone(value))
5818     }
5819 }
5820 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DrillInThemeAnimation {
5821     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5822         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
5823     }
5824 }
5825 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DrillInThemeAnimation {
5826     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
5827         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
5828     }
5829 }
5830 impl ::std::convert::From<DrillInThemeAnimation> for ::windows::runtime::IInspectable {
5831     fn from(value: DrillInThemeAnimation) -> Self {
5832         value.0
5833     }
5834 }
5835 impl ::std::convert::From<&DrillInThemeAnimation> for ::windows::runtime::IInspectable {
5836     fn from(value: &DrillInThemeAnimation) -> Self {
5837         value.0.clone()
5838     }
5839 }
5840 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DrillInThemeAnimation {
5841     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5842         ::windows::runtime::Param::Owned(self.0)
5843     }
5844 }
5845 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DrillInThemeAnimation {
5846     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5847         ::windows::runtime::Param::Borrowed(&self.0)
5848     }
5849 }
5850 impl ::std::convert::From<DrillInThemeAnimation> for Timeline {
5851     fn from(value: DrillInThemeAnimation) -> Self {
5852         ::std::convert::Into::<Timeline>::into(&value)
5853     }
5854 }
5855 impl ::std::convert::From<&DrillInThemeAnimation> for Timeline {
5856     fn from(value: &DrillInThemeAnimation) -> Self {
5857         ::windows::runtime::Interface::cast(value).unwrap()
5858     }
5859 }
5860 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for DrillInThemeAnimation {
5861     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
5862         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
5863     }
5864 }
5865 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &DrillInThemeAnimation {
5866     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
5867         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
5868     }
5869 }
5870 impl ::std::convert::From<DrillInThemeAnimation> for super::super::DependencyObject {
5871     fn from(value: DrillInThemeAnimation) -> Self {
5872         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
5873     }
5874 }
5875 impl ::std::convert::From<&DrillInThemeAnimation> for super::super::DependencyObject {
5876     fn from(value: &DrillInThemeAnimation) -> Self {
5877         ::windows::runtime::Interface::cast(value).unwrap()
5878     }
5879 }
5880 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DrillInThemeAnimation {
5881     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
5882         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
5883     }
5884 }
5885 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DrillInThemeAnimation {
5886     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
5887         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
5888     }
5889 }
5890 unsafe impl ::std::marker::Send for DrillInThemeAnimation {}
5891 unsafe impl ::std::marker::Sync for DrillInThemeAnimation {}
5892 #[repr(transparent)]
5893 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5894 pub struct DrillOutThemeAnimation(::windows::runtime::IInspectable);
5895 impl DrillOutThemeAnimation {
5896     pub fn new() -> ::windows::runtime::Result<Self> {
5897         Self::IActivationFactory(|f| f.activate_instance::<Self>())
5898     }
5899     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
5900         static mut SHARED: ::windows::runtime::FactoryCache<DrillOutThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
5901         unsafe { SHARED.call(callback) }
5902     }
5903     pub fn EntranceTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
5904         let this = self;
5905         unsafe {
5906             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
5907             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
5908         }
5909     }
5910     pub fn SetEntranceTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5911         let this = self;
5912         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5913     }
5914     pub fn EntranceTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
5915         let this = self;
5916         unsafe {
5917             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5918             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
5919         }
5920     }
5921     pub fn SetEntranceTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5922         let this = self;
5923         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5924     }
5925     pub fn ExitTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
5926         let this = self;
5927         unsafe {
5928             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
5929             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
5930         }
5931     }
5932     pub fn SetExitTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5933         let this = self;
5934         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5935     }
5936     pub fn ExitTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
5937         let this = self;
5938         unsafe {
5939             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5940             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
5941         }
5942     }
5943     pub fn SetExitTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
5944         let this = self;
5945         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
5946     }
5947     pub fn EntranceTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5948         Self::IDrillOutThemeAnimationStatics(|this| unsafe {
5949             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5950             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5951         })
5952     }
5953     pub fn EntranceTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5954         Self::IDrillOutThemeAnimationStatics(|this| unsafe {
5955             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5956             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5957         })
5958     }
5959     pub fn ExitTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5960         Self::IDrillOutThemeAnimationStatics(|this| unsafe {
5961             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5962             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5963         })
5964     }
5965     pub fn ExitTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
5966         Self::IDrillOutThemeAnimationStatics(|this| unsafe {
5967             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5968             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
5969         })
5970     }
5971     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5972         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5973         unsafe {
5974             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5975             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5976         }
5977     }
5978     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
5979         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5980         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
5981     }
5982     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
5983         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5984         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
5985     }
5986     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5987         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5988         unsafe {
5989             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5990             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5991         }
5992     }
5993     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
5994         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
5995         unsafe {
5996             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
5997             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
5998         }
5999     }
6000     #[cfg(feature = "UI_Core")]
6001     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
6002         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6003         unsafe {
6004             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6005             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
6006         }
6007     }
6008     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
6009         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6010         unsafe {
6011             let mut result__: i64 = ::std::mem::zeroed();
6012             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
6013         }
6014     }
6015     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
6016         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6017         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
6018     }
6019     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
6020         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6021         unsafe {
6022             let mut result__: bool = ::std::mem::zeroed();
6023             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6024         }
6025     }
6026     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
6027         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6028         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
6029     }
6030     #[cfg(feature = "Foundation")]
6031     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
6032         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6033         unsafe {
6034             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6035             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
6036         }
6037     }
6038     #[cfg(feature = "Foundation")]
6039     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6040         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6041         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6042     }
6043     #[cfg(feature = "Foundation")]
6044     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
6045         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6046         unsafe {
6047             let mut result__: super::super::Duration = ::std::mem::zeroed();
6048             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
6049         }
6050     }
6051     #[cfg(feature = "Foundation")]
6052     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6053         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6054         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6055     }
6056     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
6057         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6058         unsafe {
6059             let mut result__: f64 = ::std::mem::zeroed();
6060             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
6061         }
6062     }
6063     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
6064         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6065         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
6066     }
6067     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
6068         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6069         unsafe {
6070             let mut result__: FillBehavior = ::std::mem::zeroed();
6071             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
6072         }
6073     }
6074     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
6075         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6076         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
6077     }
6078     #[cfg(feature = "Foundation")]
6079     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
6080         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6081         unsafe {
6082             let mut result__: RepeatBehavior = ::std::mem::zeroed();
6083             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
6084         }
6085     }
6086     #[cfg(feature = "Foundation")]
6087     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6088         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6089         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6090     }
6091     #[cfg(feature = "Foundation")]
6092     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
6093         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6094         unsafe {
6095             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
6096             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
6097         }
6098     }
6099     #[cfg(feature = "Foundation")]
6100     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
6101         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6102         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
6103     }
6104     pub fn IDrillOutThemeAnimationStatics<R, F: FnOnce(&IDrillOutThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
6105         static mut SHARED: ::windows::runtime::FactoryCache<DrillOutThemeAnimation, IDrillOutThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
6106         unsafe { SHARED.call(callback) }
6107     }
6108 }
6109 unsafe impl ::windows::runtime::RuntimeType for DrillOutThemeAnimation {
6110     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DrillOutThemeAnimation;{d890ccdf-06d3-4f7e-8e4a-4fb76e256139})");
6111 }
6112 unsafe impl ::windows::runtime::Interface for DrillOutThemeAnimation {
6113     type Vtable = IDrillOutThemeAnimation_abi;
6114     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3633368287, 1747, 20350, [142, 74, 79, 183, 110, 37, 97, 57]);
6115 }
6116 impl ::windows::runtime::RuntimeName for DrillOutThemeAnimation {
6117     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DrillOutThemeAnimation";
6118 }
6119 impl ::std::convert::From<DrillOutThemeAnimation> for ::windows::runtime::IUnknown {
6120     fn from(value: DrillOutThemeAnimation) -> Self {
6121         unsafe { ::std::mem::transmute(value) }
6122     }
6123 }
6124 impl ::std::convert::From<&DrillOutThemeAnimation> for ::windows::runtime::IUnknown {
6125     fn from(value: &DrillOutThemeAnimation) -> Self {
6126         ::std::convert::From::from(::std::clone::Clone::clone(value))
6127     }
6128 }
6129 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DrillOutThemeAnimation {
6130     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6131         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6132     }
6133 }
6134 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DrillOutThemeAnimation {
6135     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6136         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6137     }
6138 }
6139 impl ::std::convert::From<DrillOutThemeAnimation> for ::windows::runtime::IInspectable {
6140     fn from(value: DrillOutThemeAnimation) -> Self {
6141         value.0
6142     }
6143 }
6144 impl ::std::convert::From<&DrillOutThemeAnimation> for ::windows::runtime::IInspectable {
6145     fn from(value: &DrillOutThemeAnimation) -> Self {
6146         value.0.clone()
6147     }
6148 }
6149 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DrillOutThemeAnimation {
6150     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6151         ::windows::runtime::Param::Owned(self.0)
6152     }
6153 }
6154 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DrillOutThemeAnimation {
6155     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6156         ::windows::runtime::Param::Borrowed(&self.0)
6157     }
6158 }
6159 impl ::std::convert::From<DrillOutThemeAnimation> for Timeline {
6160     fn from(value: DrillOutThemeAnimation) -> Self {
6161         ::std::convert::Into::<Timeline>::into(&value)
6162     }
6163 }
6164 impl ::std::convert::From<&DrillOutThemeAnimation> for Timeline {
6165     fn from(value: &DrillOutThemeAnimation) -> Self {
6166         ::windows::runtime::Interface::cast(value).unwrap()
6167     }
6168 }
6169 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for DrillOutThemeAnimation {
6170     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
6171         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
6172     }
6173 }
6174 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &DrillOutThemeAnimation {
6175     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
6176         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
6177     }
6178 }
6179 impl ::std::convert::From<DrillOutThemeAnimation> for super::super::DependencyObject {
6180     fn from(value: DrillOutThemeAnimation) -> Self {
6181         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
6182     }
6183 }
6184 impl ::std::convert::From<&DrillOutThemeAnimation> for super::super::DependencyObject {
6185     fn from(value: &DrillOutThemeAnimation) -> Self {
6186         ::windows::runtime::Interface::cast(value).unwrap()
6187     }
6188 }
6189 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DrillOutThemeAnimation {
6190     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
6191         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
6192     }
6193 }
6194 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DrillOutThemeAnimation {
6195     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
6196         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
6197     }
6198 }
6199 unsafe impl ::std::marker::Send for DrillOutThemeAnimation {}
6200 unsafe impl ::std::marker::Sync for DrillOutThemeAnimation {}
6201 #[repr(transparent)]
6202 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6203 pub struct DropTargetItemThemeAnimation(::windows::runtime::IInspectable);
6204 impl DropTargetItemThemeAnimation {
6205     pub fn new() -> ::windows::runtime::Result<Self> {
6206         Self::IActivationFactory(|f| f.activate_instance::<Self>())
6207     }
6208     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
6209         static mut SHARED: ::windows::runtime::FactoryCache<DropTargetItemThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
6210         unsafe { SHARED.call(callback) }
6211     }
6212     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
6213         let this = self;
6214         unsafe {
6215             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
6216             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
6217         }
6218     }
6219     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6220         let this = self;
6221         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6222     }
6223     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
6224         Self::IDropTargetItemThemeAnimationStatics(|this| unsafe {
6225             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6226             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
6227         })
6228     }
6229     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6230         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6231         unsafe {
6232             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6233             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6234         }
6235     }
6236     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
6237         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6238         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
6239     }
6240     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
6241         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6242         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
6243     }
6244     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6245         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6246         unsafe {
6247             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6248             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6249         }
6250     }
6251     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6252         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6253         unsafe {
6254             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6255             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6256         }
6257     }
6258     #[cfg(feature = "UI_Core")]
6259     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
6260         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6261         unsafe {
6262             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6263             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
6264         }
6265     }
6266     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
6267         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6268         unsafe {
6269             let mut result__: i64 = ::std::mem::zeroed();
6270             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
6271         }
6272     }
6273     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
6274         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6275         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
6276     }
6277     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
6278         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6279         unsafe {
6280             let mut result__: bool = ::std::mem::zeroed();
6281             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
6282         }
6283     }
6284     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
6285         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6286         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
6287     }
6288     #[cfg(feature = "Foundation")]
6289     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
6290         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6291         unsafe {
6292             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6293             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
6294         }
6295     }
6296     #[cfg(feature = "Foundation")]
6297     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6298         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6299         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6300     }
6301     #[cfg(feature = "Foundation")]
6302     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
6303         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6304         unsafe {
6305             let mut result__: super::super::Duration = ::std::mem::zeroed();
6306             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
6307         }
6308     }
6309     #[cfg(feature = "Foundation")]
6310     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6311         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6312         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6313     }
6314     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
6315         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6316         unsafe {
6317             let mut result__: f64 = ::std::mem::zeroed();
6318             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
6319         }
6320     }
6321     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
6322         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6323         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
6324     }
6325     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
6326         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6327         unsafe {
6328             let mut result__: FillBehavior = ::std::mem::zeroed();
6329             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
6330         }
6331     }
6332     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
6333         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6334         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
6335     }
6336     #[cfg(feature = "Foundation")]
6337     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
6338         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6339         unsafe {
6340             let mut result__: RepeatBehavior = ::std::mem::zeroed();
6341             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
6342         }
6343     }
6344     #[cfg(feature = "Foundation")]
6345     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6346         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6347         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6348     }
6349     #[cfg(feature = "Foundation")]
6350     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
6351         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6352         unsafe {
6353             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
6354             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
6355         }
6356     }
6357     #[cfg(feature = "Foundation")]
6358     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
6359         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
6360         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
6361     }
6362     pub fn IDropTargetItemThemeAnimationStatics<R, F: FnOnce(&IDropTargetItemThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
6363         static mut SHARED: ::windows::runtime::FactoryCache<DropTargetItemThemeAnimation, IDropTargetItemThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
6364         unsafe { SHARED.call(callback) }
6365     }
6366 }
6367 unsafe impl ::windows::runtime::RuntimeType for DropTargetItemThemeAnimation {
6368     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.DropTargetItemThemeAnimation;{1881c968-1824-462b-87e8-c357212b977b})");
6369 }
6370 unsafe impl ::windows::runtime::Interface for DropTargetItemThemeAnimation {
6371     type Vtable = IDropTargetItemThemeAnimation_abi;
6372     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(411158888, 6180, 17963, [135, 232, 195, 87, 33, 43, 151, 123]);
6373 }
6374 impl ::windows::runtime::RuntimeName for DropTargetItemThemeAnimation {
6375     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.DropTargetItemThemeAnimation";
6376 }
6377 impl ::std::convert::From<DropTargetItemThemeAnimation> for ::windows::runtime::IUnknown {
6378     fn from(value: DropTargetItemThemeAnimation) -> Self {
6379         unsafe { ::std::mem::transmute(value) }
6380     }
6381 }
6382 impl ::std::convert::From<&DropTargetItemThemeAnimation> for ::windows::runtime::IUnknown {
6383     fn from(value: &DropTargetItemThemeAnimation) -> Self {
6384         ::std::convert::From::from(::std::clone::Clone::clone(value))
6385     }
6386 }
6387 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DropTargetItemThemeAnimation {
6388     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6389         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6390     }
6391 }
6392 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DropTargetItemThemeAnimation {
6393     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6394         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6395     }
6396 }
6397 impl ::std::convert::From<DropTargetItemThemeAnimation> for ::windows::runtime::IInspectable {
6398     fn from(value: DropTargetItemThemeAnimation) -> Self {
6399         value.0
6400     }
6401 }
6402 impl ::std::convert::From<&DropTargetItemThemeAnimation> for ::windows::runtime::IInspectable {
6403     fn from(value: &DropTargetItemThemeAnimation) -> Self {
6404         value.0.clone()
6405     }
6406 }
6407 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DropTargetItemThemeAnimation {
6408     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6409         ::windows::runtime::Param::Owned(self.0)
6410     }
6411 }
6412 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DropTargetItemThemeAnimation {
6413     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6414         ::windows::runtime::Param::Borrowed(&self.0)
6415     }
6416 }
6417 impl ::std::convert::From<DropTargetItemThemeAnimation> for Timeline {
6418     fn from(value: DropTargetItemThemeAnimation) -> Self {
6419         ::std::convert::Into::<Timeline>::into(&value)
6420     }
6421 }
6422 impl ::std::convert::From<&DropTargetItemThemeAnimation> for Timeline {
6423     fn from(value: &DropTargetItemThemeAnimation) -> Self {
6424         ::windows::runtime::Interface::cast(value).unwrap()
6425     }
6426 }
6427 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for DropTargetItemThemeAnimation {
6428     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
6429         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
6430     }
6431 }
6432 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &DropTargetItemThemeAnimation {
6433     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
6434         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
6435     }
6436 }
6437 impl ::std::convert::From<DropTargetItemThemeAnimation> for super::super::DependencyObject {
6438     fn from(value: DropTargetItemThemeAnimation) -> Self {
6439         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
6440     }
6441 }
6442 impl ::std::convert::From<&DropTargetItemThemeAnimation> for super::super::DependencyObject {
6443     fn from(value: &DropTargetItemThemeAnimation) -> Self {
6444         ::windows::runtime::Interface::cast(value).unwrap()
6445     }
6446 }
6447 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for DropTargetItemThemeAnimation {
6448     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
6449         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
6450     }
6451 }
6452 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &DropTargetItemThemeAnimation {
6453     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
6454         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
6455     }
6456 }
6457 unsafe impl ::std::marker::Send for DropTargetItemThemeAnimation {}
6458 unsafe impl ::std::marker::Sync for DropTargetItemThemeAnimation {}
6459 #[repr(transparent)]
6460 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6461 pub struct EasingColorKeyFrame(::windows::runtime::IInspectable);
6462 impl EasingColorKeyFrame {
6463     pub fn new() -> ::windows::runtime::Result<Self> {
6464         Self::IActivationFactory(|f| f.activate_instance::<Self>())
6465     }
6466     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
6467         static mut SHARED: ::windows::runtime::FactoryCache<EasingColorKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
6468         unsafe { SHARED.call(callback) }
6469     }
6470     pub fn EasingFunction(&self) -> ::windows::runtime::Result<EasingFunctionBase> {
6471         let this = self;
6472         unsafe {
6473             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6474             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingFunctionBase>(result__)
6475         }
6476     }
6477     pub fn SetEasingFunction<'a, Param0: ::windows::runtime::IntoParam<'a, EasingFunctionBase>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6478         let this = self;
6479         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6480     }
6481     pub fn EasingFunctionProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
6482         Self::IEasingColorKeyFrameStatics(|this| unsafe {
6483             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6484             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
6485         })
6486     }
6487     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6488         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6489         unsafe {
6490             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6491             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6492         }
6493     }
6494     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
6495         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6496         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
6497     }
6498     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
6499         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6500         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
6501     }
6502     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6503         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6504         unsafe {
6505             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6506             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6507         }
6508     }
6509     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6510         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6511         unsafe {
6512             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6513             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6514         }
6515     }
6516     #[cfg(feature = "UI_Core")]
6517     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
6518         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6519         unsafe {
6520             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6521             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
6522         }
6523     }
6524     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
6525         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6526         unsafe {
6527             let mut result__: i64 = ::std::mem::zeroed();
6528             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
6529         }
6530     }
6531     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
6532         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6533         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
6534     }
6535     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::Color> {
6536         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
6537         unsafe {
6538             let mut result__: super::super::super::Color = ::std::mem::zeroed();
6539             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Color>(result__)
6540         }
6541     }
6542     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Color>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6543         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
6544         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6545     }
6546     #[cfg(feature = "Foundation")]
6547     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
6548         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
6549         unsafe {
6550             let mut result__: KeyTime = ::std::mem::zeroed();
6551             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
6552         }
6553     }
6554     #[cfg(feature = "Foundation")]
6555     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6556         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
6557         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6558     }
6559     pub fn IEasingColorKeyFrameStatics<R, F: FnOnce(&IEasingColorKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
6560         static mut SHARED: ::windows::runtime::FactoryCache<EasingColorKeyFrame, IEasingColorKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
6561         unsafe { SHARED.call(callback) }
6562     }
6563 }
6564 unsafe impl ::windows::runtime::RuntimeType for EasingColorKeyFrame {
6565     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.EasingColorKeyFrame;{c733d630-f4b9-4934-9bdd-27ac5ed1cfd8})");
6566 }
6567 unsafe impl ::windows::runtime::Interface for EasingColorKeyFrame {
6568     type Vtable = IEasingColorKeyFrame_abi;
6569     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3342063152, 62649, 18740, [155, 221, 39, 172, 94, 209, 207, 216]);
6570 }
6571 impl ::windows::runtime::RuntimeName for EasingColorKeyFrame {
6572     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.EasingColorKeyFrame";
6573 }
6574 impl ::std::convert::From<EasingColorKeyFrame> for ::windows::runtime::IUnknown {
6575     fn from(value: EasingColorKeyFrame) -> Self {
6576         unsafe { ::std::mem::transmute(value) }
6577     }
6578 }
6579 impl ::std::convert::From<&EasingColorKeyFrame> for ::windows::runtime::IUnknown {
6580     fn from(value: &EasingColorKeyFrame) -> Self {
6581         ::std::convert::From::from(::std::clone::Clone::clone(value))
6582     }
6583 }
6584 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EasingColorKeyFrame {
6585     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6586         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6587     }
6588 }
6589 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EasingColorKeyFrame {
6590     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6591         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6592     }
6593 }
6594 impl ::std::convert::From<EasingColorKeyFrame> for ::windows::runtime::IInspectable {
6595     fn from(value: EasingColorKeyFrame) -> Self {
6596         value.0
6597     }
6598 }
6599 impl ::std::convert::From<&EasingColorKeyFrame> for ::windows::runtime::IInspectable {
6600     fn from(value: &EasingColorKeyFrame) -> Self {
6601         value.0.clone()
6602     }
6603 }
6604 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EasingColorKeyFrame {
6605     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6606         ::windows::runtime::Param::Owned(self.0)
6607     }
6608 }
6609 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EasingColorKeyFrame {
6610     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6611         ::windows::runtime::Param::Borrowed(&self.0)
6612     }
6613 }
6614 impl ::std::convert::From<EasingColorKeyFrame> for ColorKeyFrame {
6615     fn from(value: EasingColorKeyFrame) -> Self {
6616         ::std::convert::Into::<ColorKeyFrame>::into(&value)
6617     }
6618 }
6619 impl ::std::convert::From<&EasingColorKeyFrame> for ColorKeyFrame {
6620     fn from(value: &EasingColorKeyFrame) -> Self {
6621         ::windows::runtime::Interface::cast(value).unwrap()
6622     }
6623 }
6624 impl<'a> ::windows::runtime::IntoParam<'a, ColorKeyFrame> for EasingColorKeyFrame {
6625     fn into_param(self) -> ::windows::runtime::Param<'a, ColorKeyFrame> {
6626         ::windows::runtime::Param::Owned(::std::convert::Into::<ColorKeyFrame>::into(self))
6627     }
6628 }
6629 impl<'a> ::windows::runtime::IntoParam<'a, ColorKeyFrame> for &EasingColorKeyFrame {
6630     fn into_param(self) -> ::windows::runtime::Param<'a, ColorKeyFrame> {
6631         ::windows::runtime::Param::Owned(::std::convert::Into::<ColorKeyFrame>::into(::std::clone::Clone::clone(self)))
6632     }
6633 }
6634 impl ::std::convert::From<EasingColorKeyFrame> for super::super::DependencyObject {
6635     fn from(value: EasingColorKeyFrame) -> Self {
6636         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
6637     }
6638 }
6639 impl ::std::convert::From<&EasingColorKeyFrame> for super::super::DependencyObject {
6640     fn from(value: &EasingColorKeyFrame) -> Self {
6641         ::windows::runtime::Interface::cast(value).unwrap()
6642     }
6643 }
6644 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for EasingColorKeyFrame {
6645     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
6646         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
6647     }
6648 }
6649 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &EasingColorKeyFrame {
6650     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
6651         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
6652     }
6653 }
6654 unsafe impl ::std::marker::Send for EasingColorKeyFrame {}
6655 unsafe impl ::std::marker::Sync for EasingColorKeyFrame {}
6656 #[repr(transparent)]
6657 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6658 pub struct EasingDoubleKeyFrame(::windows::runtime::IInspectable);
6659 impl EasingDoubleKeyFrame {
6660     pub fn new() -> ::windows::runtime::Result<Self> {
6661         Self::IActivationFactory(|f| f.activate_instance::<Self>())
6662     }
6663     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
6664         static mut SHARED: ::windows::runtime::FactoryCache<EasingDoubleKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
6665         unsafe { SHARED.call(callback) }
6666     }
6667     pub fn EasingFunction(&self) -> ::windows::runtime::Result<EasingFunctionBase> {
6668         let this = self;
6669         unsafe {
6670             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6671             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingFunctionBase>(result__)
6672         }
6673     }
6674     pub fn SetEasingFunction<'a, Param0: ::windows::runtime::IntoParam<'a, EasingFunctionBase>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6675         let this = self;
6676         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6677     }
6678     pub fn EasingFunctionProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
6679         Self::IEasingDoubleKeyFrameStatics(|this| unsafe {
6680             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6681             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
6682         })
6683     }
6684     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6685         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6686         unsafe {
6687             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6688             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6689         }
6690     }
6691     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
6692         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6693         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
6694     }
6695     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
6696         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6697         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
6698     }
6699     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6700         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6701         unsafe {
6702             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6703             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6704         }
6705     }
6706     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6707         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6708         unsafe {
6709             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6710             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6711         }
6712     }
6713     #[cfg(feature = "UI_Core")]
6714     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
6715         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6716         unsafe {
6717             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6718             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
6719         }
6720     }
6721     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
6722         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6723         unsafe {
6724             let mut result__: i64 = ::std::mem::zeroed();
6725             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
6726         }
6727     }
6728     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
6729         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6730         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
6731     }
6732     pub fn Value(&self) -> ::windows::runtime::Result<f64> {
6733         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
6734         unsafe {
6735             let mut result__: f64 = ::std::mem::zeroed();
6736             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
6737         }
6738     }
6739     pub fn SetValue2(&self, value: f64) -> ::windows::runtime::Result<()> {
6740         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
6741         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
6742     }
6743     #[cfg(feature = "Foundation")]
6744     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
6745         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
6746         unsafe {
6747             let mut result__: KeyTime = ::std::mem::zeroed();
6748             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
6749         }
6750     }
6751     #[cfg(feature = "Foundation")]
6752     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
6753         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
6754         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
6755     }
6756     pub fn IEasingDoubleKeyFrameStatics<R, F: FnOnce(&IEasingDoubleKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
6757         static mut SHARED: ::windows::runtime::FactoryCache<EasingDoubleKeyFrame, IEasingDoubleKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
6758         unsafe { SHARED.call(callback) }
6759     }
6760 }
6761 unsafe impl ::windows::runtime::RuntimeType for EasingDoubleKeyFrame {
6762     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.EasingDoubleKeyFrame;{965adb8d-9a54-4108-b4ff-b5a5212cb338})");
6763 }
6764 unsafe impl ::windows::runtime::Interface for EasingDoubleKeyFrame {
6765     type Vtable = IEasingDoubleKeyFrame_abi;
6766     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2522536845, 39508, 16648, [180, 255, 181, 165, 33, 44, 179, 56]);
6767 }
6768 impl ::windows::runtime::RuntimeName for EasingDoubleKeyFrame {
6769     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.EasingDoubleKeyFrame";
6770 }
6771 impl ::std::convert::From<EasingDoubleKeyFrame> for ::windows::runtime::IUnknown {
6772     fn from(value: EasingDoubleKeyFrame) -> Self {
6773         unsafe { ::std::mem::transmute(value) }
6774     }
6775 }
6776 impl ::std::convert::From<&EasingDoubleKeyFrame> for ::windows::runtime::IUnknown {
6777     fn from(value: &EasingDoubleKeyFrame) -> Self {
6778         ::std::convert::From::from(::std::clone::Clone::clone(value))
6779     }
6780 }
6781 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EasingDoubleKeyFrame {
6782     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6783         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6784     }
6785 }
6786 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EasingDoubleKeyFrame {
6787     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6788         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6789     }
6790 }
6791 impl ::std::convert::From<EasingDoubleKeyFrame> for ::windows::runtime::IInspectable {
6792     fn from(value: EasingDoubleKeyFrame) -> Self {
6793         value.0
6794     }
6795 }
6796 impl ::std::convert::From<&EasingDoubleKeyFrame> for ::windows::runtime::IInspectable {
6797     fn from(value: &EasingDoubleKeyFrame) -> Self {
6798         value.0.clone()
6799     }
6800 }
6801 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EasingDoubleKeyFrame {
6802     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6803         ::windows::runtime::Param::Owned(self.0)
6804     }
6805 }
6806 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EasingDoubleKeyFrame {
6807     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6808         ::windows::runtime::Param::Borrowed(&self.0)
6809     }
6810 }
6811 impl ::std::convert::From<EasingDoubleKeyFrame> for DoubleKeyFrame {
6812     fn from(value: EasingDoubleKeyFrame) -> Self {
6813         ::std::convert::Into::<DoubleKeyFrame>::into(&value)
6814     }
6815 }
6816 impl ::std::convert::From<&EasingDoubleKeyFrame> for DoubleKeyFrame {
6817     fn from(value: &EasingDoubleKeyFrame) -> Self {
6818         ::windows::runtime::Interface::cast(value).unwrap()
6819     }
6820 }
6821 impl<'a> ::windows::runtime::IntoParam<'a, DoubleKeyFrame> for EasingDoubleKeyFrame {
6822     fn into_param(self) -> ::windows::runtime::Param<'a, DoubleKeyFrame> {
6823         ::windows::runtime::Param::Owned(::std::convert::Into::<DoubleKeyFrame>::into(self))
6824     }
6825 }
6826 impl<'a> ::windows::runtime::IntoParam<'a, DoubleKeyFrame> for &EasingDoubleKeyFrame {
6827     fn into_param(self) -> ::windows::runtime::Param<'a, DoubleKeyFrame> {
6828         ::windows::runtime::Param::Owned(::std::convert::Into::<DoubleKeyFrame>::into(::std::clone::Clone::clone(self)))
6829     }
6830 }
6831 impl ::std::convert::From<EasingDoubleKeyFrame> for super::super::DependencyObject {
6832     fn from(value: EasingDoubleKeyFrame) -> Self {
6833         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
6834     }
6835 }
6836 impl ::std::convert::From<&EasingDoubleKeyFrame> for super::super::DependencyObject {
6837     fn from(value: &EasingDoubleKeyFrame) -> Self {
6838         ::windows::runtime::Interface::cast(value).unwrap()
6839     }
6840 }
6841 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for EasingDoubleKeyFrame {
6842     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
6843         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
6844     }
6845 }
6846 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &EasingDoubleKeyFrame {
6847     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
6848         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
6849     }
6850 }
6851 unsafe impl ::std::marker::Send for EasingDoubleKeyFrame {}
6852 unsafe impl ::std::marker::Sync for EasingDoubleKeyFrame {}
6853 #[repr(transparent)]
6854 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6855 pub struct EasingFunctionBase(::windows::runtime::IInspectable);
6856 impl EasingFunctionBase {
6857     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
6858         let this = self;
6859         unsafe {
6860             let mut result__: EasingMode = ::std::mem::zeroed();
6861             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
6862         }
6863     }
6864     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
6865         let this = self;
6866         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
6867     }
6868     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
6869         let this = self;
6870         unsafe {
6871             let mut result__: f64 = ::std::mem::zeroed();
6872             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
6873         }
6874     }
6875     pub fn EasingModeProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
6876         Self::IEasingFunctionBaseStatics(|this| unsafe {
6877             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6878             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
6879         })
6880     }
6881     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6882         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6883         unsafe {
6884             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6885             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6886         }
6887     }
6888     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
6889         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6890         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
6891     }
6892     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
6893         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6894         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
6895     }
6896     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6897         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6898         unsafe {
6899             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6900             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6901         }
6902     }
6903     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
6904         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6905         unsafe {
6906             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6907             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
6908         }
6909     }
6910     #[cfg(feature = "UI_Core")]
6911     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
6912         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
6913         unsafe {
6914             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
6915             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
6916         }
6917     }
6918     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
6919         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6920         unsafe {
6921             let mut result__: i64 = ::std::mem::zeroed();
6922             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
6923         }
6924     }
6925     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
6926         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
6927         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
6928     }
6929     pub fn IEasingFunctionBaseStatics<R, F: FnOnce(&IEasingFunctionBaseStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
6930         static mut SHARED: ::windows::runtime::FactoryCache<EasingFunctionBase, IEasingFunctionBaseStatics> = ::windows::runtime::FactoryCache::new();
6931         unsafe { SHARED.call(callback) }
6932     }
6933 }
6934 unsafe impl ::windows::runtime::RuntimeType for EasingFunctionBase {
6935     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.EasingFunctionBase;{c108383f-2c02-4151-8ecd-68ddaa3f0d9b})");
6936 }
6937 unsafe impl ::windows::runtime::Interface for EasingFunctionBase {
6938     type Vtable = IEasingFunctionBase_abi;
6939     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3238541375, 11266, 16721, [142, 205, 104, 221, 170, 63, 13, 155]);
6940 }
6941 impl ::windows::runtime::RuntimeName for EasingFunctionBase {
6942     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.EasingFunctionBase";
6943 }
6944 impl ::std::convert::From<EasingFunctionBase> for ::windows::runtime::IUnknown {
6945     fn from(value: EasingFunctionBase) -> Self {
6946         unsafe { ::std::mem::transmute(value) }
6947     }
6948 }
6949 impl ::std::convert::From<&EasingFunctionBase> for ::windows::runtime::IUnknown {
6950     fn from(value: &EasingFunctionBase) -> Self {
6951         ::std::convert::From::from(::std::clone::Clone::clone(value))
6952     }
6953 }
6954 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EasingFunctionBase {
6955     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6956         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
6957     }
6958 }
6959 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EasingFunctionBase {
6960     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
6961         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
6962     }
6963 }
6964 impl ::std::convert::From<EasingFunctionBase> for ::windows::runtime::IInspectable {
6965     fn from(value: EasingFunctionBase) -> Self {
6966         value.0
6967     }
6968 }
6969 impl ::std::convert::From<&EasingFunctionBase> for ::windows::runtime::IInspectable {
6970     fn from(value: &EasingFunctionBase) -> Self {
6971         value.0.clone()
6972     }
6973 }
6974 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EasingFunctionBase {
6975     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6976         ::windows::runtime::Param::Owned(self.0)
6977     }
6978 }
6979 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EasingFunctionBase {
6980     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
6981         ::windows::runtime::Param::Borrowed(&self.0)
6982     }
6983 }
6984 impl ::std::convert::From<EasingFunctionBase> for super::super::DependencyObject {
6985     fn from(value: EasingFunctionBase) -> Self {
6986         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
6987     }
6988 }
6989 impl ::std::convert::From<&EasingFunctionBase> for super::super::DependencyObject {
6990     fn from(value: &EasingFunctionBase) -> Self {
6991         ::windows::runtime::Interface::cast(value).unwrap()
6992     }
6993 }
6994 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for EasingFunctionBase {
6995     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
6996         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
6997     }
6998 }
6999 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &EasingFunctionBase {
7000     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7001         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
7002     }
7003 }
7004 unsafe impl ::std::marker::Send for EasingFunctionBase {}
7005 unsafe impl ::std::marker::Sync for EasingFunctionBase {}
7006 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
7007 #[repr(transparent)]
7008 pub struct EasingMode(pub i32);
7009 impl EasingMode {
7010     pub const EaseOut: EasingMode = EasingMode(0i32);
7011     pub const EaseIn: EasingMode = EasingMode(1i32);
7012     pub const EaseInOut: EasingMode = EasingMode(2i32);
7013 }
7014 impl ::std::convert::From<i32> for EasingMode {
7015     fn from(value: i32) -> Self {
7016         Self(value)
7017     }
7018 }
7019 unsafe impl ::windows::runtime::Abi for EasingMode {
7020     type Abi = Self;
7021     type DefaultType = Self;
7022 }
7023 unsafe impl ::windows::runtime::RuntimeType for EasingMode {
7024     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.UI.Xaml.Media.Animation.EasingMode;i4)");
7025 }
7026 #[repr(transparent)]
7027 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7028 pub struct EasingPointKeyFrame(::windows::runtime::IInspectable);
7029 impl EasingPointKeyFrame {
7030     pub fn new() -> ::windows::runtime::Result<Self> {
7031         Self::IActivationFactory(|f| f.activate_instance::<Self>())
7032     }
7033     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7034         static mut SHARED: ::windows::runtime::FactoryCache<EasingPointKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
7035         unsafe { SHARED.call(callback) }
7036     }
7037     pub fn EasingFunction(&self) -> ::windows::runtime::Result<EasingFunctionBase> {
7038         let this = self;
7039         unsafe {
7040             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7041             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingFunctionBase>(result__)
7042         }
7043     }
7044     pub fn SetEasingFunction<'a, Param0: ::windows::runtime::IntoParam<'a, EasingFunctionBase>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
7045         let this = self;
7046         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
7047     }
7048     pub fn EasingFunctionProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
7049         Self::IEasingPointKeyFrameStatics(|this| unsafe {
7050             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7051             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
7052         })
7053     }
7054     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7055         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7056         unsafe {
7057             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7058             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7059         }
7060     }
7061     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
7062         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7063         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
7064     }
7065     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
7066         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7067         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
7068     }
7069     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7070         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7071         unsafe {
7072             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7073             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7074         }
7075     }
7076     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7077         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7078         unsafe {
7079             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7080             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7081         }
7082     }
7083     #[cfg(feature = "UI_Core")]
7084     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
7085         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7086         unsafe {
7087             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7088             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
7089         }
7090     }
7091     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
7092         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7093         unsafe {
7094             let mut result__: i64 = ::std::mem::zeroed();
7095             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
7096         }
7097     }
7098     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
7099         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7100         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
7101     }
7102     #[cfg(feature = "Foundation")]
7103     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Point> {
7104         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
7105         unsafe {
7106             let mut result__: super::super::super::super::Foundation::Point = ::std::mem::zeroed();
7107             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Point>(result__)
7108         }
7109     }
7110     #[cfg(feature = "Foundation")]
7111     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Point>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
7112         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
7113         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
7114     }
7115     #[cfg(feature = "Foundation")]
7116     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
7117         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
7118         unsafe {
7119             let mut result__: KeyTime = ::std::mem::zeroed();
7120             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
7121         }
7122     }
7123     #[cfg(feature = "Foundation")]
7124     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
7125         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
7126         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
7127     }
7128     pub fn IEasingPointKeyFrameStatics<R, F: FnOnce(&IEasingPointKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7129         static mut SHARED: ::windows::runtime::FactoryCache<EasingPointKeyFrame, IEasingPointKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
7130         unsafe { SHARED.call(callback) }
7131     }
7132 }
7133 unsafe impl ::windows::runtime::RuntimeType for EasingPointKeyFrame {
7134     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.EasingPointKeyFrame;{b3c91380-6868-4225-a70b-3981cc0b2947})");
7135 }
7136 unsafe impl ::windows::runtime::Interface for EasingPointKeyFrame {
7137     type Vtable = IEasingPointKeyFrame_abi;
7138     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3016299392, 26728, 16933, [167, 11, 57, 129, 204, 11, 41, 71]);
7139 }
7140 impl ::windows::runtime::RuntimeName for EasingPointKeyFrame {
7141     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.EasingPointKeyFrame";
7142 }
7143 impl ::std::convert::From<EasingPointKeyFrame> for ::windows::runtime::IUnknown {
7144     fn from(value: EasingPointKeyFrame) -> Self {
7145         unsafe { ::std::mem::transmute(value) }
7146     }
7147 }
7148 impl ::std::convert::From<&EasingPointKeyFrame> for ::windows::runtime::IUnknown {
7149     fn from(value: &EasingPointKeyFrame) -> Self {
7150         ::std::convert::From::from(::std::clone::Clone::clone(value))
7151     }
7152 }
7153 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EasingPointKeyFrame {
7154     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7155         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7156     }
7157 }
7158 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EasingPointKeyFrame {
7159     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7160         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7161     }
7162 }
7163 impl ::std::convert::From<EasingPointKeyFrame> for ::windows::runtime::IInspectable {
7164     fn from(value: EasingPointKeyFrame) -> Self {
7165         value.0
7166     }
7167 }
7168 impl ::std::convert::From<&EasingPointKeyFrame> for ::windows::runtime::IInspectable {
7169     fn from(value: &EasingPointKeyFrame) -> Self {
7170         value.0.clone()
7171     }
7172 }
7173 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EasingPointKeyFrame {
7174     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7175         ::windows::runtime::Param::Owned(self.0)
7176     }
7177 }
7178 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EasingPointKeyFrame {
7179     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7180         ::windows::runtime::Param::Borrowed(&self.0)
7181     }
7182 }
7183 impl ::std::convert::From<EasingPointKeyFrame> for PointKeyFrame {
7184     fn from(value: EasingPointKeyFrame) -> Self {
7185         ::std::convert::Into::<PointKeyFrame>::into(&value)
7186     }
7187 }
7188 impl ::std::convert::From<&EasingPointKeyFrame> for PointKeyFrame {
7189     fn from(value: &EasingPointKeyFrame) -> Self {
7190         ::windows::runtime::Interface::cast(value).unwrap()
7191     }
7192 }
7193 impl<'a> ::windows::runtime::IntoParam<'a, PointKeyFrame> for EasingPointKeyFrame {
7194     fn into_param(self) -> ::windows::runtime::Param<'a, PointKeyFrame> {
7195         ::windows::runtime::Param::Owned(::std::convert::Into::<PointKeyFrame>::into(self))
7196     }
7197 }
7198 impl<'a> ::windows::runtime::IntoParam<'a, PointKeyFrame> for &EasingPointKeyFrame {
7199     fn into_param(self) -> ::windows::runtime::Param<'a, PointKeyFrame> {
7200         ::windows::runtime::Param::Owned(::std::convert::Into::<PointKeyFrame>::into(::std::clone::Clone::clone(self)))
7201     }
7202 }
7203 impl ::std::convert::From<EasingPointKeyFrame> for super::super::DependencyObject {
7204     fn from(value: EasingPointKeyFrame) -> Self {
7205         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
7206     }
7207 }
7208 impl ::std::convert::From<&EasingPointKeyFrame> for super::super::DependencyObject {
7209     fn from(value: &EasingPointKeyFrame) -> Self {
7210         ::windows::runtime::Interface::cast(value).unwrap()
7211     }
7212 }
7213 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for EasingPointKeyFrame {
7214     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7215         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
7216     }
7217 }
7218 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &EasingPointKeyFrame {
7219     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7220         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
7221     }
7222 }
7223 unsafe impl ::std::marker::Send for EasingPointKeyFrame {}
7224 unsafe impl ::std::marker::Sync for EasingPointKeyFrame {}
7225 #[repr(transparent)]
7226 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7227 pub struct EdgeUIThemeTransition(::windows::runtime::IInspectable);
7228 impl EdgeUIThemeTransition {
7229     pub fn new() -> ::windows::runtime::Result<Self> {
7230         Self::IActivationFactory(|f| f.activate_instance::<Self>())
7231     }
7232     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7233         static mut SHARED: ::windows::runtime::FactoryCache<EdgeUIThemeTransition, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
7234         unsafe { SHARED.call(callback) }
7235     }
7236     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
7237     pub fn Edge(&self) -> ::windows::runtime::Result<super::super::Controls::Primitives::EdgeTransitionLocation> {
7238         let this = self;
7239         unsafe {
7240             let mut result__: super::super::Controls::Primitives::EdgeTransitionLocation = ::std::mem::zeroed();
7241             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Controls::Primitives::EdgeTransitionLocation>(result__)
7242         }
7243     }
7244     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
7245     pub fn SetEdge(&self, value: super::super::Controls::Primitives::EdgeTransitionLocation) -> ::windows::runtime::Result<()> {
7246         let this = self;
7247         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
7248     }
7249     pub fn EdgeProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
7250         Self::IEdgeUIThemeTransitionStatics(|this| unsafe {
7251             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7252             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
7253         })
7254     }
7255     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7256         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7257         unsafe {
7258             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7259             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7260         }
7261     }
7262     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
7263         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7264         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
7265     }
7266     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
7267         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7268         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
7269     }
7270     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7271         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7272         unsafe {
7273             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7274             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7275         }
7276     }
7277     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7278         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7279         unsafe {
7280             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7281             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7282         }
7283     }
7284     #[cfg(feature = "UI_Core")]
7285     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
7286         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7287         unsafe {
7288             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7289             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
7290         }
7291     }
7292     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
7293         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7294         unsafe {
7295             let mut result__: i64 = ::std::mem::zeroed();
7296             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
7297         }
7298     }
7299     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
7300         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7301         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
7302     }
7303     pub fn IEdgeUIThemeTransitionStatics<R, F: FnOnce(&IEdgeUIThemeTransitionStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7304         static mut SHARED: ::windows::runtime::FactoryCache<EdgeUIThemeTransition, IEdgeUIThemeTransitionStatics> = ::windows::runtime::FactoryCache::new();
7305         unsafe { SHARED.call(callback) }
7306     }
7307 }
7308 unsafe impl ::windows::runtime::RuntimeType for EdgeUIThemeTransition {
7309     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.EdgeUIThemeTransition;{5c86c19b-49d7-19ec-cf19-83a73c6de75e})");
7310 }
7311 unsafe impl ::windows::runtime::Interface for EdgeUIThemeTransition {
7312     type Vtable = IEdgeUIThemeTransition_abi;
7313     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1552335259, 18903, 6636, [207, 25, 131, 167, 60, 109, 231, 94]);
7314 }
7315 impl ::windows::runtime::RuntimeName for EdgeUIThemeTransition {
7316     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.EdgeUIThemeTransition";
7317 }
7318 impl ::std::convert::From<EdgeUIThemeTransition> for ::windows::runtime::IUnknown {
7319     fn from(value: EdgeUIThemeTransition) -> Self {
7320         unsafe { ::std::mem::transmute(value) }
7321     }
7322 }
7323 impl ::std::convert::From<&EdgeUIThemeTransition> for ::windows::runtime::IUnknown {
7324     fn from(value: &EdgeUIThemeTransition) -> Self {
7325         ::std::convert::From::from(::std::clone::Clone::clone(value))
7326     }
7327 }
7328 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EdgeUIThemeTransition {
7329     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7330         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7331     }
7332 }
7333 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EdgeUIThemeTransition {
7334     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7335         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7336     }
7337 }
7338 impl ::std::convert::From<EdgeUIThemeTransition> for ::windows::runtime::IInspectable {
7339     fn from(value: EdgeUIThemeTransition) -> Self {
7340         value.0
7341     }
7342 }
7343 impl ::std::convert::From<&EdgeUIThemeTransition> for ::windows::runtime::IInspectable {
7344     fn from(value: &EdgeUIThemeTransition) -> Self {
7345         value.0.clone()
7346     }
7347 }
7348 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EdgeUIThemeTransition {
7349     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7350         ::windows::runtime::Param::Owned(self.0)
7351     }
7352 }
7353 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EdgeUIThemeTransition {
7354     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7355         ::windows::runtime::Param::Borrowed(&self.0)
7356     }
7357 }
7358 impl ::std::convert::From<EdgeUIThemeTransition> for Transition {
7359     fn from(value: EdgeUIThemeTransition) -> Self {
7360         ::std::convert::Into::<Transition>::into(&value)
7361     }
7362 }
7363 impl ::std::convert::From<&EdgeUIThemeTransition> for Transition {
7364     fn from(value: &EdgeUIThemeTransition) -> Self {
7365         ::windows::runtime::Interface::cast(value).unwrap()
7366     }
7367 }
7368 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for EdgeUIThemeTransition {
7369     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
7370         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(self))
7371     }
7372 }
7373 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for &EdgeUIThemeTransition {
7374     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
7375         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(::std::clone::Clone::clone(self)))
7376     }
7377 }
7378 impl ::std::convert::From<EdgeUIThemeTransition> for super::super::DependencyObject {
7379     fn from(value: EdgeUIThemeTransition) -> Self {
7380         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
7381     }
7382 }
7383 impl ::std::convert::From<&EdgeUIThemeTransition> for super::super::DependencyObject {
7384     fn from(value: &EdgeUIThemeTransition) -> Self {
7385         ::windows::runtime::Interface::cast(value).unwrap()
7386     }
7387 }
7388 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for EdgeUIThemeTransition {
7389     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7390         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
7391     }
7392 }
7393 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &EdgeUIThemeTransition {
7394     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7395         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
7396     }
7397 }
7398 unsafe impl ::std::marker::Send for EdgeUIThemeTransition {}
7399 unsafe impl ::std::marker::Sync for EdgeUIThemeTransition {}
7400 #[repr(transparent)]
7401 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7402 pub struct ElasticEase(::windows::runtime::IInspectable);
7403 impl ElasticEase {
7404     pub fn new() -> ::windows::runtime::Result<Self> {
7405         Self::IActivationFactory(|f| f.activate_instance::<Self>())
7406     }
7407     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7408         static mut SHARED: ::windows::runtime::FactoryCache<ElasticEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
7409         unsafe { SHARED.call(callback) }
7410     }
7411     pub fn Oscillations(&self) -> ::windows::runtime::Result<i32> {
7412         let this = self;
7413         unsafe {
7414             let mut result__: i32 = ::std::mem::zeroed();
7415             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<i32>(result__)
7416         }
7417     }
7418     pub fn SetOscillations(&self, value: i32) -> ::windows::runtime::Result<()> {
7419         let this = self;
7420         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
7421     }
7422     pub fn Springiness(&self) -> ::windows::runtime::Result<f64> {
7423         let this = self;
7424         unsafe {
7425             let mut result__: f64 = ::std::mem::zeroed();
7426             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
7427         }
7428     }
7429     pub fn SetSpringiness(&self, value: f64) -> ::windows::runtime::Result<()> {
7430         let this = self;
7431         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
7432     }
7433     pub fn OscillationsProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
7434         Self::IElasticEaseStatics(|this| unsafe {
7435             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7436             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
7437         })
7438     }
7439     pub fn SpringinessProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
7440         Self::IElasticEaseStatics(|this| unsafe {
7441             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7442             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
7443         })
7444     }
7445     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7446         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7447         unsafe {
7448             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7449             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7450         }
7451     }
7452     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
7453         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7454         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
7455     }
7456     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
7457         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7458         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
7459     }
7460     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7461         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7462         unsafe {
7463             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7464             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7465         }
7466     }
7467     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7468         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7469         unsafe {
7470             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7471             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7472         }
7473     }
7474     #[cfg(feature = "UI_Core")]
7475     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
7476         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7477         unsafe {
7478             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7479             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
7480         }
7481     }
7482     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
7483         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7484         unsafe {
7485             let mut result__: i64 = ::std::mem::zeroed();
7486             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
7487         }
7488     }
7489     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
7490         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7491         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
7492     }
7493     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
7494         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
7495         unsafe {
7496             let mut result__: EasingMode = ::std::mem::zeroed();
7497             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
7498         }
7499     }
7500     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
7501         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
7502         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
7503     }
7504     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
7505         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
7506         unsafe {
7507             let mut result__: f64 = ::std::mem::zeroed();
7508             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
7509         }
7510     }
7511     pub fn IElasticEaseStatics<R, F: FnOnce(&IElasticEaseStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7512         static mut SHARED: ::windows::runtime::FactoryCache<ElasticEase, IElasticEaseStatics> = ::windows::runtime::FactoryCache::new();
7513         unsafe { SHARED.call(callback) }
7514     }
7515 }
7516 unsafe impl ::windows::runtime::RuntimeType for ElasticEase {
7517     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ElasticEase;{ef5ba58c-b0b6-4a6c-9ca8-fb4233f12459})");
7518 }
7519 unsafe impl ::windows::runtime::Interface for ElasticEase {
7520     type Vtable = IElasticEase_abi;
7521     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4015760780, 45238, 19052, [156, 168, 251, 66, 51, 241, 36, 89]);
7522 }
7523 impl ::windows::runtime::RuntimeName for ElasticEase {
7524     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ElasticEase";
7525 }
7526 impl ::std::convert::From<ElasticEase> for ::windows::runtime::IUnknown {
7527     fn from(value: ElasticEase) -> Self {
7528         unsafe { ::std::mem::transmute(value) }
7529     }
7530 }
7531 impl ::std::convert::From<&ElasticEase> for ::windows::runtime::IUnknown {
7532     fn from(value: &ElasticEase) -> Self {
7533         ::std::convert::From::from(::std::clone::Clone::clone(value))
7534     }
7535 }
7536 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ElasticEase {
7537     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7538         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7539     }
7540 }
7541 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ElasticEase {
7542     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7543         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7544     }
7545 }
7546 impl ::std::convert::From<ElasticEase> for ::windows::runtime::IInspectable {
7547     fn from(value: ElasticEase) -> Self {
7548         value.0
7549     }
7550 }
7551 impl ::std::convert::From<&ElasticEase> for ::windows::runtime::IInspectable {
7552     fn from(value: &ElasticEase) -> Self {
7553         value.0.clone()
7554     }
7555 }
7556 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ElasticEase {
7557     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7558         ::windows::runtime::Param::Owned(self.0)
7559     }
7560 }
7561 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ElasticEase {
7562     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7563         ::windows::runtime::Param::Borrowed(&self.0)
7564     }
7565 }
7566 impl ::std::convert::From<ElasticEase> for EasingFunctionBase {
7567     fn from(value: ElasticEase) -> Self {
7568         ::std::convert::Into::<EasingFunctionBase>::into(&value)
7569     }
7570 }
7571 impl ::std::convert::From<&ElasticEase> for EasingFunctionBase {
7572     fn from(value: &ElasticEase) -> Self {
7573         ::windows::runtime::Interface::cast(value).unwrap()
7574     }
7575 }
7576 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for ElasticEase {
7577     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
7578         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
7579     }
7580 }
7581 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &ElasticEase {
7582     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
7583         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
7584     }
7585 }
7586 impl ::std::convert::From<ElasticEase> for super::super::DependencyObject {
7587     fn from(value: ElasticEase) -> Self {
7588         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
7589     }
7590 }
7591 impl ::std::convert::From<&ElasticEase> for super::super::DependencyObject {
7592     fn from(value: &ElasticEase) -> Self {
7593         ::windows::runtime::Interface::cast(value).unwrap()
7594     }
7595 }
7596 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ElasticEase {
7597     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7598         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
7599     }
7600 }
7601 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ElasticEase {
7602     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7603         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
7604     }
7605 }
7606 unsafe impl ::std::marker::Send for ElasticEase {}
7607 unsafe impl ::std::marker::Sync for ElasticEase {}
7608 #[repr(transparent)]
7609 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7610 pub struct EntranceNavigationTransitionInfo(::windows::runtime::IInspectable);
7611 impl EntranceNavigationTransitionInfo {
7612     pub fn new() -> ::windows::runtime::Result<Self> {
7613         Self::IActivationFactory(|f| f.activate_instance::<Self>())
7614     }
7615     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7616         static mut SHARED: ::windows::runtime::FactoryCache<EntranceNavigationTransitionInfo, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
7617         unsafe { SHARED.call(callback) }
7618     }
7619     pub fn IsTargetElementProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
7620         Self::IEntranceNavigationTransitionInfoStatics(|this| unsafe {
7621             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7622             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
7623         })
7624     }
7625     pub fn GetIsTargetElement<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(element: Param0) -> ::windows::runtime::Result<bool> {
7626         Self::IEntranceNavigationTransitionInfoStatics(|this| unsafe {
7627             let mut result__: bool = ::std::mem::zeroed();
7628             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), element.into_param().abi(), &mut result__).from_abi::<bool>(result__)
7629         })
7630     }
7631     pub fn SetIsTargetElement<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::UIElement>>(element: Param0, value: bool) -> ::windows::runtime::Result<()> {
7632         Self::IEntranceNavigationTransitionInfoStatics(|this| unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), element.into_param().abi(), value).ok() })
7633     }
7634     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7635         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7636         unsafe {
7637             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7638             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7639         }
7640     }
7641     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
7642         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7643         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
7644     }
7645     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
7646         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7647         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
7648     }
7649     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7650         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7651         unsafe {
7652             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7653             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7654         }
7655     }
7656     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7657         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7658         unsafe {
7659             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7660             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7661         }
7662     }
7663     #[cfg(feature = "UI_Core")]
7664     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
7665         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7666         unsafe {
7667             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7668             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
7669         }
7670     }
7671     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
7672         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7673         unsafe {
7674             let mut result__: i64 = ::std::mem::zeroed();
7675             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
7676         }
7677     }
7678     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
7679         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7680         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
7681     }
7682     pub fn GetNavigationStateCore(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
7683         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
7684         unsafe {
7685             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
7686             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
7687         }
7688     }
7689     pub fn SetNavigationStateCore<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, navigationstate: Param0) -> ::windows::runtime::Result<()> {
7690         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
7691         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), navigationstate.into_param().abi()).ok() }
7692     }
7693     pub fn IEntranceNavigationTransitionInfoStatics<R, F: FnOnce(&IEntranceNavigationTransitionInfoStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7694         static mut SHARED: ::windows::runtime::FactoryCache<EntranceNavigationTransitionInfo, IEntranceNavigationTransitionInfoStatics> = ::windows::runtime::FactoryCache::new();
7695         unsafe { SHARED.call(callback) }
7696     }
7697 }
7698 unsafe impl ::windows::runtime::RuntimeType for EntranceNavigationTransitionInfo {
7699     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.EntranceNavigationTransitionInfo;{720a256b-1c8a-41ee-82ec-8a87c0cf47da})");
7700 }
7701 unsafe impl ::windows::runtime::Interface for EntranceNavigationTransitionInfo {
7702     type Vtable = IEntranceNavigationTransitionInfo_abi;
7703     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1913267563, 7306, 16878, [130, 236, 138, 135, 192, 207, 71, 218]);
7704 }
7705 impl ::windows::runtime::RuntimeName for EntranceNavigationTransitionInfo {
7706     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.EntranceNavigationTransitionInfo";
7707 }
7708 impl ::std::convert::From<EntranceNavigationTransitionInfo> for ::windows::runtime::IUnknown {
7709     fn from(value: EntranceNavigationTransitionInfo) -> Self {
7710         unsafe { ::std::mem::transmute(value) }
7711     }
7712 }
7713 impl ::std::convert::From<&EntranceNavigationTransitionInfo> for ::windows::runtime::IUnknown {
7714     fn from(value: &EntranceNavigationTransitionInfo) -> Self {
7715         ::std::convert::From::from(::std::clone::Clone::clone(value))
7716     }
7717 }
7718 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EntranceNavigationTransitionInfo {
7719     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7720         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7721     }
7722 }
7723 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EntranceNavigationTransitionInfo {
7724     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7725         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7726     }
7727 }
7728 impl ::std::convert::From<EntranceNavigationTransitionInfo> for ::windows::runtime::IInspectable {
7729     fn from(value: EntranceNavigationTransitionInfo) -> Self {
7730         value.0
7731     }
7732 }
7733 impl ::std::convert::From<&EntranceNavigationTransitionInfo> for ::windows::runtime::IInspectable {
7734     fn from(value: &EntranceNavigationTransitionInfo) -> Self {
7735         value.0.clone()
7736     }
7737 }
7738 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EntranceNavigationTransitionInfo {
7739     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7740         ::windows::runtime::Param::Owned(self.0)
7741     }
7742 }
7743 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EntranceNavigationTransitionInfo {
7744     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7745         ::windows::runtime::Param::Borrowed(&self.0)
7746     }
7747 }
7748 impl ::std::convert::From<EntranceNavigationTransitionInfo> for NavigationTransitionInfo {
7749     fn from(value: EntranceNavigationTransitionInfo) -> Self {
7750         ::std::convert::Into::<NavigationTransitionInfo>::into(&value)
7751     }
7752 }
7753 impl ::std::convert::From<&EntranceNavigationTransitionInfo> for NavigationTransitionInfo {
7754     fn from(value: &EntranceNavigationTransitionInfo) -> Self {
7755         ::windows::runtime::Interface::cast(value).unwrap()
7756     }
7757 }
7758 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for EntranceNavigationTransitionInfo {
7759     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
7760         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(self))
7761     }
7762 }
7763 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for &EntranceNavigationTransitionInfo {
7764     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
7765         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(::std::clone::Clone::clone(self)))
7766     }
7767 }
7768 impl ::std::convert::From<EntranceNavigationTransitionInfo> for super::super::DependencyObject {
7769     fn from(value: EntranceNavigationTransitionInfo) -> Self {
7770         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
7771     }
7772 }
7773 impl ::std::convert::From<&EntranceNavigationTransitionInfo> for super::super::DependencyObject {
7774     fn from(value: &EntranceNavigationTransitionInfo) -> Self {
7775         ::windows::runtime::Interface::cast(value).unwrap()
7776     }
7777 }
7778 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for EntranceNavigationTransitionInfo {
7779     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7780         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
7781     }
7782 }
7783 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &EntranceNavigationTransitionInfo {
7784     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7785         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
7786     }
7787 }
7788 unsafe impl ::std::marker::Send for EntranceNavigationTransitionInfo {}
7789 unsafe impl ::std::marker::Sync for EntranceNavigationTransitionInfo {}
7790 #[repr(transparent)]
7791 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7792 pub struct EntranceThemeTransition(::windows::runtime::IInspectable);
7793 impl EntranceThemeTransition {
7794     pub fn new() -> ::windows::runtime::Result<Self> {
7795         Self::IActivationFactory(|f| f.activate_instance::<Self>())
7796     }
7797     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7798         static mut SHARED: ::windows::runtime::FactoryCache<EntranceThemeTransition, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
7799         unsafe { SHARED.call(callback) }
7800     }
7801     pub fn FromHorizontalOffset(&self) -> ::windows::runtime::Result<f64> {
7802         let this = self;
7803         unsafe {
7804             let mut result__: f64 = ::std::mem::zeroed();
7805             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
7806         }
7807     }
7808     pub fn SetFromHorizontalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
7809         let this = self;
7810         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
7811     }
7812     pub fn FromVerticalOffset(&self) -> ::windows::runtime::Result<f64> {
7813         let this = self;
7814         unsafe {
7815             let mut result__: f64 = ::std::mem::zeroed();
7816             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
7817         }
7818     }
7819     pub fn SetFromVerticalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
7820         let this = self;
7821         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
7822     }
7823     pub fn IsStaggeringEnabled(&self) -> ::windows::runtime::Result<bool> {
7824         let this = self;
7825         unsafe {
7826             let mut result__: bool = ::std::mem::zeroed();
7827             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
7828         }
7829     }
7830     pub fn SetIsStaggeringEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
7831         let this = self;
7832         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
7833     }
7834     pub fn FromHorizontalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
7835         Self::IEntranceThemeTransitionStatics(|this| unsafe {
7836             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7837             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
7838         })
7839     }
7840     pub fn FromVerticalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
7841         Self::IEntranceThemeTransitionStatics(|this| unsafe {
7842             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7843             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
7844         })
7845     }
7846     pub fn IsStaggeringEnabledProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
7847         Self::IEntranceThemeTransitionStatics(|this| unsafe {
7848             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7849             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
7850         })
7851     }
7852     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7853         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7854         unsafe {
7855             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7856             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7857         }
7858     }
7859     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
7860         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7861         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
7862     }
7863     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
7864         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7865         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
7866     }
7867     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7868         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7869         unsafe {
7870             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7871             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7872         }
7873     }
7874     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
7875         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7876         unsafe {
7877             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7878             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
7879         }
7880     }
7881     #[cfg(feature = "UI_Core")]
7882     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
7883         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
7884         unsafe {
7885             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
7886             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
7887         }
7888     }
7889     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
7890         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7891         unsafe {
7892             let mut result__: i64 = ::std::mem::zeroed();
7893             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
7894         }
7895     }
7896     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
7897         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
7898         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
7899     }
7900     pub fn IEntranceThemeTransitionStatics<R, F: FnOnce(&IEntranceThemeTransitionStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
7901         static mut SHARED: ::windows::runtime::FactoryCache<EntranceThemeTransition, IEntranceThemeTransitionStatics> = ::windows::runtime::FactoryCache::new();
7902         unsafe { SHARED.call(callback) }
7903     }
7904 }
7905 unsafe impl ::windows::runtime::RuntimeType for EntranceThemeTransition {
7906     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.EntranceThemeTransition;{07698c09-a8e3-419a-a01d-7410a0ae8ec8})");
7907 }
7908 unsafe impl ::windows::runtime::Interface for EntranceThemeTransition {
7909     type Vtable = IEntranceThemeTransition_abi;
7910     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(124357641, 43235, 16794, [160, 29, 116, 16, 160, 174, 142, 200]);
7911 }
7912 impl ::windows::runtime::RuntimeName for EntranceThemeTransition {
7913     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.EntranceThemeTransition";
7914 }
7915 impl ::std::convert::From<EntranceThemeTransition> for ::windows::runtime::IUnknown {
7916     fn from(value: EntranceThemeTransition) -> Self {
7917         unsafe { ::std::mem::transmute(value) }
7918     }
7919 }
7920 impl ::std::convert::From<&EntranceThemeTransition> for ::windows::runtime::IUnknown {
7921     fn from(value: &EntranceThemeTransition) -> Self {
7922         ::std::convert::From::from(::std::clone::Clone::clone(value))
7923     }
7924 }
7925 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EntranceThemeTransition {
7926     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7927         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
7928     }
7929 }
7930 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EntranceThemeTransition {
7931     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
7932         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
7933     }
7934 }
7935 impl ::std::convert::From<EntranceThemeTransition> for ::windows::runtime::IInspectable {
7936     fn from(value: EntranceThemeTransition) -> Self {
7937         value.0
7938     }
7939 }
7940 impl ::std::convert::From<&EntranceThemeTransition> for ::windows::runtime::IInspectable {
7941     fn from(value: &EntranceThemeTransition) -> Self {
7942         value.0.clone()
7943     }
7944 }
7945 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EntranceThemeTransition {
7946     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7947         ::windows::runtime::Param::Owned(self.0)
7948     }
7949 }
7950 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EntranceThemeTransition {
7951     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
7952         ::windows::runtime::Param::Borrowed(&self.0)
7953     }
7954 }
7955 impl ::std::convert::From<EntranceThemeTransition> for Transition {
7956     fn from(value: EntranceThemeTransition) -> Self {
7957         ::std::convert::Into::<Transition>::into(&value)
7958     }
7959 }
7960 impl ::std::convert::From<&EntranceThemeTransition> for Transition {
7961     fn from(value: &EntranceThemeTransition) -> Self {
7962         ::windows::runtime::Interface::cast(value).unwrap()
7963     }
7964 }
7965 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for EntranceThemeTransition {
7966     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
7967         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(self))
7968     }
7969 }
7970 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for &EntranceThemeTransition {
7971     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
7972         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(::std::clone::Clone::clone(self)))
7973     }
7974 }
7975 impl ::std::convert::From<EntranceThemeTransition> for super::super::DependencyObject {
7976     fn from(value: EntranceThemeTransition) -> Self {
7977         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
7978     }
7979 }
7980 impl ::std::convert::From<&EntranceThemeTransition> for super::super::DependencyObject {
7981     fn from(value: &EntranceThemeTransition) -> Self {
7982         ::windows::runtime::Interface::cast(value).unwrap()
7983     }
7984 }
7985 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for EntranceThemeTransition {
7986     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7987         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
7988     }
7989 }
7990 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &EntranceThemeTransition {
7991     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
7992         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
7993     }
7994 }
7995 unsafe impl ::std::marker::Send for EntranceThemeTransition {}
7996 unsafe impl ::std::marker::Sync for EntranceThemeTransition {}
7997 #[repr(transparent)]
7998 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
7999 pub struct ExponentialEase(::windows::runtime::IInspectable);
8000 impl ExponentialEase {
8001     pub fn new() -> ::windows::runtime::Result<Self> {
8002         Self::IActivationFactory(|f| f.activate_instance::<Self>())
8003     }
8004     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
8005         static mut SHARED: ::windows::runtime::FactoryCache<ExponentialEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
8006         unsafe { SHARED.call(callback) }
8007     }
8008     pub fn Exponent(&self) -> ::windows::runtime::Result<f64> {
8009         let this = self;
8010         unsafe {
8011             let mut result__: f64 = ::std::mem::zeroed();
8012             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
8013         }
8014     }
8015     pub fn SetExponent(&self, value: f64) -> ::windows::runtime::Result<()> {
8016         let this = self;
8017         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
8018     }
8019     pub fn ExponentProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
8020         Self::IExponentialEaseStatics(|this| unsafe {
8021             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8022             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
8023         })
8024     }
8025     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
8026         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8027         unsafe {
8028             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8029             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
8030         }
8031     }
8032     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
8033         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8034         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
8035     }
8036     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
8037         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8038         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
8039     }
8040     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
8041         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8042         unsafe {
8043             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8044             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
8045         }
8046     }
8047     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
8048         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8049         unsafe {
8050             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8051             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
8052         }
8053     }
8054     #[cfg(feature = "UI_Core")]
8055     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
8056         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8057         unsafe {
8058             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8059             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
8060         }
8061     }
8062     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
8063         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
8064         unsafe {
8065             let mut result__: i64 = ::std::mem::zeroed();
8066             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
8067         }
8068     }
8069     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
8070         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
8071         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
8072     }
8073     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
8074         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
8075         unsafe {
8076             let mut result__: EasingMode = ::std::mem::zeroed();
8077             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
8078         }
8079     }
8080     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
8081         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
8082         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
8083     }
8084     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
8085         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
8086         unsafe {
8087             let mut result__: f64 = ::std::mem::zeroed();
8088             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
8089         }
8090     }
8091     pub fn IExponentialEaseStatics<R, F: FnOnce(&IExponentialEaseStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
8092         static mut SHARED: ::windows::runtime::FactoryCache<ExponentialEase, IExponentialEaseStatics> = ::windows::runtime::FactoryCache::new();
8093         unsafe { SHARED.call(callback) }
8094     }
8095 }
8096 unsafe impl ::windows::runtime::RuntimeType for ExponentialEase {
8097     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ExponentialEase;{7cb9e41d-f0bb-4bca-9da5-9ba3a11734c4})");
8098 }
8099 unsafe impl ::windows::runtime::Interface for ExponentialEase {
8100     type Vtable = IExponentialEase_abi;
8101     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2092557341, 61627, 19402, [157, 165, 155, 163, 161, 23, 52, 196]);
8102 }
8103 impl ::windows::runtime::RuntimeName for ExponentialEase {
8104     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ExponentialEase";
8105 }
8106 impl ::std::convert::From<ExponentialEase> for ::windows::runtime::IUnknown {
8107     fn from(value: ExponentialEase) -> Self {
8108         unsafe { ::std::mem::transmute(value) }
8109     }
8110 }
8111 impl ::std::convert::From<&ExponentialEase> for ::windows::runtime::IUnknown {
8112     fn from(value: &ExponentialEase) -> Self {
8113         ::std::convert::From::from(::std::clone::Clone::clone(value))
8114     }
8115 }
8116 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ExponentialEase {
8117     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8118         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
8119     }
8120 }
8121 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ExponentialEase {
8122     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8123         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
8124     }
8125 }
8126 impl ::std::convert::From<ExponentialEase> for ::windows::runtime::IInspectable {
8127     fn from(value: ExponentialEase) -> Self {
8128         value.0
8129     }
8130 }
8131 impl ::std::convert::From<&ExponentialEase> for ::windows::runtime::IInspectable {
8132     fn from(value: &ExponentialEase) -> Self {
8133         value.0.clone()
8134     }
8135 }
8136 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ExponentialEase {
8137     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8138         ::windows::runtime::Param::Owned(self.0)
8139     }
8140 }
8141 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ExponentialEase {
8142     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8143         ::windows::runtime::Param::Borrowed(&self.0)
8144     }
8145 }
8146 impl ::std::convert::From<ExponentialEase> for EasingFunctionBase {
8147     fn from(value: ExponentialEase) -> Self {
8148         ::std::convert::Into::<EasingFunctionBase>::into(&value)
8149     }
8150 }
8151 impl ::std::convert::From<&ExponentialEase> for EasingFunctionBase {
8152     fn from(value: &ExponentialEase) -> Self {
8153         ::windows::runtime::Interface::cast(value).unwrap()
8154     }
8155 }
8156 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for ExponentialEase {
8157     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
8158         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
8159     }
8160 }
8161 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &ExponentialEase {
8162     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
8163         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
8164     }
8165 }
8166 impl ::std::convert::From<ExponentialEase> for super::super::DependencyObject {
8167     fn from(value: ExponentialEase) -> Self {
8168         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
8169     }
8170 }
8171 impl ::std::convert::From<&ExponentialEase> for super::super::DependencyObject {
8172     fn from(value: &ExponentialEase) -> Self {
8173         ::windows::runtime::Interface::cast(value).unwrap()
8174     }
8175 }
8176 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ExponentialEase {
8177     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
8178         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
8179     }
8180 }
8181 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ExponentialEase {
8182     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
8183         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
8184     }
8185 }
8186 unsafe impl ::std::marker::Send for ExponentialEase {}
8187 unsafe impl ::std::marker::Sync for ExponentialEase {}
8188 #[repr(transparent)]
8189 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8190 pub struct FadeInThemeAnimation(::windows::runtime::IInspectable);
8191 impl FadeInThemeAnimation {
8192     pub fn new() -> ::windows::runtime::Result<Self> {
8193         Self::IActivationFactory(|f| f.activate_instance::<Self>())
8194     }
8195     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
8196         static mut SHARED: ::windows::runtime::FactoryCache<FadeInThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
8197         unsafe { SHARED.call(callback) }
8198     }
8199     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8200         let this = self;
8201         unsafe {
8202             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8203             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8204         }
8205     }
8206     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8207         let this = self;
8208         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8209     }
8210     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
8211         Self::IFadeInThemeAnimationStatics(|this| unsafe {
8212             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8213             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
8214         })
8215     }
8216     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
8217         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8218         unsafe {
8219             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8220             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
8221         }
8222     }
8223     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
8224         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8225         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
8226     }
8227     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
8228         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8229         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
8230     }
8231     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
8232         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8233         unsafe {
8234             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8235             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
8236         }
8237     }
8238     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
8239         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8240         unsafe {
8241             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8242             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
8243         }
8244     }
8245     #[cfg(feature = "UI_Core")]
8246     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
8247         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8248         unsafe {
8249             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8250             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
8251         }
8252     }
8253     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
8254         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
8255         unsafe {
8256             let mut result__: i64 = ::std::mem::zeroed();
8257             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
8258         }
8259     }
8260     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
8261         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
8262         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
8263     }
8264     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
8265         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8266         unsafe {
8267             let mut result__: bool = ::std::mem::zeroed();
8268             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8269         }
8270     }
8271     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
8272         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8273         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
8274     }
8275     #[cfg(feature = "Foundation")]
8276     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
8277         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8278         unsafe {
8279             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8280             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
8281         }
8282     }
8283     #[cfg(feature = "Foundation")]
8284     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8285         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8286         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8287     }
8288     #[cfg(feature = "Foundation")]
8289     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
8290         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8291         unsafe {
8292             let mut result__: super::super::Duration = ::std::mem::zeroed();
8293             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
8294         }
8295     }
8296     #[cfg(feature = "Foundation")]
8297     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8298         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8299         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8300     }
8301     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
8302         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8303         unsafe {
8304             let mut result__: f64 = ::std::mem::zeroed();
8305             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
8306         }
8307     }
8308     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
8309         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8310         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
8311     }
8312     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
8313         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8314         unsafe {
8315             let mut result__: FillBehavior = ::std::mem::zeroed();
8316             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
8317         }
8318     }
8319     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
8320         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8321         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
8322     }
8323     #[cfg(feature = "Foundation")]
8324     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
8325         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8326         unsafe {
8327             let mut result__: RepeatBehavior = ::std::mem::zeroed();
8328             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
8329         }
8330     }
8331     #[cfg(feature = "Foundation")]
8332     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8333         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8334         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8335     }
8336     #[cfg(feature = "Foundation")]
8337     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
8338         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8339         unsafe {
8340             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
8341             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
8342         }
8343     }
8344     #[cfg(feature = "Foundation")]
8345     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
8346         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8347         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
8348     }
8349     pub fn IFadeInThemeAnimationStatics<R, F: FnOnce(&IFadeInThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
8350         static mut SHARED: ::windows::runtime::FactoryCache<FadeInThemeAnimation, IFadeInThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
8351         unsafe { SHARED.call(callback) }
8352     }
8353 }
8354 unsafe impl ::windows::runtime::RuntimeType for FadeInThemeAnimation {
8355     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.FadeInThemeAnimation;{6d4bc8f5-a918-4477-8078-554c68812ab8})");
8356 }
8357 unsafe impl ::windows::runtime::Interface for FadeInThemeAnimation {
8358     type Vtable = IFadeInThemeAnimation_abi;
8359     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1833683189, 43288, 17527, [128, 120, 85, 76, 104, 129, 42, 184]);
8360 }
8361 impl ::windows::runtime::RuntimeName for FadeInThemeAnimation {
8362     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.FadeInThemeAnimation";
8363 }
8364 impl ::std::convert::From<FadeInThemeAnimation> for ::windows::runtime::IUnknown {
8365     fn from(value: FadeInThemeAnimation) -> Self {
8366         unsafe { ::std::mem::transmute(value) }
8367     }
8368 }
8369 impl ::std::convert::From<&FadeInThemeAnimation> for ::windows::runtime::IUnknown {
8370     fn from(value: &FadeInThemeAnimation) -> Self {
8371         ::std::convert::From::from(::std::clone::Clone::clone(value))
8372     }
8373 }
8374 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for FadeInThemeAnimation {
8375     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8376         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
8377     }
8378 }
8379 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &FadeInThemeAnimation {
8380     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8381         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
8382     }
8383 }
8384 impl ::std::convert::From<FadeInThemeAnimation> for ::windows::runtime::IInspectable {
8385     fn from(value: FadeInThemeAnimation) -> Self {
8386         value.0
8387     }
8388 }
8389 impl ::std::convert::From<&FadeInThemeAnimation> for ::windows::runtime::IInspectable {
8390     fn from(value: &FadeInThemeAnimation) -> Self {
8391         value.0.clone()
8392     }
8393 }
8394 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for FadeInThemeAnimation {
8395     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8396         ::windows::runtime::Param::Owned(self.0)
8397     }
8398 }
8399 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a FadeInThemeAnimation {
8400     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8401         ::windows::runtime::Param::Borrowed(&self.0)
8402     }
8403 }
8404 impl ::std::convert::From<FadeInThemeAnimation> for Timeline {
8405     fn from(value: FadeInThemeAnimation) -> Self {
8406         ::std::convert::Into::<Timeline>::into(&value)
8407     }
8408 }
8409 impl ::std::convert::From<&FadeInThemeAnimation> for Timeline {
8410     fn from(value: &FadeInThemeAnimation) -> Self {
8411         ::windows::runtime::Interface::cast(value).unwrap()
8412     }
8413 }
8414 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for FadeInThemeAnimation {
8415     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
8416         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
8417     }
8418 }
8419 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &FadeInThemeAnimation {
8420     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
8421         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
8422     }
8423 }
8424 impl ::std::convert::From<FadeInThemeAnimation> for super::super::DependencyObject {
8425     fn from(value: FadeInThemeAnimation) -> Self {
8426         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
8427     }
8428 }
8429 impl ::std::convert::From<&FadeInThemeAnimation> for super::super::DependencyObject {
8430     fn from(value: &FadeInThemeAnimation) -> Self {
8431         ::windows::runtime::Interface::cast(value).unwrap()
8432     }
8433 }
8434 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for FadeInThemeAnimation {
8435     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
8436         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
8437     }
8438 }
8439 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &FadeInThemeAnimation {
8440     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
8441         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
8442     }
8443 }
8444 unsafe impl ::std::marker::Send for FadeInThemeAnimation {}
8445 unsafe impl ::std::marker::Sync for FadeInThemeAnimation {}
8446 #[repr(transparent)]
8447 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8448 pub struct FadeOutThemeAnimation(::windows::runtime::IInspectable);
8449 impl FadeOutThemeAnimation {
8450     pub fn new() -> ::windows::runtime::Result<Self> {
8451         Self::IActivationFactory(|f| f.activate_instance::<Self>())
8452     }
8453     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
8454         static mut SHARED: ::windows::runtime::FactoryCache<FadeOutThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
8455         unsafe { SHARED.call(callback) }
8456     }
8457     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
8458         let this = self;
8459         unsafe {
8460             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
8461             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
8462         }
8463     }
8464     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8465         let this = self;
8466         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8467     }
8468     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
8469         Self::IFadeOutThemeAnimationStatics(|this| unsafe {
8470             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8471             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
8472         })
8473     }
8474     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
8475         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8476         unsafe {
8477             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8478             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
8479         }
8480     }
8481     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
8482         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8483         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
8484     }
8485     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
8486         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8487         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
8488     }
8489     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
8490         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8491         unsafe {
8492             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8493             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
8494         }
8495     }
8496     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
8497         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8498         unsafe {
8499             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8500             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
8501         }
8502     }
8503     #[cfg(feature = "UI_Core")]
8504     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
8505         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
8506         unsafe {
8507             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8508             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
8509         }
8510     }
8511     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
8512         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
8513         unsafe {
8514             let mut result__: i64 = ::std::mem::zeroed();
8515             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
8516         }
8517     }
8518     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
8519         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
8520         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
8521     }
8522     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
8523         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8524         unsafe {
8525             let mut result__: bool = ::std::mem::zeroed();
8526             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8527         }
8528     }
8529     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
8530         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8531         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
8532     }
8533     #[cfg(feature = "Foundation")]
8534     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
8535         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8536         unsafe {
8537             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8538             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
8539         }
8540     }
8541     #[cfg(feature = "Foundation")]
8542     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8543         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8544         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8545     }
8546     #[cfg(feature = "Foundation")]
8547     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
8548         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8549         unsafe {
8550             let mut result__: super::super::Duration = ::std::mem::zeroed();
8551             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
8552         }
8553     }
8554     #[cfg(feature = "Foundation")]
8555     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8556         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8557         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8558     }
8559     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
8560         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8561         unsafe {
8562             let mut result__: f64 = ::std::mem::zeroed();
8563             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
8564         }
8565     }
8566     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
8567         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8568         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
8569     }
8570     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
8571         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8572         unsafe {
8573             let mut result__: FillBehavior = ::std::mem::zeroed();
8574             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
8575         }
8576     }
8577     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
8578         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8579         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
8580     }
8581     #[cfg(feature = "Foundation")]
8582     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
8583         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8584         unsafe {
8585             let mut result__: RepeatBehavior = ::std::mem::zeroed();
8586             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
8587         }
8588     }
8589     #[cfg(feature = "Foundation")]
8590     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
8591         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8592         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
8593     }
8594     #[cfg(feature = "Foundation")]
8595     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
8596         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8597         unsafe {
8598             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
8599             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
8600         }
8601     }
8602     #[cfg(feature = "Foundation")]
8603     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
8604         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
8605         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
8606     }
8607     pub fn IFadeOutThemeAnimationStatics<R, F: FnOnce(&IFadeOutThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
8608         static mut SHARED: ::windows::runtime::FactoryCache<FadeOutThemeAnimation, IFadeOutThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
8609         unsafe { SHARED.call(callback) }
8610     }
8611 }
8612 unsafe impl ::windows::runtime::RuntimeType for FadeOutThemeAnimation {
8613     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.FadeOutThemeAnimation;{89276ba9-ffd4-45b6-9b9a-ced48951e712})");
8614 }
8615 unsafe impl ::windows::runtime::Interface for FadeOutThemeAnimation {
8616     type Vtable = IFadeOutThemeAnimation_abi;
8617     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2301062057, 65492, 17846, [155, 154, 206, 212, 137, 81, 231, 18]);
8618 }
8619 impl ::windows::runtime::RuntimeName for FadeOutThemeAnimation {
8620     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.FadeOutThemeAnimation";
8621 }
8622 impl ::std::convert::From<FadeOutThemeAnimation> for ::windows::runtime::IUnknown {
8623     fn from(value: FadeOutThemeAnimation) -> Self {
8624         unsafe { ::std::mem::transmute(value) }
8625     }
8626 }
8627 impl ::std::convert::From<&FadeOutThemeAnimation> for ::windows::runtime::IUnknown {
8628     fn from(value: &FadeOutThemeAnimation) -> Self {
8629         ::std::convert::From::from(::std::clone::Clone::clone(value))
8630     }
8631 }
8632 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for FadeOutThemeAnimation {
8633     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8634         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
8635     }
8636 }
8637 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &FadeOutThemeAnimation {
8638     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8639         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
8640     }
8641 }
8642 impl ::std::convert::From<FadeOutThemeAnimation> for ::windows::runtime::IInspectable {
8643     fn from(value: FadeOutThemeAnimation) -> Self {
8644         value.0
8645     }
8646 }
8647 impl ::std::convert::From<&FadeOutThemeAnimation> for ::windows::runtime::IInspectable {
8648     fn from(value: &FadeOutThemeAnimation) -> Self {
8649         value.0.clone()
8650     }
8651 }
8652 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for FadeOutThemeAnimation {
8653     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8654         ::windows::runtime::Param::Owned(self.0)
8655     }
8656 }
8657 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a FadeOutThemeAnimation {
8658     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8659         ::windows::runtime::Param::Borrowed(&self.0)
8660     }
8661 }
8662 impl ::std::convert::From<FadeOutThemeAnimation> for Timeline {
8663     fn from(value: FadeOutThemeAnimation) -> Self {
8664         ::std::convert::Into::<Timeline>::into(&value)
8665     }
8666 }
8667 impl ::std::convert::From<&FadeOutThemeAnimation> for Timeline {
8668     fn from(value: &FadeOutThemeAnimation) -> Self {
8669         ::windows::runtime::Interface::cast(value).unwrap()
8670     }
8671 }
8672 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for FadeOutThemeAnimation {
8673     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
8674         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
8675     }
8676 }
8677 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &FadeOutThemeAnimation {
8678     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
8679         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
8680     }
8681 }
8682 impl ::std::convert::From<FadeOutThemeAnimation> for super::super::DependencyObject {
8683     fn from(value: FadeOutThemeAnimation) -> Self {
8684         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
8685     }
8686 }
8687 impl ::std::convert::From<&FadeOutThemeAnimation> for super::super::DependencyObject {
8688     fn from(value: &FadeOutThemeAnimation) -> Self {
8689         ::windows::runtime::Interface::cast(value).unwrap()
8690     }
8691 }
8692 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for FadeOutThemeAnimation {
8693     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
8694         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
8695     }
8696 }
8697 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &FadeOutThemeAnimation {
8698     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
8699         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
8700     }
8701 }
8702 unsafe impl ::std::marker::Send for FadeOutThemeAnimation {}
8703 unsafe impl ::std::marker::Sync for FadeOutThemeAnimation {}
8704 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
8705 #[repr(transparent)]
8706 pub struct FillBehavior(pub i32);
8707 impl FillBehavior {
8708     pub const HoldEnd: FillBehavior = FillBehavior(0i32);
8709     pub const Stop: FillBehavior = FillBehavior(1i32);
8710 }
8711 impl ::std::convert::From<i32> for FillBehavior {
8712     fn from(value: i32) -> Self {
8713         Self(value)
8714     }
8715 }
8716 unsafe impl ::windows::runtime::Abi for FillBehavior {
8717     type Abi = Self;
8718     type DefaultType = Self;
8719 }
8720 unsafe impl ::windows::runtime::RuntimeType for FillBehavior {
8721     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.UI.Xaml.Media.Animation.FillBehavior;i4)");
8722 }
8723 #[repr(transparent)]
8724 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8725 pub struct GravityConnectedAnimationConfiguration(::windows::runtime::IInspectable);
8726 impl GravityConnectedAnimationConfiguration {
8727     pub fn new() -> ::windows::runtime::Result<GravityConnectedAnimationConfiguration> {
8728         Self::IGravityConnectedAnimationConfigurationFactory(|this| unsafe {
8729             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
8730             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), ::std::ptr::null_mut(), &mut ::std::option::Option::<::windows::runtime::IInspectable>::None as *mut _ as _, &mut result__).from_abi::<GravityConnectedAnimationConfiguration>(result__)
8731         })
8732     }
8733     pub fn IsShadowEnabled(&self) -> ::windows::runtime::Result<bool> {
8734         let this = &::windows::runtime::Interface::cast::<IGravityConnectedAnimationConfiguration2>(self)?;
8735         unsafe {
8736             let mut result__: bool = ::std::mem::zeroed();
8737             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
8738         }
8739     }
8740     pub fn SetIsShadowEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
8741         let this = &::windows::runtime::Interface::cast::<IGravityConnectedAnimationConfiguration2>(self)?;
8742         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
8743     }
8744     pub fn IGravityConnectedAnimationConfigurationFactory<R, F: FnOnce(&IGravityConnectedAnimationConfigurationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
8745         static mut SHARED: ::windows::runtime::FactoryCache<GravityConnectedAnimationConfiguration, IGravityConnectedAnimationConfigurationFactory> = ::windows::runtime::FactoryCache::new();
8746         unsafe { SHARED.call(callback) }
8747     }
8748 }
8749 unsafe impl ::windows::runtime::RuntimeType for GravityConnectedAnimationConfiguration {
8750     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.GravityConnectedAnimationConfiguration;{c751a4b7-0459-5142-b891-aeaac1d41822})");
8751 }
8752 unsafe impl ::windows::runtime::Interface for GravityConnectedAnimationConfiguration {
8753     type Vtable = IGravityConnectedAnimationConfiguration_abi;
8754     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3344016567, 1113, 20802, [184, 145, 174, 170, 193, 212, 24, 34]);
8755 }
8756 impl ::windows::runtime::RuntimeName for GravityConnectedAnimationConfiguration {
8757     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.GravityConnectedAnimationConfiguration";
8758 }
8759 impl ::std::convert::From<GravityConnectedAnimationConfiguration> for ::windows::runtime::IUnknown {
8760     fn from(value: GravityConnectedAnimationConfiguration) -> Self {
8761         unsafe { ::std::mem::transmute(value) }
8762     }
8763 }
8764 impl ::std::convert::From<&GravityConnectedAnimationConfiguration> for ::windows::runtime::IUnknown {
8765     fn from(value: &GravityConnectedAnimationConfiguration) -> Self {
8766         ::std::convert::From::from(::std::clone::Clone::clone(value))
8767     }
8768 }
8769 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for GravityConnectedAnimationConfiguration {
8770     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8771         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
8772     }
8773 }
8774 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &GravityConnectedAnimationConfiguration {
8775     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
8776         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
8777     }
8778 }
8779 impl ::std::convert::From<GravityConnectedAnimationConfiguration> for ::windows::runtime::IInspectable {
8780     fn from(value: GravityConnectedAnimationConfiguration) -> Self {
8781         value.0
8782     }
8783 }
8784 impl ::std::convert::From<&GravityConnectedAnimationConfiguration> for ::windows::runtime::IInspectable {
8785     fn from(value: &GravityConnectedAnimationConfiguration) -> Self {
8786         value.0.clone()
8787     }
8788 }
8789 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for GravityConnectedAnimationConfiguration {
8790     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8791         ::windows::runtime::Param::Owned(self.0)
8792     }
8793 }
8794 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a GravityConnectedAnimationConfiguration {
8795     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
8796         ::windows::runtime::Param::Borrowed(&self.0)
8797     }
8798 }
8799 impl ::std::convert::From<GravityConnectedAnimationConfiguration> for ConnectedAnimationConfiguration {
8800     fn from(value: GravityConnectedAnimationConfiguration) -> Self {
8801         ::std::convert::Into::<ConnectedAnimationConfiguration>::into(&value)
8802     }
8803 }
8804 impl ::std::convert::From<&GravityConnectedAnimationConfiguration> for ConnectedAnimationConfiguration {
8805     fn from(value: &GravityConnectedAnimationConfiguration) -> Self {
8806         ::windows::runtime::Interface::cast(value).unwrap()
8807     }
8808 }
8809 impl<'a> ::windows::runtime::IntoParam<'a, ConnectedAnimationConfiguration> for GravityConnectedAnimationConfiguration {
8810     fn into_param(self) -> ::windows::runtime::Param<'a, ConnectedAnimationConfiguration> {
8811         ::windows::runtime::Param::Owned(::std::convert::Into::<ConnectedAnimationConfiguration>::into(self))
8812     }
8813 }
8814 impl<'a> ::windows::runtime::IntoParam<'a, ConnectedAnimationConfiguration> for &GravityConnectedAnimationConfiguration {
8815     fn into_param(self) -> ::windows::runtime::Param<'a, ConnectedAnimationConfiguration> {
8816         ::windows::runtime::Param::Owned(::std::convert::Into::<ConnectedAnimationConfiguration>::into(::std::clone::Clone::clone(self)))
8817     }
8818 }
8819 unsafe impl ::std::marker::Send for GravityConnectedAnimationConfiguration {}
8820 unsafe impl ::std::marker::Sync for GravityConnectedAnimationConfiguration {}
8821 #[repr(transparent)]
8822 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8823 #[doc(hidden)]
8824 pub struct IAddDeleteThemeTransition(::windows::runtime::IInspectable);
8825 unsafe impl ::windows::runtime::Interface for IAddDeleteThemeTransition {
8826     type Vtable = IAddDeleteThemeTransition_abi;
8827     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2917958958, 17444, 19883, [153, 193, 58, 4, 227, 106, 60, 72]);
8828 }
8829 #[repr(C)]
8830 #[doc(hidden)]
8831 pub struct IAddDeleteThemeTransition_abi(
8832     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8833     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8834     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8835     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8836     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8837     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8838 );
8839 #[repr(transparent)]
8840 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8841 #[doc(hidden)]
8842 pub struct IBackEase(::windows::runtime::IInspectable);
8843 unsafe impl ::windows::runtime::Interface for IBackEase {
8844     type Vtable = IBackEase_abi;
8845     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3833042663, 63493, 19087, [129, 201, 56, 230, 71, 44, 170, 148]);
8846 }
8847 #[repr(C)]
8848 #[doc(hidden)]
8849 pub struct IBackEase_abi(
8850     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8851     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8852     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8853     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8854     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8855     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8856     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
8857     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
8858 );
8859 #[repr(transparent)]
8860 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8861 #[doc(hidden)]
8862 pub struct IBackEaseStatics(::windows::runtime::IInspectable);
8863 unsafe impl ::windows::runtime::Interface for IBackEaseStatics {
8864     type Vtable = IBackEaseStatics_abi;
8865     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1014014719, 41120, 18310, [146, 108, 34, 50, 31, 143, 37, 183]);
8866 }
8867 #[repr(C)]
8868 #[doc(hidden)]
8869 pub struct IBackEaseStatics_abi(
8870     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8871     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8872     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8873     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8874     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8875     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8876     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8877 );
8878 #[repr(transparent)]
8879 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8880 #[doc(hidden)]
8881 pub struct IBasicConnectedAnimationConfiguration(::windows::runtime::IInspectable);
8882 unsafe impl ::windows::runtime::Interface for IBasicConnectedAnimationConfiguration {
8883     type Vtable = IBasicConnectedAnimationConfiguration_abi;
8884     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3866491317, 42198, 21331, [131, 230, 200, 158, 124, 248, 212, 86]);
8885 }
8886 #[repr(C)]
8887 #[doc(hidden)]
8888 pub struct IBasicConnectedAnimationConfiguration_abi(
8889     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8890     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8891     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8892     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8893     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8894     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8895 );
8896 #[repr(transparent)]
8897 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8898 #[doc(hidden)]
8899 pub struct IBasicConnectedAnimationConfigurationFactory(::windows::runtime::IInspectable);
8900 unsafe impl ::windows::runtime::Interface for IBasicConnectedAnimationConfigurationFactory {
8901     type Vtable = IBasicConnectedAnimationConfigurationFactory_abi;
8902     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2514912330, 17271, 20540, [190, 226, 17, 223, 205, 85, 112, 230]);
8903 }
8904 #[repr(C)]
8905 #[doc(hidden)]
8906 pub struct IBasicConnectedAnimationConfigurationFactory_abi(
8907     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8908     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8909     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8910     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8911     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8912     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8913     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baseinterface: ::windows::runtime::RawPtr, innerinterface: *mut ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8914 );
8915 #[repr(transparent)]
8916 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8917 #[doc(hidden)]
8918 pub struct IBeginStoryboard(::windows::runtime::IInspectable);
8919 unsafe impl ::windows::runtime::Interface for IBeginStoryboard {
8920     type Vtable = IBeginStoryboard_abi;
8921     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1679335373, 18924, 20050, [166, 246, 85, 50, 76, 146, 16, 83]);
8922 }
8923 #[repr(C)]
8924 #[doc(hidden)]
8925 pub struct IBeginStoryboard_abi(
8926     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8927     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8928     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8929     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8930     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8931     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8932     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8933     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8934 );
8935 #[repr(transparent)]
8936 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8937 #[doc(hidden)]
8938 pub struct IBeginStoryboardStatics(::windows::runtime::IInspectable);
8939 unsafe impl ::windows::runtime::Interface for IBeginStoryboardStatics {
8940     type Vtable = IBeginStoryboardStatics_abi;
8941     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(315617676, 43665, 19530, [184, 47, 223, 52, 252, 87, 249, 75]);
8942 }
8943 #[repr(C)]
8944 #[doc(hidden)]
8945 pub struct IBeginStoryboardStatics_abi(
8946     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8947     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8948     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8949     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8950     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8951     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8952     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8953 );
8954 #[repr(transparent)]
8955 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8956 #[doc(hidden)]
8957 pub struct IBounceEase(::windows::runtime::IInspectable);
8958 unsafe impl ::windows::runtime::Interface for IBounceEase {
8959     type Vtable = IBounceEase_abi;
8960     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(737232462, 64625, 18413, [133, 161, 59, 169, 87, 119, 24, 180]);
8961 }
8962 #[repr(C)]
8963 #[doc(hidden)]
8964 pub struct IBounceEase_abi(
8965     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8967     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8968     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8969     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8970     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8971     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut i32) -> ::windows::runtime::HRESULT,
8972     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: i32) -> ::windows::runtime::HRESULT,
8973     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
8974     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
8975 );
8976 #[repr(transparent)]
8977 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8978 #[doc(hidden)]
8979 pub struct IBounceEaseStatics(::windows::runtime::IInspectable);
8980 unsafe impl ::windows::runtime::Interface for IBounceEaseStatics {
8981     type Vtable = IBounceEaseStatics_abi;
8982     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3228573090, 20339, 16841, [178, 203, 46, 163, 16, 81, 7, 255]);
8983 }
8984 #[repr(C)]
8985 #[doc(hidden)]
8986 pub struct IBounceEaseStatics_abi(
8987     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8988     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8989     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
8990     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
8991     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8992     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
8993     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8994     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
8995 );
8996 #[repr(transparent)]
8997 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
8998 #[doc(hidden)]
8999 pub struct ICircleEase(::windows::runtime::IInspectable);
9000 unsafe impl ::windows::runtime::Interface for ICircleEase {
9001     type Vtable = ICircleEase_abi;
9002     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1403239858, 37239, 20078, [160, 67, 80, 130, 216, 137, 171, 31]);
9003 }
9004 #[repr(C)]
9005 #[doc(hidden)]
9006 pub struct ICircleEase_abi(
9007     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9008     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9009     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9010     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9011     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9012     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9013 );
9014 #[repr(transparent)]
9015 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9016 #[doc(hidden)]
9017 pub struct IColorAnimation(::windows::runtime::IInspectable);
9018 unsafe impl ::windows::runtime::Interface for IColorAnimation {
9019     type Vtable = IColorAnimation_abi;
9020     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3098446357, 3939, 18068, [148, 103, 189, 175, 172, 18, 83, 234]);
9021 }
9022 #[repr(C)]
9023 #[doc(hidden)]
9024 pub struct IColorAnimation_abi(
9025     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9026     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9027     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9028     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9029     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9030     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9031     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9032     #[cfg(not(feature = "Foundation"))] usize,
9033     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9034     #[cfg(not(feature = "Foundation"))] usize,
9035     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9036     #[cfg(not(feature = "Foundation"))] usize,
9037     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9038     #[cfg(not(feature = "Foundation"))] usize,
9039     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9040     #[cfg(not(feature = "Foundation"))] usize,
9041     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9042     #[cfg(not(feature = "Foundation"))] usize,
9043     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9044     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9045     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9046     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9047 );
9048 #[repr(transparent)]
9049 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9050 #[doc(hidden)]
9051 pub struct IColorAnimationStatics(::windows::runtime::IInspectable);
9052 unsafe impl ::windows::runtime::Interface for IColorAnimationStatics {
9053     type Vtable = IColorAnimationStatics_abi;
9054     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1441461986, 34787, 20296, [149, 143, 133, 91, 47, 158, 169, 236]);
9055 }
9056 #[repr(C)]
9057 #[doc(hidden)]
9058 pub struct IColorAnimationStatics_abi(
9059     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9060     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9061     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9062     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9063     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9064     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9065     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9066     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9067     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9068     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9069     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9070 );
9071 #[repr(transparent)]
9072 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9073 #[doc(hidden)]
9074 pub struct IColorAnimationUsingKeyFrames(::windows::runtime::IInspectable);
9075 unsafe impl ::windows::runtime::Interface for IColorAnimationUsingKeyFrames {
9076     type Vtable = IColorAnimationUsingKeyFrames_abi;
9077     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4123534912, 5059, 17066, [154, 226, 126, 107, 81, 201, 47, 149]);
9078 }
9079 #[repr(C)]
9080 #[doc(hidden)]
9081 pub struct IColorAnimationUsingKeyFrames_abi(
9082     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9083     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9084     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9085     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9086     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9087     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9088     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9089     #[cfg(not(feature = "Foundation_Collections"))] usize,
9090     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9091     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9092 );
9093 #[repr(transparent)]
9094 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9095 #[doc(hidden)]
9096 pub struct IColorAnimationUsingKeyFramesStatics(::windows::runtime::IInspectable);
9097 unsafe impl ::windows::runtime::Interface for IColorAnimationUsingKeyFramesStatics {
9098     type Vtable = IColorAnimationUsingKeyFramesStatics_abi;
9099     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3027385564, 38633, 18681, [141, 146, 155, 100, 139, 47, 28, 198]);
9100 }
9101 #[repr(C)]
9102 #[doc(hidden)]
9103 pub struct IColorAnimationUsingKeyFramesStatics_abi(
9104     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9105     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9106     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9107     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9108     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9109     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9110     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9111 );
9112 #[repr(transparent)]
9113 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9114 #[doc(hidden)]
9115 pub struct IColorKeyFrame(::windows::runtime::IInspectable);
9116 unsafe impl ::windows::runtime::Interface for IColorKeyFrame {
9117     type Vtable = IColorKeyFrame_abi;
9118     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3038610137, 2320, 17801, [162, 132, 176, 201, 32, 88, 88, 233]);
9119 }
9120 #[repr(C)]
9121 #[doc(hidden)]
9122 pub struct IColorKeyFrame_abi(
9123     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9124     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9125     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9126     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9127     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9128     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9129     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::super::Color) -> ::windows::runtime::HRESULT,
9130     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::super::Color) -> ::windows::runtime::HRESULT,
9131     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut KeyTime) -> ::windows::runtime::HRESULT,
9132     #[cfg(not(feature = "Foundation"))] usize,
9133     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: KeyTime) -> ::windows::runtime::HRESULT,
9134     #[cfg(not(feature = "Foundation"))] usize,
9135 );
9136 #[repr(transparent)]
9137 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9138 #[doc(hidden)]
9139 pub struct IColorKeyFrameFactory(::windows::runtime::IInspectable);
9140 unsafe impl ::windows::runtime::Interface for IColorKeyFrameFactory {
9141     type Vtable = IColorKeyFrameFactory_abi;
9142     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1989925002, 40187, 19069, [150, 196, 161, 231, 222, 111, 219, 75]);
9143 }
9144 #[repr(C)]
9145 #[doc(hidden)]
9146 pub struct IColorKeyFrameFactory_abi(
9147     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9148     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9149     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9150     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9151     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9152     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9153     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baseinterface: ::windows::runtime::RawPtr, innerinterface: *mut ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9154 );
9155 #[repr(transparent)]
9156 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9157 #[doc(hidden)]
9158 pub struct IColorKeyFrameStatics(::windows::runtime::IInspectable);
9159 unsafe impl ::windows::runtime::Interface for IColorKeyFrameStatics {
9160     type Vtable = IColorKeyFrameStatics_abi;
9161     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3225661081, 8460, 17167, [157, 165, 223, 16, 130, 105, 32, 85]);
9162 }
9163 #[repr(C)]
9164 #[doc(hidden)]
9165 pub struct IColorKeyFrameStatics_abi(
9166     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9167     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9168     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9169     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9170     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9171     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9172     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9173     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9174 );
9175 #[repr(transparent)]
9176 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9177 #[doc(hidden)]
9178 pub struct ICommonNavigationTransitionInfo(::windows::runtime::IInspectable);
9179 unsafe impl ::windows::runtime::Interface for ICommonNavigationTransitionInfo {
9180     type Vtable = ICommonNavigationTransitionInfo_abi;
9181     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1345607314, 42325, 17956, [163, 97, 10, 145, 193, 112, 100, 115]);
9182 }
9183 #[repr(C)]
9184 #[doc(hidden)]
9185 pub struct ICommonNavigationTransitionInfo_abi(
9186     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9187     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9188     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9189     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9190     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9191     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9192     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9193     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9194 );
9195 #[repr(transparent)]
9196 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9197 #[doc(hidden)]
9198 pub struct ICommonNavigationTransitionInfoStatics(::windows::runtime::IInspectable);
9199 unsafe impl ::windows::runtime::Interface for ICommonNavigationTransitionInfoStatics {
9200     type Vtable = ICommonNavigationTransitionInfoStatics_abi;
9201     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(507444787, 20670, 17475, [136, 60, 229, 98, 114, 1, 194, 229]);
9202 }
9203 #[repr(C)]
9204 #[doc(hidden)]
9205 pub struct ICommonNavigationTransitionInfoStatics_abi(
9206     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9207     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9208     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9209     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9210     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9211     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9212     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9213     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9214     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9215     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9216 );
9217 #[repr(transparent)]
9218 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9219 #[doc(hidden)]
9220 pub struct IConnectedAnimation(::windows::runtime::IInspectable);
9221 unsafe impl ::windows::runtime::Interface for IConnectedAnimation {
9222     type Vtable = IConnectedAnimation_abi;
9223     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(890790540, 62343, 19493, [172, 152, 68, 232, 108, 60, 173, 240]);
9224 }
9225 #[repr(C)]
9226 #[doc(hidden)]
9227 pub struct IConnectedAnimation_abi(
9228     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9229     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9230     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9231     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9232     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9233     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9234     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
9235     #[cfg(not(feature = "Foundation"))] usize,
9236     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
9237     #[cfg(not(feature = "Foundation"))] usize,
9238     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, destination: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9239     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9240 );
9241 #[repr(transparent)]
9242 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9243 #[doc(hidden)]
9244 pub struct IConnectedAnimation2(::windows::runtime::IInspectable);
9245 unsafe impl ::windows::runtime::Interface for IConnectedAnimation2 {
9246     type Vtable = IConnectedAnimation2_abi;
9247     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1563397724, 22603, 19933, [182, 104, 151, 56, 145, 67, 20, 89]);
9248 }
9249 #[repr(C)]
9250 #[doc(hidden)]
9251 pub struct IConnectedAnimation2_abi(
9252     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9253     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9254     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9255     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9256     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9257     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9258     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9259     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9260     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, destination: ::windows::runtime::RawPtr, coordinatedelements: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9261     #[cfg(not(feature = "Foundation_Collections"))] usize,
9262     #[cfg(feature = "UI_Composition")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, component: ConnectedAnimationComponent, animation: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9263     #[cfg(not(feature = "UI_Composition"))] usize,
9264 );
9265 #[repr(transparent)]
9266 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9267 #[doc(hidden)]
9268 pub struct IConnectedAnimation3(::windows::runtime::IInspectable);
9269 unsafe impl ::windows::runtime::Interface for IConnectedAnimation3 {
9270     type Vtable = IConnectedAnimation3_abi;
9271     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1848656070, 1072, 22976, [168, 12, 204, 238, 210, 231, 120, 221]);
9272 }
9273 #[repr(C)]
9274 #[doc(hidden)]
9275 pub struct IConnectedAnimation3_abi(
9276     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9277     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9278     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9279     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9280     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9281     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9282     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9283     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9284 );
9285 #[repr(transparent)]
9286 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9287 #[doc(hidden)]
9288 pub struct IConnectedAnimationConfiguration(::windows::runtime::IInspectable);
9289 unsafe impl ::windows::runtime::Interface for IConnectedAnimationConfiguration {
9290     type Vtable = IConnectedAnimationConfiguration_abi;
9291     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2198190, 52620, 22097, [146, 160, 193, 219, 149, 192, 57, 152]);
9292 }
9293 #[repr(C)]
9294 #[doc(hidden)]
9295 pub struct IConnectedAnimationConfiguration_abi(
9296     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9297     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9298     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9299     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9300     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9301     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9302 );
9303 #[repr(transparent)]
9304 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9305 #[doc(hidden)]
9306 pub struct IConnectedAnimationConfigurationFactory(::windows::runtime::IInspectable);
9307 unsafe impl ::windows::runtime::Interface for IConnectedAnimationConfigurationFactory {
9308     type Vtable = IConnectedAnimationConfigurationFactory_abi;
9309     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(821672011, 56702, 22846, [191, 117, 233, 89, 220, 14, 197, 42]);
9310 }
9311 #[repr(C)]
9312 #[doc(hidden)]
9313 pub struct IConnectedAnimationConfigurationFactory_abi(
9314     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9315     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9316     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9317     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9318     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9319     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9320 );
9321 #[repr(transparent)]
9322 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9323 #[doc(hidden)]
9324 pub struct IConnectedAnimationService(::windows::runtime::IInspectable);
9325 unsafe impl ::windows::runtime::Interface for IConnectedAnimationService {
9326     type Vtable = IConnectedAnimationService_abi;
9327     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(476607945, 6587, 19783, [185, 170, 102, 200, 2, 220, 185, 255]);
9328 }
9329 #[repr(C)]
9330 #[doc(hidden)]
9331 pub struct IConnectedAnimationService_abi(
9332     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9333     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9334     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9335     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9336     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9337     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9338     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
9339     #[cfg(not(feature = "Foundation"))] usize,
9340     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
9341     #[cfg(not(feature = "Foundation"))] usize,
9342     #[cfg(feature = "UI_Composition")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9343     #[cfg(not(feature = "UI_Composition"))] usize,
9344     #[cfg(feature = "UI_Composition")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9345     #[cfg(not(feature = "UI_Composition"))] usize,
9346     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, source: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9347     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9348 );
9349 #[repr(transparent)]
9350 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9351 #[doc(hidden)]
9352 pub struct IConnectedAnimationServiceStatics(::windows::runtime::IInspectable);
9353 unsafe impl ::windows::runtime::Interface for IConnectedAnimationServiceStatics {
9354     type Vtable = IConnectedAnimationServiceStatics_abi;
9355     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3339161253, 54920, 16616, [143, 144, 150, 166, 39, 146, 115, 210]);
9356 }
9357 #[repr(C)]
9358 #[doc(hidden)]
9359 pub struct IConnectedAnimationServiceStatics_abi(
9360     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9361     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9362     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9363     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9364     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9365     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9366     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9367 );
9368 #[repr(transparent)]
9369 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9370 #[doc(hidden)]
9371 pub struct IContentThemeTransition(::windows::runtime::IInspectable);
9372 unsafe impl ::windows::runtime::Interface for IContentThemeTransition {
9373     type Vtable = IContentThemeTransition_abi;
9374     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4134520259, 22805, 17277, [142, 59, 173, 248, 231, 240, 171, 87]);
9375 }
9376 #[repr(C)]
9377 #[doc(hidden)]
9378 pub struct IContentThemeTransition_abi(
9379     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9380     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9381     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9382     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9383     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9384     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9385     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
9386     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
9387     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
9388     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
9389 );
9390 #[repr(transparent)]
9391 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9392 #[doc(hidden)]
9393 pub struct IContentThemeTransitionStatics(::windows::runtime::IInspectable);
9394 unsafe impl ::windows::runtime::Interface for IContentThemeTransitionStatics {
9395     type Vtable = IContentThemeTransitionStatics_abi;
9396     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(244245381, 39490, 17497, [175, 169, 51, 125, 196, 30, 21, 135]);
9397 }
9398 #[repr(C)]
9399 #[doc(hidden)]
9400 pub struct IContentThemeTransitionStatics_abi(
9401     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9402     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9403     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9404     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9405     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9406     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9407     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9408     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9409 );
9410 #[repr(transparent)]
9411 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9412 #[doc(hidden)]
9413 pub struct IContinuumNavigationTransitionInfo(::windows::runtime::IInspectable);
9414 unsafe impl ::windows::runtime::Interface for IContinuumNavigationTransitionInfo {
9415     type Vtable = IContinuumNavigationTransitionInfo_abi;
9416     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1273093037, 35750, 16388, [132, 56, 138, 144, 23, 151, 133, 67]);
9417 }
9418 #[repr(C)]
9419 #[doc(hidden)]
9420 pub struct IContinuumNavigationTransitionInfo_abi(
9421     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9422     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9423     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9424     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9425     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9426     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9427     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9428     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9429 );
9430 #[repr(transparent)]
9431 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9432 #[doc(hidden)]
9433 pub struct IContinuumNavigationTransitionInfoStatics(::windows::runtime::IInspectable);
9434 unsafe impl ::windows::runtime::Interface for IContinuumNavigationTransitionInfoStatics {
9435     type Vtable = IContinuumNavigationTransitionInfoStatics_abi;
9436     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1042668883, 45455, 19441, [179, 188, 146, 245, 22, 242, 153, 3]);
9437 }
9438 #[repr(C)]
9439 #[doc(hidden)]
9440 pub struct IContinuumNavigationTransitionInfoStatics_abi(
9441     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9442     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9443     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9444     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9445     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9446     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9447     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9448     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9449     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9450     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9451     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9452     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9453     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9454     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9455     #[cfg(feature = "UI_Xaml_Controls")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9456     #[cfg(not(feature = "UI_Xaml_Controls"))] usize,
9457     #[cfg(feature = "UI_Xaml_Controls")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9458     #[cfg(not(feature = "UI_Xaml_Controls"))] usize,
9459 );
9460 #[repr(transparent)]
9461 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9462 #[doc(hidden)]
9463 pub struct ICubicEase(::windows::runtime::IInspectable);
9464 unsafe impl ::windows::runtime::Interface for ICubicEase {
9465     type Vtable = ICubicEase_abi;
9466     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(462748790, 56023, 17236, [177, 162, 121, 105, 251, 246, 167, 13]);
9467 }
9468 #[repr(C)]
9469 #[doc(hidden)]
9470 pub struct ICubicEase_abi(
9471     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9472     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9473     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9474     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9475     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9476     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9477 );
9478 #[repr(transparent)]
9479 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9480 #[doc(hidden)]
9481 pub struct IDirectConnectedAnimationConfiguration(::windows::runtime::IInspectable);
9482 unsafe impl ::windows::runtime::Interface for IDirectConnectedAnimationConfiguration {
9483     type Vtable = IDirectConnectedAnimationConfiguration_abi;
9484     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3999101807, 22328, 23942, [183, 112, 21, 25, 72, 207, 54, 94]);
9485 }
9486 #[repr(C)]
9487 #[doc(hidden)]
9488 pub struct IDirectConnectedAnimationConfiguration_abi(
9489     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9490     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9491     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9492     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9493     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9494     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9495 );
9496 #[repr(transparent)]
9497 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9498 #[doc(hidden)]
9499 pub struct IDirectConnectedAnimationConfigurationFactory(::windows::runtime::IInspectable);
9500 unsafe impl ::windows::runtime::Interface for IDirectConnectedAnimationConfigurationFactory {
9501     type Vtable = IDirectConnectedAnimationConfigurationFactory_abi;
9502     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(93479913, 53939, 23159, [156, 244, 226, 109, 139, 84, 38, 8]);
9503 }
9504 #[repr(C)]
9505 #[doc(hidden)]
9506 pub struct IDirectConnectedAnimationConfigurationFactory_abi(
9507     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9508     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9509     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9510     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9511     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9512     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9513     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baseinterface: ::windows::runtime::RawPtr, innerinterface: *mut ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9514 );
9515 #[repr(transparent)]
9516 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9517 #[doc(hidden)]
9518 pub struct IDiscreteColorKeyFrame(::windows::runtime::IInspectable);
9519 unsafe impl ::windows::runtime::Interface for IDiscreteColorKeyFrame {
9520     type Vtable = IDiscreteColorKeyFrame_abi;
9521     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(587991284, 57442, 19633, [142, 42, 20, 9, 61, 115, 237, 140]);
9522 }
9523 #[repr(C)]
9524 #[doc(hidden)]
9525 pub struct IDiscreteColorKeyFrame_abi(
9526     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9527     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9528     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9529     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9530     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9531     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9532 );
9533 #[repr(transparent)]
9534 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9535 #[doc(hidden)]
9536 pub struct IDiscreteDoubleKeyFrame(::windows::runtime::IInspectable);
9537 unsafe impl ::windows::runtime::Interface for IDiscreteDoubleKeyFrame {
9538     type Vtable = IDiscreteDoubleKeyFrame_abi;
9539     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4126482234, 44305, 18894, [142, 28, 8, 253, 241, 68, 116, 70]);
9540 }
9541 #[repr(C)]
9542 #[doc(hidden)]
9543 pub struct IDiscreteDoubleKeyFrame_abi(
9544     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9545     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9546     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9547     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9548     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9549     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9550 );
9551 #[repr(transparent)]
9552 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9553 #[doc(hidden)]
9554 pub struct IDiscreteObjectKeyFrame(::windows::runtime::IInspectable);
9555 unsafe impl ::windows::runtime::Interface for IDiscreteObjectKeyFrame {
9556     type Vtable = IDiscreteObjectKeyFrame_abi;
9557     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3353140873, 61741, 19100, [129, 153, 231, 169, 236, 227, 164, 115]);
9558 }
9559 #[repr(C)]
9560 #[doc(hidden)]
9561 pub struct IDiscreteObjectKeyFrame_abi(
9562     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9563     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9564     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9565     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9566     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9567     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9568 );
9569 #[repr(transparent)]
9570 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9571 #[doc(hidden)]
9572 pub struct IDiscretePointKeyFrame(::windows::runtime::IInspectable);
9573 unsafe impl ::windows::runtime::Interface for IDiscretePointKeyFrame {
9574     type Vtable = IDiscretePointKeyFrame_abi;
9575     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3769173773, 19522, 19088, [152, 58, 117, 245, 168, 58, 47, 190]);
9576 }
9577 #[repr(C)]
9578 #[doc(hidden)]
9579 pub struct IDiscretePointKeyFrame_abi(
9580     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9581     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9582     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9583     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9584     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9585     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9586 );
9587 #[repr(transparent)]
9588 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9589 #[doc(hidden)]
9590 pub struct IDoubleAnimation(::windows::runtime::IInspectable);
9591 unsafe impl ::windows::runtime::Interface for IDoubleAnimation {
9592     type Vtable = IDoubleAnimation_abi;
9593     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2124365145, 3847, 19401, [151, 125, 3, 118, 63, 248, 21, 79]);
9594 }
9595 #[repr(C)]
9596 #[doc(hidden)]
9597 pub struct IDoubleAnimation_abi(
9598     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9599     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9600     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9601     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9602     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9603     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9604     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9605     #[cfg(not(feature = "Foundation"))] usize,
9606     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9607     #[cfg(not(feature = "Foundation"))] usize,
9608     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9609     #[cfg(not(feature = "Foundation"))] usize,
9610     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9611     #[cfg(not(feature = "Foundation"))] usize,
9612     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9613     #[cfg(not(feature = "Foundation"))] usize,
9614     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9615     #[cfg(not(feature = "Foundation"))] usize,
9616     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9617     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9618     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9619     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9620 );
9621 #[repr(transparent)]
9622 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9623 #[doc(hidden)]
9624 pub struct IDoubleAnimationStatics(::windows::runtime::IInspectable);
9625 unsafe impl ::windows::runtime::Interface for IDoubleAnimationStatics {
9626     type Vtable = IDoubleAnimationStatics_abi;
9627     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3799683933, 61713, 17335, [184, 36, 131, 43, 88, 215, 120, 107]);
9628 }
9629 #[repr(C)]
9630 #[doc(hidden)]
9631 pub struct IDoubleAnimationStatics_abi(
9632     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9633     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9634     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9635     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9636     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9637     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9638     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9639     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9640     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9641     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9642     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9643 );
9644 #[repr(transparent)]
9645 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9646 #[doc(hidden)]
9647 pub struct IDoubleAnimationUsingKeyFrames(::windows::runtime::IInspectable);
9648 unsafe impl ::windows::runtime::Interface for IDoubleAnimationUsingKeyFrames {
9649     type Vtable = IDoubleAnimationUsingKeyFrames_abi;
9650     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1341022863, 49134, 20341, [131, 194, 169, 59, 57, 72, 132, 115]);
9651 }
9652 #[repr(C)]
9653 #[doc(hidden)]
9654 pub struct IDoubleAnimationUsingKeyFrames_abi(
9655     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9656     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9657     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9658     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9659     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9660     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9661     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9662     #[cfg(not(feature = "Foundation_Collections"))] usize,
9663     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
9664     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
9665 );
9666 #[repr(transparent)]
9667 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9668 #[doc(hidden)]
9669 pub struct IDoubleAnimationUsingKeyFramesStatics(::windows::runtime::IInspectable);
9670 unsafe impl ::windows::runtime::Interface for IDoubleAnimationUsingKeyFramesStatics {
9671     type Vtable = IDoubleAnimationUsingKeyFramesStatics_abi;
9672     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(278655734, 50703, 18858, [171, 246, 246, 150, 212, 146, 17, 107]);
9673 }
9674 #[repr(C)]
9675 #[doc(hidden)]
9676 pub struct IDoubleAnimationUsingKeyFramesStatics_abi(
9677     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9678     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9679     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9680     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9681     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9682     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9683     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9684 );
9685 #[repr(transparent)]
9686 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9687 #[doc(hidden)]
9688 pub struct IDoubleKeyFrame(::windows::runtime::IInspectable);
9689 unsafe impl ::windows::runtime::Interface for IDoubleKeyFrame {
9690     type Vtable = IDoubleKeyFrame_abi;
9691     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1732531965, 59422, 20302, [180, 173, 10, 207, 237, 158, 205, 104]);
9692 }
9693 #[repr(C)]
9694 #[doc(hidden)]
9695 pub struct IDoubleKeyFrame_abi(
9696     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9697     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9698     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9699     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9700     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9701     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9702     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
9703     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
9704     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut KeyTime) -> ::windows::runtime::HRESULT,
9705     #[cfg(not(feature = "Foundation"))] usize,
9706     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: KeyTime) -> ::windows::runtime::HRESULT,
9707     #[cfg(not(feature = "Foundation"))] usize,
9708 );
9709 #[repr(transparent)]
9710 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9711 #[doc(hidden)]
9712 pub struct IDoubleKeyFrameFactory(::windows::runtime::IInspectable);
9713 unsafe impl ::windows::runtime::Interface for IDoubleKeyFrameFactory {
9714     type Vtable = IDoubleKeyFrameFactory_abi;
9715     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2895634115, 30008, 16569, [177, 82, 105, 111, 127, 191, 71, 34]);
9716 }
9717 #[repr(C)]
9718 #[doc(hidden)]
9719 pub struct IDoubleKeyFrameFactory_abi(
9720     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9721     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9722     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9723     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9724     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9725     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9726     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baseinterface: ::windows::runtime::RawPtr, innerinterface: *mut ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9727 );
9728 #[repr(transparent)]
9729 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9730 #[doc(hidden)]
9731 pub struct IDoubleKeyFrameStatics(::windows::runtime::IInspectable);
9732 unsafe impl ::windows::runtime::Interface for IDoubleKeyFrameStatics {
9733     type Vtable = IDoubleKeyFrameStatics_abi;
9734     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(843465136, 32055, 17018, [173, 235, 67, 243, 139, 182, 26, 77]);
9735 }
9736 #[repr(C)]
9737 #[doc(hidden)]
9738 pub struct IDoubleKeyFrameStatics_abi(
9739     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9740     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9741     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9742     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9743     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9744     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9745     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9746     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9747 );
9748 #[repr(transparent)]
9749 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9750 #[doc(hidden)]
9751 pub struct IDragItemThemeAnimation(::windows::runtime::IInspectable);
9752 unsafe impl ::windows::runtime::Interface for IDragItemThemeAnimation {
9753     type Vtable = IDragItemThemeAnimation_abi;
9754     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(209542581, 32470, 18761, [180, 230, 167, 140, 159, 79, 151, 141]);
9755 }
9756 #[repr(C)]
9757 #[doc(hidden)]
9758 pub struct IDragItemThemeAnimation_abi(
9759     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9760     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9761     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9762     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9763     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9764     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9765     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9766     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9767 );
9768 #[repr(transparent)]
9769 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9770 #[doc(hidden)]
9771 pub struct IDragItemThemeAnimationStatics(::windows::runtime::IInspectable);
9772 unsafe impl ::windows::runtime::Interface for IDragItemThemeAnimationStatics {
9773     type Vtable = IDragItemThemeAnimationStatics_abi;
9774     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1645787637, 314, 20401, [134, 252, 146, 188, 78, 141, 2, 65]);
9775 }
9776 #[repr(C)]
9777 #[doc(hidden)]
9778 pub struct IDragItemThemeAnimationStatics_abi(
9779     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9780     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9781     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9782     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9783     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9784     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9785     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9786 );
9787 #[repr(transparent)]
9788 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9789 #[doc(hidden)]
9790 pub struct IDragOverThemeAnimation(::windows::runtime::IInspectable);
9791 unsafe impl ::windows::runtime::Interface for IDragOverThemeAnimation {
9792     type Vtable = IDragOverThemeAnimation_abi;
9793     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1928815351, 32337, 19051, [185, 55, 220, 75, 76, 28, 84, 88]);
9794 }
9795 #[repr(C)]
9796 #[doc(hidden)]
9797 pub struct IDragOverThemeAnimation_abi(
9798     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9799     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9800     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9801     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9802     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9803     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9804     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9805     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9806     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
9807     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
9808     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Controls::Primitives::AnimationDirection) -> ::windows::runtime::HRESULT,
9809     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
9810     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Controls::Primitives::AnimationDirection) -> ::windows::runtime::HRESULT,
9811     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
9812 );
9813 #[repr(transparent)]
9814 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9815 #[doc(hidden)]
9816 pub struct IDragOverThemeAnimationStatics(::windows::runtime::IInspectable);
9817 unsafe impl ::windows::runtime::Interface for IDragOverThemeAnimationStatics {
9818     type Vtable = IDragOverThemeAnimationStatics_abi;
9819     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(342883927, 15517, 16857, [165, 255, 141, 114, 57, 81, 104, 16]);
9820 }
9821 #[repr(C)]
9822 #[doc(hidden)]
9823 pub struct IDragOverThemeAnimationStatics_abi(
9824     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9825     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9826     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9827     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9828     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9829     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9830     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9831     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9832     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9833 );
9834 #[repr(transparent)]
9835 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9836 #[doc(hidden)]
9837 pub struct IDrillInNavigationTransitionInfo(::windows::runtime::IInspectable);
9838 unsafe impl ::windows::runtime::Interface for IDrillInNavigationTransitionInfo {
9839     type Vtable = IDrillInNavigationTransitionInfo_abi;
9840     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(998645786, 17875, 17979, [147, 158, 200, 89, 95, 67, 155, 204]);
9841 }
9842 #[repr(C)]
9843 #[doc(hidden)]
9844 pub struct IDrillInNavigationTransitionInfo_abi(
9845     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9846     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9847     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9848     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9849     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9850     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9851 );
9852 #[repr(transparent)]
9853 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9854 #[doc(hidden)]
9855 pub struct IDrillInThemeAnimation(::windows::runtime::IInspectable);
9856 unsafe impl ::windows::runtime::Interface for IDrillInThemeAnimation {
9857     type Vtable = IDrillInThemeAnimation_abi;
9858     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2962274340, 61906, 16824, [135, 186, 120, 3, 65, 38, 89, 76]);
9859 }
9860 #[repr(C)]
9861 #[doc(hidden)]
9862 pub struct IDrillInThemeAnimation_abi(
9863     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9864     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9865     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9866     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9867     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9868     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9869     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9870     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9871     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9872     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9873     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9874     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9875     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9876     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9877 );
9878 #[repr(transparent)]
9879 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9880 #[doc(hidden)]
9881 pub struct IDrillInThemeAnimationStatics(::windows::runtime::IInspectable);
9882 unsafe impl ::windows::runtime::Interface for IDrillInThemeAnimationStatics {
9883     type Vtable = IDrillInThemeAnimationStatics_abi;
9884     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3323978888, 41338, 19217, [181, 59, 164, 241, 160, 125, 75, 169]);
9885 }
9886 #[repr(C)]
9887 #[doc(hidden)]
9888 pub struct IDrillInThemeAnimationStatics_abi(
9889     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9890     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9891     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9892     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9893     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9894     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9895     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9896     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9897     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9898     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9899 );
9900 #[repr(transparent)]
9901 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9902 #[doc(hidden)]
9903 pub struct IDrillOutThemeAnimation(::windows::runtime::IInspectable);
9904 unsafe impl ::windows::runtime::Interface for IDrillOutThemeAnimation {
9905     type Vtable = IDrillOutThemeAnimation_abi;
9906     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3633368287, 1747, 20350, [142, 74, 79, 183, 110, 37, 97, 57]);
9907 }
9908 #[repr(C)]
9909 #[doc(hidden)]
9910 pub struct IDrillOutThemeAnimation_abi(
9911     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9912     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9913     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9914     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9915     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9916     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9917     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9918     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9919     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9920     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9921     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9922     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9923     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9924     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9925 );
9926 #[repr(transparent)]
9927 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9928 #[doc(hidden)]
9929 pub struct IDrillOutThemeAnimationStatics(::windows::runtime::IInspectable);
9930 unsafe impl ::windows::runtime::Interface for IDrillOutThemeAnimationStatics {
9931     type Vtable = IDrillOutThemeAnimationStatics_abi;
9932     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3199589275, 9751, 18568, [128, 221, 114, 250, 123, 182, 250, 195]);
9933 }
9934 #[repr(C)]
9935 #[doc(hidden)]
9936 pub struct IDrillOutThemeAnimationStatics_abi(
9937     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9938     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9939     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9940     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9941     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9942     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9943     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9944     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9945     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9946     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9947 );
9948 #[repr(transparent)]
9949 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9950 #[doc(hidden)]
9951 pub struct IDropTargetItemThemeAnimation(::windows::runtime::IInspectable);
9952 unsafe impl ::windows::runtime::Interface for IDropTargetItemThemeAnimation {
9953     type Vtable = IDropTargetItemThemeAnimation_abi;
9954     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(411158888, 6180, 17963, [135, 232, 195, 87, 33, 43, 151, 123]);
9955 }
9956 #[repr(C)]
9957 #[doc(hidden)]
9958 pub struct IDropTargetItemThemeAnimation_abi(
9959     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9960     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9961     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9962     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9963     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9964     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9965     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
9967 );
9968 #[repr(transparent)]
9969 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9970 #[doc(hidden)]
9971 pub struct IDropTargetItemThemeAnimationStatics(::windows::runtime::IInspectable);
9972 unsafe impl ::windows::runtime::Interface for IDropTargetItemThemeAnimationStatics {
9973     type Vtable = IDropTargetItemThemeAnimationStatics_abi;
9974     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2927686790, 11862, 17683, [191, 24, 215, 116, 112, 22, 74, 229]);
9975 }
9976 #[repr(C)]
9977 #[doc(hidden)]
9978 pub struct IDropTargetItemThemeAnimationStatics_abi(
9979     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9980     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9981     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
9982     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
9983     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9984     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
9985     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9986 );
9987 #[repr(transparent)]
9988 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
9989 #[doc(hidden)]
9990 pub struct IEasingColorKeyFrame(::windows::runtime::IInspectable);
9991 unsafe impl ::windows::runtime::Interface for IEasingColorKeyFrame {
9992     type Vtable = IEasingColorKeyFrame_abi;
9993     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3342063152, 62649, 18740, [155, 221, 39, 172, 94, 209, 207, 216]);
9994 }
9995 #[repr(C)]
9996 #[doc(hidden)]
9997 pub struct IEasingColorKeyFrame_abi(
9998     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
9999     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10000     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10001     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10002     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10003     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10004     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10005     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10006 );
10007 #[repr(transparent)]
10008 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10009 #[doc(hidden)]
10010 pub struct IEasingColorKeyFrameStatics(::windows::runtime::IInspectable);
10011 unsafe impl ::windows::runtime::Interface for IEasingColorKeyFrameStatics {
10012     type Vtable = IEasingColorKeyFrameStatics_abi;
10013     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1865955324, 36413, 17698, [155, 15, 0, 61, 184, 96, 152, 81]);
10014 }
10015 #[repr(C)]
10016 #[doc(hidden)]
10017 pub struct IEasingColorKeyFrameStatics_abi(
10018     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10019     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10020     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10021     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10022     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10023     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10024     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10025 );
10026 #[repr(transparent)]
10027 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10028 #[doc(hidden)]
10029 pub struct IEasingDoubleKeyFrame(::windows::runtime::IInspectable);
10030 unsafe impl ::windows::runtime::Interface for IEasingDoubleKeyFrame {
10031     type Vtable = IEasingDoubleKeyFrame_abi;
10032     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2522536845, 39508, 16648, [180, 255, 181, 165, 33, 44, 179, 56]);
10033 }
10034 #[repr(C)]
10035 #[doc(hidden)]
10036 pub struct IEasingDoubleKeyFrame_abi(
10037     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10038     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10039     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10040     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10041     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10042     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10043     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10044     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10045 );
10046 #[repr(transparent)]
10047 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10048 #[doc(hidden)]
10049 pub struct IEasingDoubleKeyFrameStatics(::windows::runtime::IInspectable);
10050 unsafe impl ::windows::runtime::Interface for IEasingDoubleKeyFrameStatics {
10051     type Vtable = IEasingDoubleKeyFrameStatics_abi;
10052     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3369326661, 56238, 20059, [139, 132, 217, 83, 115, 152, 229, 177]);
10053 }
10054 #[repr(C)]
10055 #[doc(hidden)]
10056 pub struct IEasingDoubleKeyFrameStatics_abi(
10057     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10058     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10059     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10060     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10061     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10062     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10063     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10064 );
10065 #[repr(transparent)]
10066 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10067 #[doc(hidden)]
10068 pub struct IEasingFunctionBase(::windows::runtime::IInspectable);
10069 unsafe impl ::windows::runtime::Interface for IEasingFunctionBase {
10070     type Vtable = IEasingFunctionBase_abi;
10071     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3238541375, 11266, 16721, [142, 205, 104, 221, 170, 63, 13, 155]);
10072 }
10073 #[repr(C)]
10074 #[doc(hidden)]
10075 pub struct IEasingFunctionBase_abi(
10076     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10077     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10078     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10079     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10080     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10081     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10082     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EasingMode) -> ::windows::runtime::HRESULT,
10083     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EasingMode) -> ::windows::runtime::HRESULT,
10084     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, normalizedtime: f64, result__: *mut f64) -> ::windows::runtime::HRESULT,
10085 );
10086 #[repr(transparent)]
10087 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10088 #[doc(hidden)]
10089 pub struct IEasingFunctionBaseFactory(::windows::runtime::IInspectable);
10090 unsafe impl ::windows::runtime::Interface for IEasingFunctionBaseFactory {
10091     type Vtable = IEasingFunctionBaseFactory_abi;
10092     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(405864042, 61467, 17376, [182, 31, 180, 82, 161, 198, 111, 210]);
10093 }
10094 #[repr(C)]
10095 #[doc(hidden)]
10096 pub struct IEasingFunctionBaseFactory_abi(
10097     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10098     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10099     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10100     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10101     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10102     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10103 );
10104 #[repr(transparent)]
10105 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10106 #[doc(hidden)]
10107 pub struct IEasingFunctionBaseStatics(::windows::runtime::IInspectable);
10108 unsafe impl ::windows::runtime::Interface for IEasingFunctionBaseStatics {
10109     type Vtable = IEasingFunctionBaseStatics_abi;
10110     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(709898666, 11344, 18973, [187, 4, 215, 94, 7, 183, 21, 72]);
10111 }
10112 #[repr(C)]
10113 #[doc(hidden)]
10114 pub struct IEasingFunctionBaseStatics_abi(
10115     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10116     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10117     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10118     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10119     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10120     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10121     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10122 );
10123 #[repr(transparent)]
10124 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10125 #[doc(hidden)]
10126 pub struct IEasingPointKeyFrame(::windows::runtime::IInspectable);
10127 unsafe impl ::windows::runtime::Interface for IEasingPointKeyFrame {
10128     type Vtable = IEasingPointKeyFrame_abi;
10129     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3016299392, 26728, 16933, [167, 11, 57, 129, 204, 11, 41, 71]);
10130 }
10131 #[repr(C)]
10132 #[doc(hidden)]
10133 pub struct IEasingPointKeyFrame_abi(
10134     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10135     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10136     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10137     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10138     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10139     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10140     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10141     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10142 );
10143 #[repr(transparent)]
10144 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10145 #[doc(hidden)]
10146 pub struct IEasingPointKeyFrameStatics(::windows::runtime::IInspectable);
10147 unsafe impl ::windows::runtime::Interface for IEasingPointKeyFrameStatics {
10148     type Vtable = IEasingPointKeyFrameStatics_abi;
10149     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3794649028, 2060, 16428, [166, 181, 244, 141, 10, 152, 17, 107]);
10150 }
10151 #[repr(C)]
10152 #[doc(hidden)]
10153 pub struct IEasingPointKeyFrameStatics_abi(
10154     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10155     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10156     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10157     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10158     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10159     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10160     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10161 );
10162 #[repr(transparent)]
10163 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10164 #[doc(hidden)]
10165 pub struct IEdgeUIThemeTransition(::windows::runtime::IInspectable);
10166 unsafe impl ::windows::runtime::Interface for IEdgeUIThemeTransition {
10167     type Vtable = IEdgeUIThemeTransition_abi;
10168     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1552335259, 18903, 6636, [207, 25, 131, 167, 60, 109, 231, 94]);
10169 }
10170 #[repr(C)]
10171 #[doc(hidden)]
10172 pub struct IEdgeUIThemeTransition_abi(
10173     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10174     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10175     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10176     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10177     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10178     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10179     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Controls::Primitives::EdgeTransitionLocation) -> ::windows::runtime::HRESULT,
10180     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
10181     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Controls::Primitives::EdgeTransitionLocation) -> ::windows::runtime::HRESULT,
10182     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
10183 );
10184 #[repr(transparent)]
10185 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10186 #[doc(hidden)]
10187 pub struct IEdgeUIThemeTransitionStatics(::windows::runtime::IInspectable);
10188 unsafe impl ::windows::runtime::Interface for IEdgeUIThemeTransitionStatics {
10189     type Vtable = IEdgeUIThemeTransitionStatics_abi;
10190     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(379760955, 18181, 12331, [39, 198, 42, 172, 146, 246, 69, 172]);
10191 }
10192 #[repr(C)]
10193 #[doc(hidden)]
10194 pub struct IEdgeUIThemeTransitionStatics_abi(
10195     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10196     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10197     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10198     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10199     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10200     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10201     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10202 );
10203 #[repr(transparent)]
10204 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10205 #[doc(hidden)]
10206 pub struct IElasticEase(::windows::runtime::IInspectable);
10207 unsafe impl ::windows::runtime::Interface for IElasticEase {
10208     type Vtable = IElasticEase_abi;
10209     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4015760780, 45238, 19052, [156, 168, 251, 66, 51, 241, 36, 89]);
10210 }
10211 #[repr(C)]
10212 #[doc(hidden)]
10213 pub struct IElasticEase_abi(
10214     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10215     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10216     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10217     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10218     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10219     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10220     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut i32) -> ::windows::runtime::HRESULT,
10221     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: i32) -> ::windows::runtime::HRESULT,
10222     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
10223     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
10224 );
10225 #[repr(transparent)]
10226 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10227 #[doc(hidden)]
10228 pub struct IElasticEaseStatics(::windows::runtime::IInspectable);
10229 unsafe impl ::windows::runtime::Interface for IElasticEaseStatics {
10230     type Vtable = IElasticEaseStatics_abi;
10231     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2851432172, 65180, 19243, [142, 82, 187, 120, 93, 86, 33, 133]);
10232 }
10233 #[repr(C)]
10234 #[doc(hidden)]
10235 pub struct IElasticEaseStatics_abi(
10236     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10237     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10238     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10239     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10240     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10241     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10242     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10243     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10244 );
10245 #[repr(transparent)]
10246 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10247 #[doc(hidden)]
10248 pub struct IEntranceNavigationTransitionInfo(::windows::runtime::IInspectable);
10249 unsafe impl ::windows::runtime::Interface for IEntranceNavigationTransitionInfo {
10250     type Vtable = IEntranceNavigationTransitionInfo_abi;
10251     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1913267563, 7306, 16878, [130, 236, 138, 135, 192, 207, 71, 218]);
10252 }
10253 #[repr(C)]
10254 #[doc(hidden)]
10255 pub struct IEntranceNavigationTransitionInfo_abi(
10256     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10257     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10258     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10259     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10260     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10261     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10262 );
10263 #[repr(transparent)]
10264 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10265 #[doc(hidden)]
10266 pub struct IEntranceNavigationTransitionInfoStatics(::windows::runtime::IInspectable);
10267 unsafe impl ::windows::runtime::Interface for IEntranceNavigationTransitionInfoStatics {
10268     type Vtable = IEntranceNavigationTransitionInfoStatics_abi;
10269     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4182295162, 16585, 18079, [143, 51, 191, 69, 200, 129, 31, 33]);
10270 }
10271 #[repr(C)]
10272 #[doc(hidden)]
10273 pub struct IEntranceNavigationTransitionInfoStatics_abi(
10274     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10275     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10276     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10277     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10278     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10279     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10280     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10281     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
10282     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
10283 );
10284 #[repr(transparent)]
10285 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10286 #[doc(hidden)]
10287 pub struct IEntranceThemeTransition(::windows::runtime::IInspectable);
10288 unsafe impl ::windows::runtime::Interface for IEntranceThemeTransition {
10289     type Vtable = IEntranceThemeTransition_abi;
10290     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(124357641, 43235, 16794, [160, 29, 116, 16, 160, 174, 142, 200]);
10291 }
10292 #[repr(C)]
10293 #[doc(hidden)]
10294 pub struct IEntranceThemeTransition_abi(
10295     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10296     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10297     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10298     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10299     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10300     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10301     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
10302     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
10303     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
10304     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
10305     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
10306     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
10307 );
10308 #[repr(transparent)]
10309 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10310 #[doc(hidden)]
10311 pub struct IEntranceThemeTransitionStatics(::windows::runtime::IInspectable);
10312 unsafe impl ::windows::runtime::Interface for IEntranceThemeTransitionStatics {
10313     type Vtable = IEntranceThemeTransitionStatics_abi;
10314     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(936117623, 65432, 19181, [184, 110, 94, 194, 55, 2, 248, 119]);
10315 }
10316 #[repr(C)]
10317 #[doc(hidden)]
10318 pub struct IEntranceThemeTransitionStatics_abi(
10319     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10320     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10321     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10322     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10323     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10324     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10325     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10326     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10327     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10328 );
10329 #[repr(transparent)]
10330 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10331 #[doc(hidden)]
10332 pub struct IExponentialEase(::windows::runtime::IInspectable);
10333 unsafe impl ::windows::runtime::Interface for IExponentialEase {
10334     type Vtable = IExponentialEase_abi;
10335     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2092557341, 61627, 19402, [157, 165, 155, 163, 161, 23, 52, 196]);
10336 }
10337 #[repr(C)]
10338 #[doc(hidden)]
10339 pub struct IExponentialEase_abi(
10340     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10341     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10342     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10343     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10344     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10345     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10346     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
10347     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
10348 );
10349 #[repr(transparent)]
10350 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10351 #[doc(hidden)]
10352 pub struct IExponentialEaseStatics(::windows::runtime::IInspectable);
10353 unsafe impl ::windows::runtime::Interface for IExponentialEaseStatics {
10354     type Vtable = IExponentialEaseStatics_abi;
10355     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4085180387, 42849, 17234, [154, 214, 112, 121, 69, 103, 88, 26]);
10356 }
10357 #[repr(C)]
10358 #[doc(hidden)]
10359 pub struct IExponentialEaseStatics_abi(
10360     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10361     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10362     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10363     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10364     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10365     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10366     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10367 );
10368 #[repr(transparent)]
10369 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10370 #[doc(hidden)]
10371 pub struct IFadeInThemeAnimation(::windows::runtime::IInspectable);
10372 unsafe impl ::windows::runtime::Interface for IFadeInThemeAnimation {
10373     type Vtable = IFadeInThemeAnimation_abi;
10374     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1833683189, 43288, 17527, [128, 120, 85, 76, 104, 129, 42, 184]);
10375 }
10376 #[repr(C)]
10377 #[doc(hidden)]
10378 pub struct IFadeInThemeAnimation_abi(
10379     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10380     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10381     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10382     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10383     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10384     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10385     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
10386     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
10387 );
10388 #[repr(transparent)]
10389 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10390 #[doc(hidden)]
10391 pub struct IFadeInThemeAnimationStatics(::windows::runtime::IInspectable);
10392 unsafe impl ::windows::runtime::Interface for IFadeInThemeAnimationStatics {
10393     type Vtable = IFadeInThemeAnimationStatics_abi;
10394     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2130778081, 48809, 18723, [178, 58, 13, 223, 77, 123, 135, 55]);
10395 }
10396 #[repr(C)]
10397 #[doc(hidden)]
10398 pub struct IFadeInThemeAnimationStatics_abi(
10399     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10400     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10401     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10402     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10403     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10404     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10405     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10406 );
10407 #[repr(transparent)]
10408 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10409 #[doc(hidden)]
10410 pub struct IFadeOutThemeAnimation(::windows::runtime::IInspectable);
10411 unsafe impl ::windows::runtime::Interface for IFadeOutThemeAnimation {
10412     type Vtable = IFadeOutThemeAnimation_abi;
10413     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2301062057, 65492, 17846, [155, 154, 206, 212, 137, 81, 231, 18]);
10414 }
10415 #[repr(C)]
10416 #[doc(hidden)]
10417 pub struct IFadeOutThemeAnimation_abi(
10418     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10419     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10420     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10421     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10422     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10423     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10424     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
10425     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
10426 );
10427 #[repr(transparent)]
10428 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10429 #[doc(hidden)]
10430 pub struct IFadeOutThemeAnimationStatics(::windows::runtime::IInspectable);
10431 unsafe impl ::windows::runtime::Interface for IFadeOutThemeAnimationStatics {
10432     type Vtable = IFadeOutThemeAnimationStatics_abi;
10433     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4262963226, 16744, 20328, [162, 140, 229, 221, 152, 207, 104, 15]);
10434 }
10435 #[repr(C)]
10436 #[doc(hidden)]
10437 pub struct IFadeOutThemeAnimationStatics_abi(
10438     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10439     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10440     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10441     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10442     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10443     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10444     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10445 );
10446 #[repr(transparent)]
10447 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10448 #[doc(hidden)]
10449 pub struct IGravityConnectedAnimationConfiguration(::windows::runtime::IInspectable);
10450 unsafe impl ::windows::runtime::Interface for IGravityConnectedAnimationConfiguration {
10451     type Vtable = IGravityConnectedAnimationConfiguration_abi;
10452     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3344016567, 1113, 20802, [184, 145, 174, 170, 193, 212, 24, 34]);
10453 }
10454 #[repr(C)]
10455 #[doc(hidden)]
10456 pub struct IGravityConnectedAnimationConfiguration_abi(
10457     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10458     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10459     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10460     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10461     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10462     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10463 );
10464 #[repr(transparent)]
10465 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10466 #[doc(hidden)]
10467 pub struct IGravityConnectedAnimationConfiguration2(::windows::runtime::IInspectable);
10468 unsafe impl ::windows::runtime::Interface for IGravityConnectedAnimationConfiguration2 {
10469     type Vtable = IGravityConnectedAnimationConfiguration2_abi;
10470     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1647524573, 44756, 24557, [149, 255, 209, 40, 172, 206, 139, 228]);
10471 }
10472 #[repr(C)]
10473 #[doc(hidden)]
10474 pub struct IGravityConnectedAnimationConfiguration2_abi(
10475     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10476     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10477     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10478     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10479     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10480     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10481     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
10482     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
10483 );
10484 #[repr(transparent)]
10485 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10486 #[doc(hidden)]
10487 pub struct IGravityConnectedAnimationConfigurationFactory(::windows::runtime::IInspectable);
10488 unsafe impl ::windows::runtime::Interface for IGravityConnectedAnimationConfigurationFactory {
10489     type Vtable = IGravityConnectedAnimationConfigurationFactory_abi;
10490     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3894592543, 13910, 20624, [146, 245, 194, 23, 234, 172, 182, 130]);
10491 }
10492 #[repr(C)]
10493 #[doc(hidden)]
10494 pub struct IGravityConnectedAnimationConfigurationFactory_abi(
10495     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10496     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10497     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10498     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10499     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10500     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10501     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baseinterface: ::windows::runtime::RawPtr, innerinterface: *mut ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10502 );
10503 #[repr(transparent)]
10504 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10505 #[doc(hidden)]
10506 pub struct IKeySpline(::windows::runtime::IInspectable);
10507 unsafe impl ::windows::runtime::Interface for IKeySpline {
10508     type Vtable = IKeySpline_abi;
10509     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2007065531, 54730, 18994, [186, 11, 125, 255, 152, 142, 88, 160]);
10510 }
10511 #[repr(C)]
10512 #[doc(hidden)]
10513 pub struct IKeySpline_abi(
10514     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10515     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10516     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10517     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10518     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10519     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10520     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::super::super::Foundation::Point) -> ::windows::runtime::HRESULT,
10521     #[cfg(not(feature = "Foundation"))] usize,
10522     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::super::super::Foundation::Point) -> ::windows::runtime::HRESULT,
10523     #[cfg(not(feature = "Foundation"))] usize,
10524     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::super::super::Foundation::Point) -> ::windows::runtime::HRESULT,
10525     #[cfg(not(feature = "Foundation"))] usize,
10526     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::super::super::Foundation::Point) -> ::windows::runtime::HRESULT,
10527     #[cfg(not(feature = "Foundation"))] usize,
10528 );
10529 #[repr(transparent)]
10530 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10531 #[doc(hidden)]
10532 pub struct IKeyTimeHelper(::windows::runtime::IInspectable);
10533 unsafe impl ::windows::runtime::Interface for IKeyTimeHelper {
10534     type Vtable = IKeyTimeHelper_abi;
10535     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(910419072, 18467, 18026, [171, 229, 94, 121, 200, 237, 119, 237]);
10536 }
10537 #[repr(C)]
10538 #[doc(hidden)]
10539 pub struct IKeyTimeHelper_abi(
10540     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10541     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10542     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10543     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10544     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10545     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10546 );
10547 #[repr(transparent)]
10548 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10549 #[doc(hidden)]
10550 pub struct IKeyTimeHelperStatics(::windows::runtime::IInspectable);
10551 unsafe impl ::windows::runtime::Interface for IKeyTimeHelperStatics {
10552     type Vtable = IKeyTimeHelperStatics_abi;
10553     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2141348140, 8873, 17897, [154, 247, 199, 65, 110, 255, 247, 165]);
10554 }
10555 #[repr(C)]
10556 #[doc(hidden)]
10557 pub struct IKeyTimeHelperStatics_abi(
10558     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10559     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10560     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10561     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10562     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10563     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10564     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, timespan: super::super::super::super::Foundation::TimeSpan, result__: *mut KeyTime) -> ::windows::runtime::HRESULT,
10565     #[cfg(not(feature = "Foundation"))] usize,
10566 );
10567 #[repr(transparent)]
10568 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10569 #[doc(hidden)]
10570 pub struct ILinearColorKeyFrame(::windows::runtime::IInspectable);
10571 unsafe impl ::windows::runtime::Interface for ILinearColorKeyFrame {
10572     type Vtable = ILinearColorKeyFrame_abi;
10573     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1727903471, 44161, 17937, [177, 210, 97, 245, 69, 152, 63, 3]);
10574 }
10575 #[repr(C)]
10576 #[doc(hidden)]
10577 pub struct ILinearColorKeyFrame_abi(
10578     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10579     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10580     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10581     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10582     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10583     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10584 );
10585 #[repr(transparent)]
10586 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10587 #[doc(hidden)]
10588 pub struct ILinearDoubleKeyFrame(::windows::runtime::IInspectable);
10589 unsafe impl ::windows::runtime::Interface for ILinearDoubleKeyFrame {
10590     type Vtable = ILinearDoubleKeyFrame_abi;
10591     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2399007333, 39547, 17181, [143, 12, 20, 197, 107, 94, 164, 217]);
10592 }
10593 #[repr(C)]
10594 #[doc(hidden)]
10595 pub struct ILinearDoubleKeyFrame_abi(
10596     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10597     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10598     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10599     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10600     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10601     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10602 );
10603 #[repr(transparent)]
10604 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10605 #[doc(hidden)]
10606 pub struct ILinearPointKeyFrame(::windows::runtime::IInspectable);
10607 unsafe impl ::windows::runtime::Interface for ILinearPointKeyFrame {
10608     type Vtable = ILinearPointKeyFrame_abi;
10609     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3888756975, 44836, 18926, [132, 241, 168, 102, 0, 164, 227, 25]);
10610 }
10611 #[repr(C)]
10612 #[doc(hidden)]
10613 pub struct ILinearPointKeyFrame_abi(
10614     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10615     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10616     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10617     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10618     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10619     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10620 );
10621 #[repr(transparent)]
10622 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10623 #[doc(hidden)]
10624 pub struct INavigationThemeTransition(::windows::runtime::IInspectable);
10625 unsafe impl ::windows::runtime::Interface for INavigationThemeTransition {
10626     type Vtable = INavigationThemeTransition_abi;
10627     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2285077644, 20151, 16882, [135, 153, 158, 239, 10, 33, 59, 115]);
10628 }
10629 #[repr(C)]
10630 #[doc(hidden)]
10631 pub struct INavigationThemeTransition_abi(
10632     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10633     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10634     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10635     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10636     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10637     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10638     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10639     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10640 );
10641 #[repr(transparent)]
10642 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10643 #[doc(hidden)]
10644 pub struct INavigationThemeTransitionStatics(::windows::runtime::IInspectable);
10645 unsafe impl ::windows::runtime::Interface for INavigationThemeTransitionStatics {
10646     type Vtable = INavigationThemeTransitionStatics_abi;
10647     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3928950496, 24160, 20366, [188, 175, 67, 20, 135, 162, 148, 171]);
10648 }
10649 #[repr(C)]
10650 #[doc(hidden)]
10651 pub struct INavigationThemeTransitionStatics_abi(
10652     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10653     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10654     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10655     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10656     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10657     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10658     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10659 );
10660 #[repr(transparent)]
10661 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10662 #[doc(hidden)]
10663 pub struct INavigationTransitionInfo(::windows::runtime::IInspectable);
10664 unsafe impl ::windows::runtime::Interface for INavigationTransitionInfo {
10665     type Vtable = INavigationTransitionInfo_abi;
10666     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2846904465, 44618, 17266, [134, 37, 33, 183, 168, 185, 140, 164]);
10667 }
10668 #[repr(C)]
10669 #[doc(hidden)]
10670 pub struct INavigationTransitionInfo_abi(
10671     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10672     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10673     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10674     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10675     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10676     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10677 );
10678 #[repr(transparent)]
10679 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10680 #[doc(hidden)]
10681 pub struct INavigationTransitionInfoFactory(::windows::runtime::IInspectable);
10682 unsafe impl ::windows::runtime::Interface for INavigationTransitionInfoFactory {
10683     type Vtable = INavigationTransitionInfoFactory_abi;
10684     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3992254677, 44899, 20395, [157, 74, 135, 146, 127, 130, 221, 107]);
10685 }
10686 #[repr(C)]
10687 #[doc(hidden)]
10688 pub struct INavigationTransitionInfoFactory_abi(
10689     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10690     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10691     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10692     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10693     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10694     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10695     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baseinterface: ::windows::runtime::RawPtr, innerinterface: *mut ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10696 );
10697 #[repr(transparent)]
10698 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10699 #[doc(hidden)]
10700 pub struct INavigationTransitionInfoOverrides(::windows::runtime::IInspectable);
10701 unsafe impl ::windows::runtime::Interface for INavigationTransitionInfoOverrides {
10702     type Vtable = INavigationTransitionInfoOverrides_abi;
10703     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3645996650, 43472, 19447, [157, 176, 70, 51, 166, 157, 175, 242]);
10704 }
10705 #[repr(C)]
10706 #[doc(hidden)]
10707 pub struct INavigationTransitionInfoOverrides_abi(
10708     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10709     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10710     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10711     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10712     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10713     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10714     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
10715     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, navigationstate: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
10716 );
10717 #[repr(transparent)]
10718 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10719 #[doc(hidden)]
10720 pub struct IObjectAnimationUsingKeyFrames(::windows::runtime::IInspectable);
10721 unsafe impl ::windows::runtime::Interface for IObjectAnimationUsingKeyFrames {
10722     type Vtable = IObjectAnimationUsingKeyFrames_abi;
10723     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(860499346, 46922, 19556, [185, 166, 88, 188, 250, 49, 79, 34]);
10724 }
10725 #[repr(C)]
10726 #[doc(hidden)]
10727 pub struct IObjectAnimationUsingKeyFrames_abi(
10728     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10729     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10730     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10731     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10732     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10733     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10734     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10735     #[cfg(not(feature = "Foundation_Collections"))] usize,
10736     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
10737     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
10738 );
10739 #[repr(transparent)]
10740 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10741 #[doc(hidden)]
10742 pub struct IObjectAnimationUsingKeyFramesStatics(::windows::runtime::IInspectable);
10743 unsafe impl ::windows::runtime::Interface for IObjectAnimationUsingKeyFramesStatics {
10744     type Vtable = IObjectAnimationUsingKeyFramesStatics_abi;
10745     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3950207362, 27377, 18851, [151, 182, 120, 62, 217, 116, 0, 254]);
10746 }
10747 #[repr(C)]
10748 #[doc(hidden)]
10749 pub struct IObjectAnimationUsingKeyFramesStatics_abi(
10750     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10751     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10752     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10753     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10754     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10755     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10756     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10757 );
10758 #[repr(transparent)]
10759 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10760 #[doc(hidden)]
10761 pub struct IObjectKeyFrame(::windows::runtime::IInspectable);
10762 unsafe impl ::windows::runtime::Interface for IObjectKeyFrame {
10763     type Vtable = IObjectKeyFrame_abi;
10764     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2555553873, 34195, 18670, [166, 164, 213, 212, 114, 15, 2, 154]);
10765 }
10766 #[repr(C)]
10767 #[doc(hidden)]
10768 pub struct IObjectKeyFrame_abi(
10769     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10770     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10771     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10772     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10773     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10774     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10775     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10776     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10777     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut KeyTime) -> ::windows::runtime::HRESULT,
10778     #[cfg(not(feature = "Foundation"))] usize,
10779     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: KeyTime) -> ::windows::runtime::HRESULT,
10780     #[cfg(not(feature = "Foundation"))] usize,
10781 );
10782 #[repr(transparent)]
10783 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10784 #[doc(hidden)]
10785 pub struct IObjectKeyFrameFactory(::windows::runtime::IInspectable);
10786 unsafe impl ::windows::runtime::Interface for IObjectKeyFrameFactory {
10787     type Vtable = IObjectKeyFrameFactory_abi;
10788     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(371594302, 15981, 17624, [155, 154, 4, 174, 167, 15, 132, 146]);
10789 }
10790 #[repr(C)]
10791 #[doc(hidden)]
10792 pub struct IObjectKeyFrameFactory_abi(
10793     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10794     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10795     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10796     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10797     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10798     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10799     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baseinterface: ::windows::runtime::RawPtr, innerinterface: *mut ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10800 );
10801 #[repr(transparent)]
10802 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10803 #[doc(hidden)]
10804 pub struct IObjectKeyFrameStatics(::windows::runtime::IInspectable);
10805 unsafe impl ::windows::runtime::Interface for IObjectKeyFrameStatics {
10806     type Vtable = IObjectKeyFrameStatics_abi;
10807     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(752265984, 21273, 17030, [142, 237, 78, 117, 94, 160, 207, 156]);
10808 }
10809 #[repr(C)]
10810 #[doc(hidden)]
10811 pub struct IObjectKeyFrameStatics_abi(
10812     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10813     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10814     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10815     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10816     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10817     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10818     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10819     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10820 );
10821 #[repr(transparent)]
10822 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10823 #[doc(hidden)]
10824 pub struct IPaneThemeTransition(::windows::runtime::IInspectable);
10825 unsafe impl ::windows::runtime::Interface for IPaneThemeTransition {
10826     type Vtable = IPaneThemeTransition_abi;
10827     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1191766926, 19452, 60998, [212, 249, 112, 141, 239, 63, 187, 43]);
10828 }
10829 #[repr(C)]
10830 #[doc(hidden)]
10831 pub struct IPaneThemeTransition_abi(
10832     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10833     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10834     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10835     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10836     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10837     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10838     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Controls::Primitives::EdgeTransitionLocation) -> ::windows::runtime::HRESULT,
10839     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
10840     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Controls::Primitives::EdgeTransitionLocation) -> ::windows::runtime::HRESULT,
10841     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
10842 );
10843 #[repr(transparent)]
10844 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10845 #[doc(hidden)]
10846 pub struct IPaneThemeTransitionStatics(::windows::runtime::IInspectable);
10847 unsafe impl ::windows::runtime::Interface for IPaneThemeTransitionStatics {
10848     type Vtable = IPaneThemeTransitionStatics_abi;
10849     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(829110319, 19428, 6039, [180, 92, 205, 144, 11, 190, 12, 170]);
10850 }
10851 #[repr(C)]
10852 #[doc(hidden)]
10853 pub struct IPaneThemeTransitionStatics_abi(
10854     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10855     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10856     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10857     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10858     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10859     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10860     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10861 );
10862 #[repr(transparent)]
10863 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10864 #[doc(hidden)]
10865 pub struct IPointAnimation(::windows::runtime::IInspectable);
10866 unsafe impl ::windows::runtime::Interface for IPointAnimation {
10867     type Vtable = IPointAnimation_abi;
10868     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(821052178, 30502, 20360, [184, 226, 47, 165, 69, 24, 150, 59]);
10869 }
10870 #[repr(C)]
10871 #[doc(hidden)]
10872 pub struct IPointAnimation_abi(
10873     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10874     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10875     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10876     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10877     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10878     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10879     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10880     #[cfg(not(feature = "Foundation"))] usize,
10881     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10882     #[cfg(not(feature = "Foundation"))] usize,
10883     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10884     #[cfg(not(feature = "Foundation"))] usize,
10885     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10886     #[cfg(not(feature = "Foundation"))] usize,
10887     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10888     #[cfg(not(feature = "Foundation"))] usize,
10889     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10890     #[cfg(not(feature = "Foundation"))] usize,
10891     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10892     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10893     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
10894     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
10895 );
10896 #[repr(transparent)]
10897 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10898 #[doc(hidden)]
10899 pub struct IPointAnimationStatics(::windows::runtime::IInspectable);
10900 unsafe impl ::windows::runtime::Interface for IPointAnimationStatics {
10901     type Vtable = IPointAnimationStatics_abi;
10902     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(798602070, 59191, 16523, [160, 253, 50, 120, 38, 211, 34, 85]);
10903 }
10904 #[repr(C)]
10905 #[doc(hidden)]
10906 pub struct IPointAnimationStatics_abi(
10907     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10908     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10909     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10910     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10911     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10912     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10913     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10914     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10915     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10916     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10917     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10918 );
10919 #[repr(transparent)]
10920 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10921 #[doc(hidden)]
10922 pub struct IPointAnimationUsingKeyFrames(::windows::runtime::IInspectable);
10923 unsafe impl ::windows::runtime::Interface for IPointAnimationUsingKeyFrames {
10924     type Vtable = IPointAnimationUsingKeyFrames_abi;
10925     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2610188146, 17514, 16848, [161, 41, 65, 166, 32, 244, 89, 93]);
10926 }
10927 #[repr(C)]
10928 #[doc(hidden)]
10929 pub struct IPointAnimationUsingKeyFrames_abi(
10930     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10931     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10932     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10933     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10934     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10935     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10936     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10937     #[cfg(not(feature = "Foundation_Collections"))] usize,
10938     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
10939     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
10940 );
10941 #[repr(transparent)]
10942 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10943 #[doc(hidden)]
10944 pub struct IPointAnimationUsingKeyFramesStatics(::windows::runtime::IInspectable);
10945 unsafe impl ::windows::runtime::Interface for IPointAnimationUsingKeyFramesStatics {
10946     type Vtable = IPointAnimationUsingKeyFramesStatics_abi;
10947     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1598377095, 9104, 18154, [186, 167, 118, 47, 75, 195, 13, 4]);
10948 }
10949 #[repr(C)]
10950 #[doc(hidden)]
10951 pub struct IPointAnimationUsingKeyFramesStatics_abi(
10952     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10953     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10954     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10955     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10956     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10957     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10958     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10959 );
10960 #[repr(transparent)]
10961 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10962 #[doc(hidden)]
10963 pub struct IPointKeyFrame(::windows::runtime::IInspectable);
10964 unsafe impl ::windows::runtime::Interface for IPointKeyFrame {
10965     type Vtable = IPointKeyFrame_abi;
10966     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4241001729, 32642, 19886, [128, 38, 123, 126, 8, 104, 120, 179]);
10967 }
10968 #[repr(C)]
10969 #[doc(hidden)]
10970 pub struct IPointKeyFrame_abi(
10971     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10972     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10973     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10974     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
10975     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10976     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
10977     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::super::super::Foundation::Point) -> ::windows::runtime::HRESULT,
10978     #[cfg(not(feature = "Foundation"))] usize,
10979     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::super::super::Foundation::Point) -> ::windows::runtime::HRESULT,
10980     #[cfg(not(feature = "Foundation"))] usize,
10981     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut KeyTime) -> ::windows::runtime::HRESULT,
10982     #[cfg(not(feature = "Foundation"))] usize,
10983     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: KeyTime) -> ::windows::runtime::HRESULT,
10984     #[cfg(not(feature = "Foundation"))] usize,
10985 );
10986 #[repr(transparent)]
10987 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
10988 #[doc(hidden)]
10989 pub struct IPointKeyFrameFactory(::windows::runtime::IInspectable);
10990 unsafe impl ::windows::runtime::Interface for IPointKeyFrameFactory {
10991     type Vtable = IPointKeyFrameFactory_abi;
10992     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3407956959, 17002, 17298, [131, 85, 194, 174, 82, 133, 38, 35]);
10993 }
10994 #[repr(C)]
10995 #[doc(hidden)]
10996 pub struct IPointKeyFrameFactory_abi(
10997     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
10998     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
10999     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11000     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11001     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11002     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11003     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baseinterface: ::windows::runtime::RawPtr, innerinterface: *mut ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11004 );
11005 #[repr(transparent)]
11006 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11007 #[doc(hidden)]
11008 pub struct IPointKeyFrameStatics(::windows::runtime::IInspectable);
11009 unsafe impl ::windows::runtime::Interface for IPointKeyFrameStatics {
11010     type Vtable = IPointKeyFrameStatics_abi;
11011     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2513378087, 31077, 19436, [185, 251, 251, 233, 75, 101, 81, 142]);
11012 }
11013 #[repr(C)]
11014 #[doc(hidden)]
11015 pub struct IPointKeyFrameStatics_abi(
11016     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11017     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11018     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11019     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11020     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11021     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11022     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11023     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11024 );
11025 #[repr(transparent)]
11026 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11027 #[doc(hidden)]
11028 pub struct IPointerDownThemeAnimation(::windows::runtime::IInspectable);
11029 unsafe impl ::windows::runtime::Interface for IPointerDownThemeAnimation {
11030     type Vtable = IPointerDownThemeAnimation_abi;
11031     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3046011214, 50333, 18312, [162, 51, 10, 232, 93, 153, 221, 90]);
11032 }
11033 #[repr(C)]
11034 #[doc(hidden)]
11035 pub struct IPointerDownThemeAnimation_abi(
11036     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11037     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11038     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11039     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11040     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11041     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11042     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11043     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11044 );
11045 #[repr(transparent)]
11046 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11047 #[doc(hidden)]
11048 pub struct IPointerDownThemeAnimationStatics(::windows::runtime::IInspectable);
11049 unsafe impl ::windows::runtime::Interface for IPointerDownThemeAnimationStatics {
11050     type Vtable = IPointerDownThemeAnimationStatics_abi;
11051     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1671940987, 27974, 17556, [185, 74, 231, 47, 59, 73, 42, 97]);
11052 }
11053 #[repr(C)]
11054 #[doc(hidden)]
11055 pub struct IPointerDownThemeAnimationStatics_abi(
11056     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11057     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11058     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11059     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11060     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11061     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11062     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11063 );
11064 #[repr(transparent)]
11065 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11066 #[doc(hidden)]
11067 pub struct IPointerUpThemeAnimation(::windows::runtime::IInspectable);
11068 unsafe impl ::windows::runtime::Interface for IPointerUpThemeAnimation {
11069     type Vtable = IPointerUpThemeAnimation_abi;
11070     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3924414589, 25408, 18472, [173, 18, 105, 6, 148, 185, 145, 11]);
11071 }
11072 #[repr(C)]
11073 #[doc(hidden)]
11074 pub struct IPointerUpThemeAnimation_abi(
11075     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11076     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11077     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11078     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11079     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11080     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11081     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11082     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11083 );
11084 #[repr(transparent)]
11085 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11086 #[doc(hidden)]
11087 pub struct IPointerUpThemeAnimationStatics(::windows::runtime::IInspectable);
11088 unsafe impl ::windows::runtime::Interface for IPointerUpThemeAnimationStatics {
11089     type Vtable = IPointerUpThemeAnimationStatics_abi;
11090     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2086768540, 31122, 16697, [139, 252, 8, 131, 185, 114, 122, 126]);
11091 }
11092 #[repr(C)]
11093 #[doc(hidden)]
11094 pub struct IPointerUpThemeAnimationStatics_abi(
11095     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11096     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11097     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11098     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11099     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11100     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11101     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11102 );
11103 #[repr(transparent)]
11104 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11105 #[doc(hidden)]
11106 pub struct IPopInThemeAnimation(::windows::runtime::IInspectable);
11107 unsafe impl ::windows::runtime::Interface for IPopInThemeAnimation {
11108     type Vtable = IPopInThemeAnimation_abi;
11109     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(426326209, 7175, 19496, [136, 71, 249, 240, 85, 179, 40, 85]);
11110 }
11111 #[repr(C)]
11112 #[doc(hidden)]
11113 pub struct IPopInThemeAnimation_abi(
11114     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11115     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11116     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11117     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11118     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11119     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11120     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11121     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11122     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11123     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11124     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11125     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11126 );
11127 #[repr(transparent)]
11128 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11129 #[doc(hidden)]
11130 pub struct IPopInThemeAnimationStatics(::windows::runtime::IInspectable);
11131 unsafe impl ::windows::runtime::Interface for IPopInThemeAnimationStatics {
11132     type Vtable = IPopInThemeAnimationStatics_abi;
11133     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4020935123, 8586, 18177, [151, 127, 241, 191, 174, 139, 166, 73]);
11134 }
11135 #[repr(C)]
11136 #[doc(hidden)]
11137 pub struct IPopInThemeAnimationStatics_abi(
11138     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11139     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11140     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11141     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11142     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11143     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11144     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11145     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11146     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11147 );
11148 #[repr(transparent)]
11149 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11150 #[doc(hidden)]
11151 pub struct IPopOutThemeAnimation(::windows::runtime::IInspectable);
11152 unsafe impl ::windows::runtime::Interface for IPopOutThemeAnimation {
11153     type Vtable = IPopOutThemeAnimation_abi;
11154     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1200008009, 3656, 20097, [162, 229, 204, 90, 161, 158, 72, 211]);
11155 }
11156 #[repr(C)]
11157 #[doc(hidden)]
11158 pub struct IPopOutThemeAnimation_abi(
11159     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11160     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11161     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11162     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11163     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11164     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11165     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11166     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11167 );
11168 #[repr(transparent)]
11169 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11170 #[doc(hidden)]
11171 pub struct IPopOutThemeAnimationStatics(::windows::runtime::IInspectable);
11172 unsafe impl ::windows::runtime::Interface for IPopOutThemeAnimationStatics {
11173     type Vtable = IPopOutThemeAnimationStatics_abi;
11174     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(491334665, 961, 17552, [153, 220, 144, 159, 234, 179, 87, 251]);
11175 }
11176 #[repr(C)]
11177 #[doc(hidden)]
11178 pub struct IPopOutThemeAnimationStatics_abi(
11179     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11180     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11181     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11182     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11183     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11184     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11185     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11186 );
11187 #[repr(transparent)]
11188 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11189 #[doc(hidden)]
11190 pub struct IPopupThemeTransition(::windows::runtime::IInspectable);
11191 unsafe impl ::windows::runtime::Interface for IPopupThemeTransition {
11192     type Vtable = IPopupThemeTransition_abi;
11193     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1199846738, 17027, 21598, [199, 145, 38, 141, 202, 34, 206, 75]);
11194 }
11195 #[repr(C)]
11196 #[doc(hidden)]
11197 pub struct IPopupThemeTransition_abi(
11198     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11199     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11200     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11201     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11202     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11203     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11204     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11205     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11206     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11207     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11208 );
11209 #[repr(transparent)]
11210 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11211 #[doc(hidden)]
11212 pub struct IPopupThemeTransitionStatics(::windows::runtime::IInspectable);
11213 unsafe impl ::windows::runtime::Interface for IPopupThemeTransitionStatics {
11214     type Vtable = IPopupThemeTransitionStatics_abi;
11215     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3852559374, 18701, 5381, [159, 107, 143, 175, 192, 68, 222, 197]);
11216 }
11217 #[repr(C)]
11218 #[doc(hidden)]
11219 pub struct IPopupThemeTransitionStatics_abi(
11220     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11221     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11222     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11223     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11224     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11225     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11226     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11227     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11228 );
11229 #[repr(transparent)]
11230 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11231 #[doc(hidden)]
11232 pub struct IPowerEase(::windows::runtime::IInspectable);
11233 unsafe impl ::windows::runtime::Interface for IPowerEase {
11234     type Vtable = IPowerEase_abi;
11235     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1774716281, 61151, 16475, [134, 128, 217, 96, 104, 128, 201, 55]);
11236 }
11237 #[repr(C)]
11238 #[doc(hidden)]
11239 pub struct IPowerEase_abi(
11240     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11241     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11242     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11243     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11244     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11245     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11246     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11247     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11248 );
11249 #[repr(transparent)]
11250 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11251 #[doc(hidden)]
11252 pub struct IPowerEaseStatics(::windows::runtime::IInspectable);
11253 unsafe impl ::windows::runtime::Interface for IPowerEaseStatics {
11254     type Vtable = IPowerEaseStatics_abi;
11255     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2778026243, 37282, 17932, [156, 65, 210, 143, 106, 147, 155, 218]);
11256 }
11257 #[repr(C)]
11258 #[doc(hidden)]
11259 pub struct IPowerEaseStatics_abi(
11260     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11261     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11262     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11263     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11264     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11265     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11266     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11267 );
11268 #[repr(transparent)]
11269 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11270 #[doc(hidden)]
11271 pub struct IQuadraticEase(::windows::runtime::IInspectable);
11272 unsafe impl ::windows::runtime::Interface for IQuadraticEase {
11273     type Vtable = IQuadraticEase_abi;
11274     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3780185745, 61293, 17648, [128, 61, 104, 209, 109, 224, 221, 252]);
11275 }
11276 #[repr(C)]
11277 #[doc(hidden)]
11278 pub struct IQuadraticEase_abi(
11279     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11280     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11281     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11282     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11283     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11284     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11285 );
11286 #[repr(transparent)]
11287 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11288 #[doc(hidden)]
11289 pub struct IQuarticEase(::windows::runtime::IInspectable);
11290 unsafe impl ::windows::runtime::Interface for IQuarticEase {
11291     type Vtable = IQuarticEase_abi;
11292     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3899230228, 65090, 18949, [181, 184, 8, 31, 65, 21, 120, 21]);
11293 }
11294 #[repr(C)]
11295 #[doc(hidden)]
11296 pub struct IQuarticEase_abi(
11297     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11298     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11299     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11300     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11301     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11302     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11303 );
11304 #[repr(transparent)]
11305 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11306 #[doc(hidden)]
11307 pub struct IQuinticEase(::windows::runtime::IInspectable);
11308 unsafe impl ::windows::runtime::Interface for IQuinticEase {
11309     type Vtable = IQuinticEase_abi;
11310     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2465102139, 15433, 16648, [170, 17, 171, 120, 102, 3, 218, 33]);
11311 }
11312 #[repr(C)]
11313 #[doc(hidden)]
11314 pub struct IQuinticEase_abi(
11315     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11316     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11317     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11318     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11319     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11320     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11321 );
11322 #[repr(transparent)]
11323 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11324 #[doc(hidden)]
11325 pub struct IReorderThemeTransition(::windows::runtime::IInspectable);
11326 unsafe impl ::windows::runtime::Interface for IReorderThemeTransition {
11327     type Vtable = IReorderThemeTransition_abi;
11328     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4060503148, 53330, 19153, [131, 98, 183, 27, 54, 223, 116, 151]);
11329 }
11330 #[repr(C)]
11331 #[doc(hidden)]
11332 pub struct IReorderThemeTransition_abi(
11333     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11334     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11335     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11336     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11337     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11338     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11339 );
11340 #[repr(transparent)]
11341 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11342 #[doc(hidden)]
11343 pub struct IRepeatBehaviorHelper(::windows::runtime::IInspectable);
11344 unsafe impl ::windows::runtime::Interface for IRepeatBehaviorHelper {
11345     type Vtable = IRepeatBehaviorHelper_abi;
11346     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1751362418, 18839, 18425, [135, 173, 55, 239, 183, 89, 147, 234]);
11347 }
11348 #[repr(C)]
11349 #[doc(hidden)]
11350 pub struct IRepeatBehaviorHelper_abi(
11351     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11352     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11353     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11354     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11355     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11356     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11357 );
11358 #[repr(transparent)]
11359 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11360 #[doc(hidden)]
11361 pub struct IRepeatBehaviorHelperStatics(::windows::runtime::IInspectable);
11362 unsafe impl ::windows::runtime::Interface for IRepeatBehaviorHelperStatics {
11363     type Vtable = IRepeatBehaviorHelperStatics_abi;
11364     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2054770739, 31219, 19929, [178, 103, 156, 245, 15, 181, 31, 132]);
11365 }
11366 #[repr(C)]
11367 #[doc(hidden)]
11368 pub struct IRepeatBehaviorHelperStatics_abi(
11369     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11370     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11371     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11372     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11373     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11374     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11375     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut RepeatBehavior) -> ::windows::runtime::HRESULT,
11376     #[cfg(not(feature = "Foundation"))] usize,
11377     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: f64, result__: *mut RepeatBehavior) -> ::windows::runtime::HRESULT,
11378     #[cfg(not(feature = "Foundation"))] usize,
11379     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, duration: super::super::super::super::Foundation::TimeSpan, result__: *mut RepeatBehavior) -> ::windows::runtime::HRESULT,
11380     #[cfg(not(feature = "Foundation"))] usize,
11381     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, target: RepeatBehavior, result__: *mut bool) -> ::windows::runtime::HRESULT,
11382     #[cfg(not(feature = "Foundation"))] usize,
11383     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, target: RepeatBehavior, result__: *mut bool) -> ::windows::runtime::HRESULT,
11384     #[cfg(not(feature = "Foundation"))] usize,
11385     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, target: RepeatBehavior, value: RepeatBehavior, result__: *mut bool) -> ::windows::runtime::HRESULT,
11386     #[cfg(not(feature = "Foundation"))] usize,
11387 );
11388 #[repr(transparent)]
11389 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11390 #[doc(hidden)]
11391 pub struct IRepositionThemeAnimation(::windows::runtime::IInspectable);
11392 unsafe impl ::windows::runtime::Interface for IRepositionThemeAnimation {
11393     type Vtable = IRepositionThemeAnimation_abi;
11394     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3973719272, 35141, 18761, [161, 191, 98, 16, 153, 101, 167, 233]);
11395 }
11396 #[repr(C)]
11397 #[doc(hidden)]
11398 pub struct IRepositionThemeAnimation_abi(
11399     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11400     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11401     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11402     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11403     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11404     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11405     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11406     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11407     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11408     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11409     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11410     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11411 );
11412 #[repr(transparent)]
11413 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11414 #[doc(hidden)]
11415 pub struct IRepositionThemeAnimationStatics(::windows::runtime::IInspectable);
11416 unsafe impl ::windows::runtime::Interface for IRepositionThemeAnimationStatics {
11417     type Vtable = IRepositionThemeAnimationStatics_abi;
11418     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1301459377, 34315, 19449, [165, 157, 30, 177, 204, 190, 143, 224]);
11419 }
11420 #[repr(C)]
11421 #[doc(hidden)]
11422 pub struct IRepositionThemeAnimationStatics_abi(
11423     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11424     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11425     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11426     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11427     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11428     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11429     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11430     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11431     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11432 );
11433 #[repr(transparent)]
11434 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11435 #[doc(hidden)]
11436 pub struct IRepositionThemeTransition(::windows::runtime::IInspectable);
11437 unsafe impl ::windows::runtime::Interface for IRepositionThemeTransition {
11438     type Vtable = IRepositionThemeTransition_abi;
11439     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2285017986, 39155, 17754, [172, 83, 46, 112, 131, 182, 226, 44]);
11440 }
11441 #[repr(C)]
11442 #[doc(hidden)]
11443 pub struct IRepositionThemeTransition_abi(
11444     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11445     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11446     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11447     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11448     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11449     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11450 );
11451 #[repr(transparent)]
11452 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11453 #[doc(hidden)]
11454 pub struct IRepositionThemeTransition2(::windows::runtime::IInspectable);
11455 unsafe impl ::windows::runtime::Interface for IRepositionThemeTransition2 {
11456     type Vtable = IRepositionThemeTransition2_abi;
11457     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3468683364, 56298, 17412, [142, 110, 222, 85, 173, 167, 82, 57]);
11458 }
11459 #[repr(C)]
11460 #[doc(hidden)]
11461 pub struct IRepositionThemeTransition2_abi(
11462     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11463     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11464     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11465     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11466     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11467     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11468     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
11469     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
11470 );
11471 #[repr(transparent)]
11472 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11473 #[doc(hidden)]
11474 pub struct IRepositionThemeTransitionStatics2(::windows::runtime::IInspectable);
11475 unsafe impl ::windows::runtime::Interface for IRepositionThemeTransitionStatics2 {
11476     type Vtable = IRepositionThemeTransitionStatics2_abi;
11477     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2453727536, 2585, 18059, [140, 42, 104, 250, 180, 80, 0, 39]);
11478 }
11479 #[repr(C)]
11480 #[doc(hidden)]
11481 pub struct IRepositionThemeTransitionStatics2_abi(
11482     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11483     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11484     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11485     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11486     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11487     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11488     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11489 );
11490 #[repr(transparent)]
11491 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11492 #[doc(hidden)]
11493 pub struct ISineEase(::windows::runtime::IInspectable);
11494 unsafe impl ::windows::runtime::Interface for ISineEase {
11495     type Vtable = ISineEase_abi;
11496     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2839030114, 8971, 18906, [158, 13, 102, 73, 135, 137, 35, 67]);
11497 }
11498 #[repr(C)]
11499 #[doc(hidden)]
11500 pub struct ISineEase_abi(
11501     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11502     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11503     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11504     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11505     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11506     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11507 );
11508 #[repr(transparent)]
11509 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11510 #[doc(hidden)]
11511 pub struct ISlideNavigationTransitionInfo(::windows::runtime::IInspectable);
11512 unsafe impl ::windows::runtime::Interface for ISlideNavigationTransitionInfo {
11513     type Vtable = ISlideNavigationTransitionInfo_abi;
11514     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3601636727, 11779, 16479, [128, 237, 230, 43, 238, 243, 102, 143]);
11515 }
11516 #[repr(C)]
11517 #[doc(hidden)]
11518 pub struct ISlideNavigationTransitionInfo_abi(
11519     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11520     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11521     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11522     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11523     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11524     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11525 );
11526 #[repr(transparent)]
11527 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11528 #[doc(hidden)]
11529 pub struct ISlideNavigationTransitionInfo2(::windows::runtime::IInspectable);
11530 unsafe impl ::windows::runtime::Interface for ISlideNavigationTransitionInfo2 {
11531     type Vtable = ISlideNavigationTransitionInfo2_abi;
11532     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2430785984, 23681, 20481, [128, 19, 79, 191, 234, 75, 241, 57]);
11533 }
11534 #[repr(C)]
11535 #[doc(hidden)]
11536 pub struct ISlideNavigationTransitionInfo2_abi(
11537     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11538     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11539     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11540     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11541     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11542     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11543     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut SlideNavigationTransitionEffect) -> ::windows::runtime::HRESULT,
11544     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: SlideNavigationTransitionEffect) -> ::windows::runtime::HRESULT,
11545 );
11546 #[repr(transparent)]
11547 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11548 #[doc(hidden)]
11549 pub struct ISlideNavigationTransitionInfoStatics2(::windows::runtime::IInspectable);
11550 unsafe impl ::windows::runtime::Interface for ISlideNavigationTransitionInfoStatics2 {
11551     type Vtable = ISlideNavigationTransitionInfoStatics2_abi;
11552     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2324044714, 38938, 23246, [159, 133, 203, 127, 222, 100, 138, 103]);
11553 }
11554 #[repr(C)]
11555 #[doc(hidden)]
11556 pub struct ISlideNavigationTransitionInfoStatics2_abi(
11557     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11558     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11559     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11560     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11561     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11562     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11563     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11564 );
11565 #[repr(transparent)]
11566 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11567 #[doc(hidden)]
11568 pub struct ISplineColorKeyFrame(::windows::runtime::IInspectable);
11569 unsafe impl ::windows::runtime::Interface for ISplineColorKeyFrame {
11570     type Vtable = ISplineColorKeyFrame_abi;
11571     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(441080129, 8160, 18234, [142, 254, 67, 22, 216, 200, 98, 41]);
11572 }
11573 #[repr(C)]
11574 #[doc(hidden)]
11575 pub struct ISplineColorKeyFrame_abi(
11576     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11577     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11578     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11579     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11580     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11581     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11582     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11583     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11584 );
11585 #[repr(transparent)]
11586 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11587 #[doc(hidden)]
11588 pub struct ISplineColorKeyFrameStatics(::windows::runtime::IInspectable);
11589 unsafe impl ::windows::runtime::Interface for ISplineColorKeyFrameStatics {
11590     type Vtable = ISplineColorKeyFrameStatics_abi;
11591     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1641142679, 34185, 20271, [143, 187, 125, 3, 237, 201, 141, 211]);
11592 }
11593 #[repr(C)]
11594 #[doc(hidden)]
11595 pub struct ISplineColorKeyFrameStatics_abi(
11596     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11597     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11598     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11599     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11600     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11601     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11602     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11603 );
11604 #[repr(transparent)]
11605 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11606 #[doc(hidden)]
11607 pub struct ISplineDoubleKeyFrame(::windows::runtime::IInspectable);
11608 unsafe impl ::windows::runtime::Interface for ISplineDoubleKeyFrame {
11609     type Vtable = ISplineDoubleKeyFrame_abi;
11610     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(14101816, 27435, 18499, [131, 142, 200, 177, 21, 238, 200, 1]);
11611 }
11612 #[repr(C)]
11613 #[doc(hidden)]
11614 pub struct ISplineDoubleKeyFrame_abi(
11615     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11616     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11617     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11618     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11619     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11620     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11621     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11622     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11623 );
11624 #[repr(transparent)]
11625 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11626 #[doc(hidden)]
11627 pub struct ISplineDoubleKeyFrameStatics(::windows::runtime::IInspectable);
11628 unsafe impl ::windows::runtime::Interface for ISplineDoubleKeyFrameStatics {
11629     type Vtable = ISplineDoubleKeyFrameStatics_abi;
11630     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(101355516, 38751, 20046, [158, 199, 19, 197, 174, 224, 32, 98]);
11631 }
11632 #[repr(C)]
11633 #[doc(hidden)]
11634 pub struct ISplineDoubleKeyFrameStatics_abi(
11635     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11636     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11637     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11638     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11639     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11640     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11641     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11642 );
11643 #[repr(transparent)]
11644 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11645 #[doc(hidden)]
11646 pub struct ISplinePointKeyFrame(::windows::runtime::IInspectable);
11647 unsafe impl ::windows::runtime::Interface for ISplinePointKeyFrame {
11648     type Vtable = ISplinePointKeyFrame_abi;
11649     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(253358854, 28726, 18767, [188, 60, 120, 13, 240, 204, 82, 74]);
11650 }
11651 #[repr(C)]
11652 #[doc(hidden)]
11653 pub struct ISplinePointKeyFrame_abi(
11654     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11655     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11656     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11657     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11658     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11659     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11660     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11661     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11662 );
11663 #[repr(transparent)]
11664 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11665 #[doc(hidden)]
11666 pub struct ISplinePointKeyFrameStatics(::windows::runtime::IInspectable);
11667 unsafe impl ::windows::runtime::Interface for ISplinePointKeyFrameStatics {
11668     type Vtable = ISplinePointKeyFrameStatics_abi;
11669     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3917099714, 2682, 18278, [149, 203, 13, 105, 38, 17, 203, 76]);
11670 }
11671 #[repr(C)]
11672 #[doc(hidden)]
11673 pub struct ISplinePointKeyFrameStatics_abi(
11674     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11675     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11676     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11677     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11678     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11679     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11680     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11681 );
11682 #[repr(transparent)]
11683 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11684 #[doc(hidden)]
11685 pub struct ISplitCloseThemeAnimation(::windows::runtime::IInspectable);
11686 unsafe impl ::windows::runtime::Interface for ISplitCloseThemeAnimation {
11687     type Vtable = ISplitCloseThemeAnimation_abi;
11688     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1333368088, 65337, 20112, [187, 116, 42, 189, 86, 2, 116, 2]);
11689 }
11690 #[repr(C)]
11691 #[doc(hidden)]
11692 pub struct ISplitCloseThemeAnimation_abi(
11693     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11694     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11695     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11696     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11697     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11698     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11699     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11700     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11701     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11702     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11703     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11704     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11705     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11706     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11707     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11708     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11709     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11710     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11711     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11712     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11713     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11714     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11715     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11716     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11717     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Controls::Primitives::AnimationDirection) -> ::windows::runtime::HRESULT,
11718     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
11719     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Controls::Primitives::AnimationDirection) -> ::windows::runtime::HRESULT,
11720     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
11721     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11722     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11723 );
11724 #[repr(transparent)]
11725 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11726 #[doc(hidden)]
11727 pub struct ISplitCloseThemeAnimationStatics(::windows::runtime::IInspectable);
11728 unsafe impl ::windows::runtime::Interface for ISplitCloseThemeAnimationStatics {
11729     type Vtable = ISplitCloseThemeAnimationStatics_abi;
11730     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2057915881, 52379, 20112, [161, 26, 0, 80, 162, 33, 106, 158]);
11731 }
11732 #[repr(C)]
11733 #[doc(hidden)]
11734 pub struct ISplitCloseThemeAnimationStatics_abi(
11735     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11736     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11737     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11738     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11739     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11740     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11741     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11742     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11743     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11744     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11745     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11746     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11747     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11748     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11749     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11750     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11751     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11752 );
11753 #[repr(transparent)]
11754 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11755 #[doc(hidden)]
11756 pub struct ISplitOpenThemeAnimation(::windows::runtime::IInspectable);
11757 unsafe impl ::windows::runtime::Interface for ISplitOpenThemeAnimation {
11758     type Vtable = ISplitOpenThemeAnimation_abi;
11759     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2019547050, 21590, 17977, [143, 210, 38, 186, 230, 165, 255, 228]);
11760 }
11761 #[repr(C)]
11762 #[doc(hidden)]
11763 pub struct ISplitOpenThemeAnimation_abi(
11764     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11765     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11766     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11767     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11768     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11769     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11770     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11771     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11772     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11773     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11774     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11775     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11776     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11777     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11778     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11779     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11780     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11781     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11782     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11783     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11784     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11785     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11786     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11787     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11788     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Controls::Primitives::AnimationDirection) -> ::windows::runtime::HRESULT,
11789     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
11790     #[cfg(feature = "UI_Xaml_Controls_Primitives")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Controls::Primitives::AnimationDirection) -> ::windows::runtime::HRESULT,
11791     #[cfg(not(feature = "UI_Xaml_Controls_Primitives"))] usize,
11792     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11793     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11794 );
11795 #[repr(transparent)]
11796 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11797 #[doc(hidden)]
11798 pub struct ISplitOpenThemeAnimationStatics(::windows::runtime::IInspectable);
11799 unsafe impl ::windows::runtime::Interface for ISplitOpenThemeAnimationStatics {
11800     type Vtable = ISplitOpenThemeAnimationStatics_abi;
11801     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2370632329, 14993, 17805, [176, 251, 76, 173, 98, 92, 191, 141]);
11802 }
11803 #[repr(C)]
11804 #[doc(hidden)]
11805 pub struct ISplitOpenThemeAnimationStatics_abi(
11806     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11807     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11808     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11809     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11810     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11811     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11812     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11813     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11814     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11815     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11816     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11817     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11818     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11819     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11820     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11821     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11822     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11823 );
11824 #[repr(transparent)]
11825 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11826 #[doc(hidden)]
11827 pub struct IStoryboard(::windows::runtime::IInspectable);
11828 unsafe impl ::windows::runtime::Interface for IStoryboard {
11829     type Vtable = IStoryboard_abi;
11830     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3562806894, 13716, 17934, [152, 26, 50, 39, 27, 211, 170, 6]);
11831 }
11832 #[repr(C)]
11833 #[doc(hidden)]
11834 pub struct IStoryboard_abi(
11835     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11836     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11837     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11838     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11839     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11840     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11841     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11842     #[cfg(not(feature = "Foundation_Collections"))] usize,
11843     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, offset: super::super::super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
11844     #[cfg(not(feature = "Foundation"))] usize,
11845     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11846     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11847     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11848     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11849     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ClockState) -> ::windows::runtime::HRESULT,
11850     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
11851     #[cfg(not(feature = "Foundation"))] usize,
11852     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, offset: super::super::super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
11853     #[cfg(not(feature = "Foundation"))] usize,
11854     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11855 );
11856 #[repr(transparent)]
11857 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11858 #[doc(hidden)]
11859 pub struct IStoryboardStatics(::windows::runtime::IInspectable);
11860 unsafe impl ::windows::runtime::Interface for IStoryboardStatics {
11861     type Vtable = IStoryboardStatics_abi;
11862     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3626960856, 29653, 17273, [189, 72, 126, 5, 24, 74, 139, 173]);
11863 }
11864 #[repr(C)]
11865 #[doc(hidden)]
11866 pub struct IStoryboardStatics_abi(
11867     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11868     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11869     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11870     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11871     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11872     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11873     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11874     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11875     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, path: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11876     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11877     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11878     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, element: ::windows::runtime::RawPtr, name: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11879     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, timeline: ::windows::runtime::RawPtr, target: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11880 );
11881 #[repr(transparent)]
11882 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11883 #[doc(hidden)]
11884 pub struct ISuppressNavigationTransitionInfo(::windows::runtime::IInspectable);
11885 unsafe impl ::windows::runtime::Interface for ISuppressNavigationTransitionInfo {
11886     type Vtable = ISuppressNavigationTransitionInfo_abi;
11887     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(609057548, 45495, 18545, [157, 62, 213, 98, 3, 163, 165, 180]);
11888 }
11889 #[repr(C)]
11890 #[doc(hidden)]
11891 pub struct ISuppressNavigationTransitionInfo_abi(
11892     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11893     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11894     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11895     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11896     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11897     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11898 );
11899 #[repr(transparent)]
11900 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11901 #[doc(hidden)]
11902 pub struct ISwipeBackThemeAnimation(::windows::runtime::IInspectable);
11903 unsafe impl ::windows::runtime::Interface for ISwipeBackThemeAnimation {
11904     type Vtable = ISwipeBackThemeAnimation_abi;
11905     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2743747092, 3018, 19757, [149, 247, 206, 186, 87, 251, 175, 96]);
11906 }
11907 #[repr(C)]
11908 #[doc(hidden)]
11909 pub struct ISwipeBackThemeAnimation_abi(
11910     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11911     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11912     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11913     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11914     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11915     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11916     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11917     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11918     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11919     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11920     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11921     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11922 );
11923 #[repr(transparent)]
11924 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11925 #[doc(hidden)]
11926 pub struct ISwipeBackThemeAnimationStatics(::windows::runtime::IInspectable);
11927 unsafe impl ::windows::runtime::Interface for ISwipeBackThemeAnimationStatics {
11928     type Vtable = ISwipeBackThemeAnimationStatics_abi;
11929     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1765749183, 19878, 18058, [140, 224, 153, 108, 154, 173, 66, 224]);
11930 }
11931 #[repr(C)]
11932 #[doc(hidden)]
11933 pub struct ISwipeBackThemeAnimationStatics_abi(
11934     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11935     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11936     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11937     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11938     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11939     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11940     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11941     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11942     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11943 );
11944 #[repr(transparent)]
11945 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11946 #[doc(hidden)]
11947 pub struct ISwipeHintThemeAnimation(::windows::runtime::IInspectable);
11948 unsafe impl ::windows::runtime::Interface for ISwipeHintThemeAnimation {
11949     type Vtable = ISwipeHintThemeAnimation_abi;
11950     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3452987328, 22542, 20032, [190, 152, 242, 2, 211, 216, 67, 101]);
11951 }
11952 #[repr(C)]
11953 #[doc(hidden)]
11954 pub struct ISwipeHintThemeAnimation_abi(
11955     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11956     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11957     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11958     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11959     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11960     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11961     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11962     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
11963     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11964     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11965     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
11966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
11967 );
11968 #[repr(transparent)]
11969 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11970 #[doc(hidden)]
11971 pub struct ISwipeHintThemeAnimationStatics(::windows::runtime::IInspectable);
11972 unsafe impl ::windows::runtime::Interface for ISwipeHintThemeAnimationStatics {
11973     type Vtable = ISwipeHintThemeAnimationStatics_abi;
11974     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(601234007, 37141, 19811, [176, 74, 184, 159, 28, 116, 77, 192]);
11975 }
11976 #[repr(C)]
11977 #[doc(hidden)]
11978 pub struct ISwipeHintThemeAnimationStatics_abi(
11979     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11980     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11981     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
11982     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
11983     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11984     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
11985     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11986     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11987     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
11988 );
11989 #[repr(transparent)]
11990 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
11991 #[doc(hidden)]
11992 pub struct ITimeline(::windows::runtime::IInspectable);
11993 unsafe impl ::windows::runtime::Interface for ITimeline {
11994     type Vtable = ITimeline_abi;
11995     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(197420508, 48717, 19725, [149, 73, 34, 8, 183, 21, 244, 13]);
11996 }
11997 #[repr(C)]
11998 #[doc(hidden)]
11999 pub struct ITimeline_abi(
12000     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12001     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12002     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12003     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
12004     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12005     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
12006     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
12007     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
12008     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12009     #[cfg(not(feature = "Foundation"))] usize,
12010     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12011     #[cfg(not(feature = "Foundation"))] usize,
12012     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Duration) -> ::windows::runtime::HRESULT,
12013     #[cfg(not(feature = "Foundation"))] usize,
12014     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Duration) -> ::windows::runtime::HRESULT,
12015     #[cfg(not(feature = "Foundation"))] usize,
12016     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut f64) -> ::windows::runtime::HRESULT,
12017     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: f64) -> ::windows::runtime::HRESULT,
12018     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut FillBehavior) -> ::windows::runtime::HRESULT,
12019     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: FillBehavior) -> ::windows::runtime::HRESULT,
12020     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut RepeatBehavior) -> ::windows::runtime::HRESULT,
12021     #[cfg(not(feature = "Foundation"))] usize,
12022     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: RepeatBehavior) -> ::windows::runtime::HRESULT,
12023     #[cfg(not(feature = "Foundation"))] usize,
12024     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
12025     #[cfg(not(feature = "Foundation"))] usize,
12026     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
12027     #[cfg(not(feature = "Foundation"))] usize,
12028 );
12029 #[repr(transparent)]
12030 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12031 #[doc(hidden)]
12032 pub struct ITimelineFactory(::windows::runtime::IInspectable);
12033 unsafe impl ::windows::runtime::Interface for ITimelineFactory {
12034     type Vtable = ITimelineFactory_abi;
12035     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(492223239, 48548, 18315, [138, 218, 235, 4, 213, 128, 205, 94]);
12036 }
12037 #[repr(C)]
12038 #[doc(hidden)]
12039 pub struct ITimelineFactory_abi(
12040     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12041     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12042     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12043     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
12044     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12045     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
12046     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, baseinterface: ::windows::runtime::RawPtr, innerinterface: *mut ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12047 );
12048 #[repr(transparent)]
12049 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12050 #[doc(hidden)]
12051 pub struct ITimelineStatics(::windows::runtime::IInspectable);
12052 unsafe impl ::windows::runtime::Interface for ITimelineStatics {
12053     type Vtable = ITimelineStatics_abi;
12054     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2835541326, 61200, 19823, [154, 64, 147, 203, 136, 149, 244, 229]);
12055 }
12056 #[repr(C)]
12057 #[doc(hidden)]
12058 pub struct ITimelineStatics_abi(
12059     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12060     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12061     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12062     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
12063     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12064     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
12065     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
12066     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
12067     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12068     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12069     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12070     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12071     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12072     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12073 );
12074 #[repr(transparent)]
12075 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12076 #[doc(hidden)]
12077 pub struct ITransition(::windows::runtime::IInspectable);
12078 unsafe impl ::windows::runtime::Interface for ITransition {
12079     type Vtable = ITransition_abi;
12080     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1013415036, 464, 19918, [179, 51, 151, 111, 147, 49, 43, 8]);
12081 }
12082 #[repr(C)]
12083 #[doc(hidden)]
12084 pub struct ITransition_abi(
12085     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12086     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12087     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12088     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
12089     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12090     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
12091 );
12092 #[repr(transparent)]
12093 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12094 #[doc(hidden)]
12095 pub struct ITransitionFactory(::windows::runtime::IInspectable);
12096 unsafe impl ::windows::runtime::Interface for ITransitionFactory {
12097     type Vtable = ITransitionFactory_abi;
12098     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3701125839, 15305, 17578, [179, 252, 136, 58, 131, 35, 58, 44]);
12099 }
12100 #[repr(C)]
12101 #[doc(hidden)]
12102 pub struct ITransitionFactory_abi(
12103     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12104     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12105     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
12106     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
12107     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
12108     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
12109 );
12110 #[repr(transparent)]
12111 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12112 pub struct KeySpline(::windows::runtime::IInspectable);
12113 impl KeySpline {
12114     pub fn new() -> ::windows::runtime::Result<Self> {
12115         Self::IActivationFactory(|f| f.activate_instance::<Self>())
12116     }
12117     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
12118         static mut SHARED: ::windows::runtime::FactoryCache<KeySpline, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
12119         unsafe { SHARED.call(callback) }
12120     }
12121     #[cfg(feature = "Foundation")]
12122     pub fn ControlPoint1(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Point> {
12123         let this = self;
12124         unsafe {
12125             let mut result__: super::super::super::super::Foundation::Point = ::std::mem::zeroed();
12126             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Point>(result__)
12127         }
12128     }
12129     #[cfg(feature = "Foundation")]
12130     pub fn SetControlPoint1<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Point>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12131         let this = self;
12132         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12133     }
12134     #[cfg(feature = "Foundation")]
12135     pub fn ControlPoint2(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Point> {
12136         let this = self;
12137         unsafe {
12138             let mut result__: super::super::super::super::Foundation::Point = ::std::mem::zeroed();
12139             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Point>(result__)
12140         }
12141     }
12142     #[cfg(feature = "Foundation")]
12143     pub fn SetControlPoint2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Point>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12144         let this = self;
12145         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12146     }
12147     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12148         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12149         unsafe {
12150             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12151             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12152         }
12153     }
12154     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
12155         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12156         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
12157     }
12158     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
12159         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12160         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
12161     }
12162     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12163         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12164         unsafe {
12165             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12166             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12167         }
12168     }
12169     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12170         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12171         unsafe {
12172             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12173             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12174         }
12175     }
12176     #[cfg(feature = "UI_Core")]
12177     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
12178         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12179         unsafe {
12180             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12181             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
12182         }
12183     }
12184     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
12185         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12186         unsafe {
12187             let mut result__: i64 = ::std::mem::zeroed();
12188             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
12189         }
12190     }
12191     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
12192         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12193         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
12194     }
12195 }
12196 unsafe impl ::windows::runtime::RuntimeType for KeySpline {
12197     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.KeySpline;{77a163bb-d5ca-4a32-ba0b-7dff988e58a0})");
12198 }
12199 unsafe impl ::windows::runtime::Interface for KeySpline {
12200     type Vtable = IKeySpline_abi;
12201     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2007065531, 54730, 18994, [186, 11, 125, 255, 152, 142, 88, 160]);
12202 }
12203 impl ::windows::runtime::RuntimeName for KeySpline {
12204     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.KeySpline";
12205 }
12206 impl ::std::convert::From<KeySpline> for ::windows::runtime::IUnknown {
12207     fn from(value: KeySpline) -> Self {
12208         unsafe { ::std::mem::transmute(value) }
12209     }
12210 }
12211 impl ::std::convert::From<&KeySpline> for ::windows::runtime::IUnknown {
12212     fn from(value: &KeySpline) -> Self {
12213         ::std::convert::From::from(::std::clone::Clone::clone(value))
12214     }
12215 }
12216 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for KeySpline {
12217     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12218         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12219     }
12220 }
12221 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &KeySpline {
12222     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12223         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12224     }
12225 }
12226 impl ::std::convert::From<KeySpline> for ::windows::runtime::IInspectable {
12227     fn from(value: KeySpline) -> Self {
12228         value.0
12229     }
12230 }
12231 impl ::std::convert::From<&KeySpline> for ::windows::runtime::IInspectable {
12232     fn from(value: &KeySpline) -> Self {
12233         value.0.clone()
12234     }
12235 }
12236 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for KeySpline {
12237     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12238         ::windows::runtime::Param::Owned(self.0)
12239     }
12240 }
12241 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a KeySpline {
12242     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12243         ::windows::runtime::Param::Borrowed(&self.0)
12244     }
12245 }
12246 impl ::std::convert::From<KeySpline> for super::super::DependencyObject {
12247     fn from(value: KeySpline) -> Self {
12248         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
12249     }
12250 }
12251 impl ::std::convert::From<&KeySpline> for super::super::DependencyObject {
12252     fn from(value: &KeySpline) -> Self {
12253         ::windows::runtime::Interface::cast(value).unwrap()
12254     }
12255 }
12256 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for KeySpline {
12257     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
12258         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
12259     }
12260 }
12261 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &KeySpline {
12262     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
12263         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
12264     }
12265 }
12266 unsafe impl ::std::marker::Send for KeySpline {}
12267 unsafe impl ::std::marker::Sync for KeySpline {}
12268 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
12269 #[repr(C)]
12270 #[cfg(feature = "Foundation")]
12271 pub struct KeyTime {
12272     pub TimeSpan: super::super::super::super::Foundation::TimeSpan,
12273 }
12274 #[cfg(feature = "Foundation")]
12275 impl KeyTime {}
12276 #[cfg(feature = "Foundation")]
12277 impl ::std::default::Default for KeyTime {
12278     fn default() -> Self {
12279         unsafe { ::std::mem::zeroed() }
12280     }
12281 }
12282 #[cfg(feature = "Foundation")]
12283 impl ::std::fmt::Debug for KeyTime {
12284     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
12285         fmt.debug_struct("KeyTime").field("TimeSpan", &self.TimeSpan).finish()
12286     }
12287 }
12288 #[cfg(feature = "Foundation")]
12289 impl ::std::cmp::PartialEq for KeyTime {
12290     fn eq(&self, other: &Self) -> bool {
12291         self.TimeSpan == other.TimeSpan
12292     }
12293 }
12294 #[cfg(feature = "Foundation")]
12295 impl ::std::cmp::Eq for KeyTime {}
12296 #[cfg(feature = "Foundation")]
12297 unsafe impl ::windows::runtime::Abi for KeyTime {
12298     type Abi = Self;
12299     type DefaultType = Self;
12300 }
12301 #[cfg(feature = "Foundation")]
12302 unsafe impl ::windows::runtime::RuntimeType for KeyTime {
12303     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"struct(Windows.UI.Xaml.Media.Animation.KeyTime;struct(Windows.Foundation.TimeSpan;i8))");
12304 }
12305 #[repr(transparent)]
12306 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12307 pub struct KeyTimeHelper(::windows::runtime::IInspectable);
12308 impl KeyTimeHelper {
12309     #[cfg(feature = "Foundation")]
12310     pub fn FromTimeSpan<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::TimeSpan>>(timespan: Param0) -> ::windows::runtime::Result<KeyTime> {
12311         Self::IKeyTimeHelperStatics(|this| unsafe {
12312             let mut result__: KeyTime = ::std::mem::zeroed();
12313             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), timespan.into_param().abi(), &mut result__).from_abi::<KeyTime>(result__)
12314         })
12315     }
12316     pub fn IKeyTimeHelperStatics<R, F: FnOnce(&IKeyTimeHelperStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
12317         static mut SHARED: ::windows::runtime::FactoryCache<KeyTimeHelper, IKeyTimeHelperStatics> = ::windows::runtime::FactoryCache::new();
12318         unsafe { SHARED.call(callback) }
12319     }
12320 }
12321 unsafe impl ::windows::runtime::RuntimeType for KeyTimeHelper {
12322     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.KeyTimeHelper;{3643e480-4823-466a-abe5-5e79c8ed77ed})");
12323 }
12324 unsafe impl ::windows::runtime::Interface for KeyTimeHelper {
12325     type Vtable = IKeyTimeHelper_abi;
12326     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(910419072, 18467, 18026, [171, 229, 94, 121, 200, 237, 119, 237]);
12327 }
12328 impl ::windows::runtime::RuntimeName for KeyTimeHelper {
12329     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.KeyTimeHelper";
12330 }
12331 impl ::std::convert::From<KeyTimeHelper> for ::windows::runtime::IUnknown {
12332     fn from(value: KeyTimeHelper) -> Self {
12333         unsafe { ::std::mem::transmute(value) }
12334     }
12335 }
12336 impl ::std::convert::From<&KeyTimeHelper> for ::windows::runtime::IUnknown {
12337     fn from(value: &KeyTimeHelper) -> Self {
12338         ::std::convert::From::from(::std::clone::Clone::clone(value))
12339     }
12340 }
12341 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for KeyTimeHelper {
12342     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12343         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12344     }
12345 }
12346 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &KeyTimeHelper {
12347     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12348         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12349     }
12350 }
12351 impl ::std::convert::From<KeyTimeHelper> for ::windows::runtime::IInspectable {
12352     fn from(value: KeyTimeHelper) -> Self {
12353         value.0
12354     }
12355 }
12356 impl ::std::convert::From<&KeyTimeHelper> for ::windows::runtime::IInspectable {
12357     fn from(value: &KeyTimeHelper) -> Self {
12358         value.0.clone()
12359     }
12360 }
12361 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for KeyTimeHelper {
12362     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12363         ::windows::runtime::Param::Owned(self.0)
12364     }
12365 }
12366 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a KeyTimeHelper {
12367     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12368         ::windows::runtime::Param::Borrowed(&self.0)
12369     }
12370 }
12371 unsafe impl ::std::marker::Send for KeyTimeHelper {}
12372 unsafe impl ::std::marker::Sync for KeyTimeHelper {}
12373 #[repr(transparent)]
12374 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12375 pub struct LinearColorKeyFrame(::windows::runtime::IInspectable);
12376 impl LinearColorKeyFrame {
12377     pub fn new() -> ::windows::runtime::Result<Self> {
12378         Self::IActivationFactory(|f| f.activate_instance::<Self>())
12379     }
12380     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
12381         static mut SHARED: ::windows::runtime::FactoryCache<LinearColorKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
12382         unsafe { SHARED.call(callback) }
12383     }
12384     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12385         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12386         unsafe {
12387             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12388             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12389         }
12390     }
12391     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
12392         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12393         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
12394     }
12395     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
12396         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12397         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
12398     }
12399     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12400         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12401         unsafe {
12402             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12403             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12404         }
12405     }
12406     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12407         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12408         unsafe {
12409             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12410             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12411         }
12412     }
12413     #[cfg(feature = "UI_Core")]
12414     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
12415         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12416         unsafe {
12417             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12418             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
12419         }
12420     }
12421     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
12422         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12423         unsafe {
12424             let mut result__: i64 = ::std::mem::zeroed();
12425             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
12426         }
12427     }
12428     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
12429         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12430         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
12431     }
12432     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::Color> {
12433         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
12434         unsafe {
12435             let mut result__: super::super::super::Color = ::std::mem::zeroed();
12436             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Color>(result__)
12437         }
12438     }
12439     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Color>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12440         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
12441         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12442     }
12443     #[cfg(feature = "Foundation")]
12444     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
12445         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
12446         unsafe {
12447             let mut result__: KeyTime = ::std::mem::zeroed();
12448             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
12449         }
12450     }
12451     #[cfg(feature = "Foundation")]
12452     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12453         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
12454         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12455     }
12456 }
12457 unsafe impl ::windows::runtime::RuntimeType for LinearColorKeyFrame {
12458     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.LinearColorKeyFrame;{66fdb6ef-ac81-4611-b1d2-61f545983f03})");
12459 }
12460 unsafe impl ::windows::runtime::Interface for LinearColorKeyFrame {
12461     type Vtable = ILinearColorKeyFrame_abi;
12462     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1727903471, 44161, 17937, [177, 210, 97, 245, 69, 152, 63, 3]);
12463 }
12464 impl ::windows::runtime::RuntimeName for LinearColorKeyFrame {
12465     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.LinearColorKeyFrame";
12466 }
12467 impl ::std::convert::From<LinearColorKeyFrame> for ::windows::runtime::IUnknown {
12468     fn from(value: LinearColorKeyFrame) -> Self {
12469         unsafe { ::std::mem::transmute(value) }
12470     }
12471 }
12472 impl ::std::convert::From<&LinearColorKeyFrame> for ::windows::runtime::IUnknown {
12473     fn from(value: &LinearColorKeyFrame) -> Self {
12474         ::std::convert::From::from(::std::clone::Clone::clone(value))
12475     }
12476 }
12477 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LinearColorKeyFrame {
12478     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12479         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12480     }
12481 }
12482 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LinearColorKeyFrame {
12483     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12484         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12485     }
12486 }
12487 impl ::std::convert::From<LinearColorKeyFrame> for ::windows::runtime::IInspectable {
12488     fn from(value: LinearColorKeyFrame) -> Self {
12489         value.0
12490     }
12491 }
12492 impl ::std::convert::From<&LinearColorKeyFrame> for ::windows::runtime::IInspectable {
12493     fn from(value: &LinearColorKeyFrame) -> Self {
12494         value.0.clone()
12495     }
12496 }
12497 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LinearColorKeyFrame {
12498     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12499         ::windows::runtime::Param::Owned(self.0)
12500     }
12501 }
12502 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LinearColorKeyFrame {
12503     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12504         ::windows::runtime::Param::Borrowed(&self.0)
12505     }
12506 }
12507 impl ::std::convert::From<LinearColorKeyFrame> for ColorKeyFrame {
12508     fn from(value: LinearColorKeyFrame) -> Self {
12509         ::std::convert::Into::<ColorKeyFrame>::into(&value)
12510     }
12511 }
12512 impl ::std::convert::From<&LinearColorKeyFrame> for ColorKeyFrame {
12513     fn from(value: &LinearColorKeyFrame) -> Self {
12514         ::windows::runtime::Interface::cast(value).unwrap()
12515     }
12516 }
12517 impl<'a> ::windows::runtime::IntoParam<'a, ColorKeyFrame> for LinearColorKeyFrame {
12518     fn into_param(self) -> ::windows::runtime::Param<'a, ColorKeyFrame> {
12519         ::windows::runtime::Param::Owned(::std::convert::Into::<ColorKeyFrame>::into(self))
12520     }
12521 }
12522 impl<'a> ::windows::runtime::IntoParam<'a, ColorKeyFrame> for &LinearColorKeyFrame {
12523     fn into_param(self) -> ::windows::runtime::Param<'a, ColorKeyFrame> {
12524         ::windows::runtime::Param::Owned(::std::convert::Into::<ColorKeyFrame>::into(::std::clone::Clone::clone(self)))
12525     }
12526 }
12527 impl ::std::convert::From<LinearColorKeyFrame> for super::super::DependencyObject {
12528     fn from(value: LinearColorKeyFrame) -> Self {
12529         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
12530     }
12531 }
12532 impl ::std::convert::From<&LinearColorKeyFrame> for super::super::DependencyObject {
12533     fn from(value: &LinearColorKeyFrame) -> Self {
12534         ::windows::runtime::Interface::cast(value).unwrap()
12535     }
12536 }
12537 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for LinearColorKeyFrame {
12538     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
12539         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
12540     }
12541 }
12542 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &LinearColorKeyFrame {
12543     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
12544         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
12545     }
12546 }
12547 unsafe impl ::std::marker::Send for LinearColorKeyFrame {}
12548 unsafe impl ::std::marker::Sync for LinearColorKeyFrame {}
12549 #[repr(transparent)]
12550 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12551 pub struct LinearDoubleKeyFrame(::windows::runtime::IInspectable);
12552 impl LinearDoubleKeyFrame {
12553     pub fn new() -> ::windows::runtime::Result<Self> {
12554         Self::IActivationFactory(|f| f.activate_instance::<Self>())
12555     }
12556     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
12557         static mut SHARED: ::windows::runtime::FactoryCache<LinearDoubleKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
12558         unsafe { SHARED.call(callback) }
12559     }
12560     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12561         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12562         unsafe {
12563             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12564             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12565         }
12566     }
12567     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
12568         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12569         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
12570     }
12571     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
12572         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12573         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
12574     }
12575     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12576         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12577         unsafe {
12578             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12579             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12580         }
12581     }
12582     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12583         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12584         unsafe {
12585             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12586             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12587         }
12588     }
12589     #[cfg(feature = "UI_Core")]
12590     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
12591         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12592         unsafe {
12593             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12594             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
12595         }
12596     }
12597     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
12598         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12599         unsafe {
12600             let mut result__: i64 = ::std::mem::zeroed();
12601             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
12602         }
12603     }
12604     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
12605         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12606         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
12607     }
12608     pub fn Value(&self) -> ::windows::runtime::Result<f64> {
12609         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
12610         unsafe {
12611             let mut result__: f64 = ::std::mem::zeroed();
12612             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
12613         }
12614     }
12615     pub fn SetValue2(&self, value: f64) -> ::windows::runtime::Result<()> {
12616         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
12617         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
12618     }
12619     #[cfg(feature = "Foundation")]
12620     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
12621         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
12622         unsafe {
12623             let mut result__: KeyTime = ::std::mem::zeroed();
12624             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
12625         }
12626     }
12627     #[cfg(feature = "Foundation")]
12628     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12629         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
12630         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12631     }
12632 }
12633 unsafe impl ::windows::runtime::RuntimeType for LinearDoubleKeyFrame {
12634     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.LinearDoubleKeyFrame;{8efdf265-9a7b-431d-8f0c-14c56b5ea4d9})");
12635 }
12636 unsafe impl ::windows::runtime::Interface for LinearDoubleKeyFrame {
12637     type Vtable = ILinearDoubleKeyFrame_abi;
12638     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2399007333, 39547, 17181, [143, 12, 20, 197, 107, 94, 164, 217]);
12639 }
12640 impl ::windows::runtime::RuntimeName for LinearDoubleKeyFrame {
12641     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.LinearDoubleKeyFrame";
12642 }
12643 impl ::std::convert::From<LinearDoubleKeyFrame> for ::windows::runtime::IUnknown {
12644     fn from(value: LinearDoubleKeyFrame) -> Self {
12645         unsafe { ::std::mem::transmute(value) }
12646     }
12647 }
12648 impl ::std::convert::From<&LinearDoubleKeyFrame> for ::windows::runtime::IUnknown {
12649     fn from(value: &LinearDoubleKeyFrame) -> Self {
12650         ::std::convert::From::from(::std::clone::Clone::clone(value))
12651     }
12652 }
12653 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LinearDoubleKeyFrame {
12654     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12655         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12656     }
12657 }
12658 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LinearDoubleKeyFrame {
12659     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12660         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12661     }
12662 }
12663 impl ::std::convert::From<LinearDoubleKeyFrame> for ::windows::runtime::IInspectable {
12664     fn from(value: LinearDoubleKeyFrame) -> Self {
12665         value.0
12666     }
12667 }
12668 impl ::std::convert::From<&LinearDoubleKeyFrame> for ::windows::runtime::IInspectable {
12669     fn from(value: &LinearDoubleKeyFrame) -> Self {
12670         value.0.clone()
12671     }
12672 }
12673 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LinearDoubleKeyFrame {
12674     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12675         ::windows::runtime::Param::Owned(self.0)
12676     }
12677 }
12678 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LinearDoubleKeyFrame {
12679     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12680         ::windows::runtime::Param::Borrowed(&self.0)
12681     }
12682 }
12683 impl ::std::convert::From<LinearDoubleKeyFrame> for DoubleKeyFrame {
12684     fn from(value: LinearDoubleKeyFrame) -> Self {
12685         ::std::convert::Into::<DoubleKeyFrame>::into(&value)
12686     }
12687 }
12688 impl ::std::convert::From<&LinearDoubleKeyFrame> for DoubleKeyFrame {
12689     fn from(value: &LinearDoubleKeyFrame) -> Self {
12690         ::windows::runtime::Interface::cast(value).unwrap()
12691     }
12692 }
12693 impl<'a> ::windows::runtime::IntoParam<'a, DoubleKeyFrame> for LinearDoubleKeyFrame {
12694     fn into_param(self) -> ::windows::runtime::Param<'a, DoubleKeyFrame> {
12695         ::windows::runtime::Param::Owned(::std::convert::Into::<DoubleKeyFrame>::into(self))
12696     }
12697 }
12698 impl<'a> ::windows::runtime::IntoParam<'a, DoubleKeyFrame> for &LinearDoubleKeyFrame {
12699     fn into_param(self) -> ::windows::runtime::Param<'a, DoubleKeyFrame> {
12700         ::windows::runtime::Param::Owned(::std::convert::Into::<DoubleKeyFrame>::into(::std::clone::Clone::clone(self)))
12701     }
12702 }
12703 impl ::std::convert::From<LinearDoubleKeyFrame> for super::super::DependencyObject {
12704     fn from(value: LinearDoubleKeyFrame) -> Self {
12705         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
12706     }
12707 }
12708 impl ::std::convert::From<&LinearDoubleKeyFrame> for super::super::DependencyObject {
12709     fn from(value: &LinearDoubleKeyFrame) -> Self {
12710         ::windows::runtime::Interface::cast(value).unwrap()
12711     }
12712 }
12713 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for LinearDoubleKeyFrame {
12714     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
12715         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
12716     }
12717 }
12718 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &LinearDoubleKeyFrame {
12719     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
12720         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
12721     }
12722 }
12723 unsafe impl ::std::marker::Send for LinearDoubleKeyFrame {}
12724 unsafe impl ::std::marker::Sync for LinearDoubleKeyFrame {}
12725 #[repr(transparent)]
12726 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12727 pub struct LinearPointKeyFrame(::windows::runtime::IInspectable);
12728 impl LinearPointKeyFrame {
12729     pub fn new() -> ::windows::runtime::Result<Self> {
12730         Self::IActivationFactory(|f| f.activate_instance::<Self>())
12731     }
12732     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
12733         static mut SHARED: ::windows::runtime::FactoryCache<LinearPointKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
12734         unsafe { SHARED.call(callback) }
12735     }
12736     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12737         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12738         unsafe {
12739             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12740             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12741         }
12742     }
12743     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
12744         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12745         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
12746     }
12747     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
12748         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12749         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
12750     }
12751     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12752         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12753         unsafe {
12754             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12755             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12756         }
12757     }
12758     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12759         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12760         unsafe {
12761             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12762             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12763         }
12764     }
12765     #[cfg(feature = "UI_Core")]
12766     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
12767         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12768         unsafe {
12769             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12770             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
12771         }
12772     }
12773     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
12774         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12775         unsafe {
12776             let mut result__: i64 = ::std::mem::zeroed();
12777             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
12778         }
12779     }
12780     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
12781         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12782         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
12783     }
12784     #[cfg(feature = "Foundation")]
12785     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Point> {
12786         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
12787         unsafe {
12788             let mut result__: super::super::super::super::Foundation::Point = ::std::mem::zeroed();
12789             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Point>(result__)
12790         }
12791     }
12792     #[cfg(feature = "Foundation")]
12793     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Point>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12794         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
12795         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12796     }
12797     #[cfg(feature = "Foundation")]
12798     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
12799         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
12800         unsafe {
12801             let mut result__: KeyTime = ::std::mem::zeroed();
12802             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
12803         }
12804     }
12805     #[cfg(feature = "Foundation")]
12806     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12807         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
12808         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12809     }
12810 }
12811 unsafe impl ::windows::runtime::RuntimeType for LinearPointKeyFrame {
12812     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.LinearPointKeyFrame;{e7c9b8ef-af24-49ee-84f1-a86600a4e319})");
12813 }
12814 unsafe impl ::windows::runtime::Interface for LinearPointKeyFrame {
12815     type Vtable = ILinearPointKeyFrame_abi;
12816     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3888756975, 44836, 18926, [132, 241, 168, 102, 0, 164, 227, 25]);
12817 }
12818 impl ::windows::runtime::RuntimeName for LinearPointKeyFrame {
12819     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.LinearPointKeyFrame";
12820 }
12821 impl ::std::convert::From<LinearPointKeyFrame> for ::windows::runtime::IUnknown {
12822     fn from(value: LinearPointKeyFrame) -> Self {
12823         unsafe { ::std::mem::transmute(value) }
12824     }
12825 }
12826 impl ::std::convert::From<&LinearPointKeyFrame> for ::windows::runtime::IUnknown {
12827     fn from(value: &LinearPointKeyFrame) -> Self {
12828         ::std::convert::From::from(::std::clone::Clone::clone(value))
12829     }
12830 }
12831 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for LinearPointKeyFrame {
12832     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12833         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
12834     }
12835 }
12836 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &LinearPointKeyFrame {
12837     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
12838         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
12839     }
12840 }
12841 impl ::std::convert::From<LinearPointKeyFrame> for ::windows::runtime::IInspectable {
12842     fn from(value: LinearPointKeyFrame) -> Self {
12843         value.0
12844     }
12845 }
12846 impl ::std::convert::From<&LinearPointKeyFrame> for ::windows::runtime::IInspectable {
12847     fn from(value: &LinearPointKeyFrame) -> Self {
12848         value.0.clone()
12849     }
12850 }
12851 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for LinearPointKeyFrame {
12852     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12853         ::windows::runtime::Param::Owned(self.0)
12854     }
12855 }
12856 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a LinearPointKeyFrame {
12857     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
12858         ::windows::runtime::Param::Borrowed(&self.0)
12859     }
12860 }
12861 impl ::std::convert::From<LinearPointKeyFrame> for PointKeyFrame {
12862     fn from(value: LinearPointKeyFrame) -> Self {
12863         ::std::convert::Into::<PointKeyFrame>::into(&value)
12864     }
12865 }
12866 impl ::std::convert::From<&LinearPointKeyFrame> for PointKeyFrame {
12867     fn from(value: &LinearPointKeyFrame) -> Self {
12868         ::windows::runtime::Interface::cast(value).unwrap()
12869     }
12870 }
12871 impl<'a> ::windows::runtime::IntoParam<'a, PointKeyFrame> for LinearPointKeyFrame {
12872     fn into_param(self) -> ::windows::runtime::Param<'a, PointKeyFrame> {
12873         ::windows::runtime::Param::Owned(::std::convert::Into::<PointKeyFrame>::into(self))
12874     }
12875 }
12876 impl<'a> ::windows::runtime::IntoParam<'a, PointKeyFrame> for &LinearPointKeyFrame {
12877     fn into_param(self) -> ::windows::runtime::Param<'a, PointKeyFrame> {
12878         ::windows::runtime::Param::Owned(::std::convert::Into::<PointKeyFrame>::into(::std::clone::Clone::clone(self)))
12879     }
12880 }
12881 impl ::std::convert::From<LinearPointKeyFrame> for super::super::DependencyObject {
12882     fn from(value: LinearPointKeyFrame) -> Self {
12883         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
12884     }
12885 }
12886 impl ::std::convert::From<&LinearPointKeyFrame> for super::super::DependencyObject {
12887     fn from(value: &LinearPointKeyFrame) -> Self {
12888         ::windows::runtime::Interface::cast(value).unwrap()
12889     }
12890 }
12891 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for LinearPointKeyFrame {
12892     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
12893         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
12894     }
12895 }
12896 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &LinearPointKeyFrame {
12897     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
12898         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
12899     }
12900 }
12901 unsafe impl ::std::marker::Send for LinearPointKeyFrame {}
12902 unsafe impl ::std::marker::Sync for LinearPointKeyFrame {}
12903 #[repr(transparent)]
12904 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
12905 pub struct NavigationThemeTransition(::windows::runtime::IInspectable);
12906 impl NavigationThemeTransition {
12907     pub fn new() -> ::windows::runtime::Result<Self> {
12908         Self::IActivationFactory(|f| f.activate_instance::<Self>())
12909     }
12910     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
12911         static mut SHARED: ::windows::runtime::FactoryCache<NavigationThemeTransition, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
12912         unsafe { SHARED.call(callback) }
12913     }
12914     pub fn DefaultNavigationTransitionInfo(&self) -> ::windows::runtime::Result<NavigationTransitionInfo> {
12915         let this = self;
12916         unsafe {
12917             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12918             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<NavigationTransitionInfo>(result__)
12919         }
12920     }
12921     pub fn SetDefaultNavigationTransitionInfo<'a, Param0: ::windows::runtime::IntoParam<'a, NavigationTransitionInfo>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
12922         let this = self;
12923         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
12924     }
12925     pub fn DefaultNavigationTransitionInfoProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
12926         Self::INavigationThemeTransitionStatics(|this| unsafe {
12927             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12928             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
12929         })
12930     }
12931     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12932         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12933         unsafe {
12934             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12935             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12936         }
12937     }
12938     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
12939         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12940         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
12941     }
12942     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
12943         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12944         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
12945     }
12946     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12947         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12948         unsafe {
12949             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12950             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12951         }
12952     }
12953     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
12954         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12955         unsafe {
12956             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12957             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
12958         }
12959     }
12960     #[cfg(feature = "UI_Core")]
12961     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
12962         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
12963         unsafe {
12964             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
12965             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
12966         }
12967     }
12968     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
12969         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12970         unsafe {
12971             let mut result__: i64 = ::std::mem::zeroed();
12972             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
12973         }
12974     }
12975     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
12976         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
12977         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
12978     }
12979     pub fn INavigationThemeTransitionStatics<R, F: FnOnce(&INavigationThemeTransitionStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
12980         static mut SHARED: ::windows::runtime::FactoryCache<NavigationThemeTransition, INavigationThemeTransitionStatics> = ::windows::runtime::FactoryCache::new();
12981         unsafe { SHARED.call(callback) }
12982     }
12983 }
12984 unsafe impl ::windows::runtime::RuntimeType for NavigationThemeTransition {
12985     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.NavigationThemeTransition;{8833848c-4eb7-41f2-8799-9eef0a213b73})");
12986 }
12987 unsafe impl ::windows::runtime::Interface for NavigationThemeTransition {
12988     type Vtable = INavigationThemeTransition_abi;
12989     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2285077644, 20151, 16882, [135, 153, 158, 239, 10, 33, 59, 115]);
12990 }
12991 impl ::windows::runtime::RuntimeName for NavigationThemeTransition {
12992     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.NavigationThemeTransition";
12993 }
12994 impl ::std::convert::From<NavigationThemeTransition> for ::windows::runtime::IUnknown {
12995     fn from(value: NavigationThemeTransition) -> Self {
12996         unsafe { ::std::mem::transmute(value) }
12997     }
12998 }
12999 impl ::std::convert::From<&NavigationThemeTransition> for ::windows::runtime::IUnknown {
13000     fn from(value: &NavigationThemeTransition) -> Self {
13001         ::std::convert::From::from(::std::clone::Clone::clone(value))
13002     }
13003 }
13004 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for NavigationThemeTransition {
13005     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13006         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13007     }
13008 }
13009 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &NavigationThemeTransition {
13010     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13011         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13012     }
13013 }
13014 impl ::std::convert::From<NavigationThemeTransition> for ::windows::runtime::IInspectable {
13015     fn from(value: NavigationThemeTransition) -> Self {
13016         value.0
13017     }
13018 }
13019 impl ::std::convert::From<&NavigationThemeTransition> for ::windows::runtime::IInspectable {
13020     fn from(value: &NavigationThemeTransition) -> Self {
13021         value.0.clone()
13022     }
13023 }
13024 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for NavigationThemeTransition {
13025     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13026         ::windows::runtime::Param::Owned(self.0)
13027     }
13028 }
13029 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a NavigationThemeTransition {
13030     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13031         ::windows::runtime::Param::Borrowed(&self.0)
13032     }
13033 }
13034 impl ::std::convert::From<NavigationThemeTransition> for Transition {
13035     fn from(value: NavigationThemeTransition) -> Self {
13036         ::std::convert::Into::<Transition>::into(&value)
13037     }
13038 }
13039 impl ::std::convert::From<&NavigationThemeTransition> for Transition {
13040     fn from(value: &NavigationThemeTransition) -> Self {
13041         ::windows::runtime::Interface::cast(value).unwrap()
13042     }
13043 }
13044 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for NavigationThemeTransition {
13045     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
13046         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(self))
13047     }
13048 }
13049 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for &NavigationThemeTransition {
13050     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
13051         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(::std::clone::Clone::clone(self)))
13052     }
13053 }
13054 impl ::std::convert::From<NavigationThemeTransition> for super::super::DependencyObject {
13055     fn from(value: NavigationThemeTransition) -> Self {
13056         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
13057     }
13058 }
13059 impl ::std::convert::From<&NavigationThemeTransition> for super::super::DependencyObject {
13060     fn from(value: &NavigationThemeTransition) -> Self {
13061         ::windows::runtime::Interface::cast(value).unwrap()
13062     }
13063 }
13064 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for NavigationThemeTransition {
13065     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
13066         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
13067     }
13068 }
13069 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &NavigationThemeTransition {
13070     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
13071         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
13072     }
13073 }
13074 unsafe impl ::std::marker::Send for NavigationThemeTransition {}
13075 unsafe impl ::std::marker::Sync for NavigationThemeTransition {}
13076 #[repr(transparent)]
13077 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
13078 pub struct NavigationTransitionInfo(::windows::runtime::IInspectable);
13079 impl NavigationTransitionInfo {
13080     pub fn GetNavigationStateCore(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
13081         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
13082         unsafe {
13083             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
13084             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
13085         }
13086     }
13087     pub fn SetNavigationStateCore<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, navigationstate: Param0) -> ::windows::runtime::Result<()> {
13088         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
13089         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), navigationstate.into_param().abi()).ok() }
13090     }
13091     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13092         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13093         unsafe {
13094             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13095             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13096         }
13097     }
13098     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
13099         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13100         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
13101     }
13102     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
13103         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13104         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
13105     }
13106     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13107         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13108         unsafe {
13109             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13110             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13111         }
13112     }
13113     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13114         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13115         unsafe {
13116             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13117             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13118         }
13119     }
13120     #[cfg(feature = "UI_Core")]
13121     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
13122         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13123         unsafe {
13124             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13125             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
13126         }
13127     }
13128     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
13129         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
13130         unsafe {
13131             let mut result__: i64 = ::std::mem::zeroed();
13132             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
13133         }
13134     }
13135     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
13136         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
13137         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
13138     }
13139 }
13140 unsafe impl ::windows::runtime::RuntimeType for NavigationTransitionInfo {
13141     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.NavigationTransitionInfo;{a9b05091-ae4a-4372-8625-21b7a8b98ca4})");
13142 }
13143 unsafe impl ::windows::runtime::Interface for NavigationTransitionInfo {
13144     type Vtable = INavigationTransitionInfo_abi;
13145     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2846904465, 44618, 17266, [134, 37, 33, 183, 168, 185, 140, 164]);
13146 }
13147 impl ::windows::runtime::RuntimeName for NavigationTransitionInfo {
13148     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.NavigationTransitionInfo";
13149 }
13150 impl ::std::convert::From<NavigationTransitionInfo> for ::windows::runtime::IUnknown {
13151     fn from(value: NavigationTransitionInfo) -> Self {
13152         unsafe { ::std::mem::transmute(value) }
13153     }
13154 }
13155 impl ::std::convert::From<&NavigationTransitionInfo> for ::windows::runtime::IUnknown {
13156     fn from(value: &NavigationTransitionInfo) -> Self {
13157         ::std::convert::From::from(::std::clone::Clone::clone(value))
13158     }
13159 }
13160 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for NavigationTransitionInfo {
13161     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13162         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13163     }
13164 }
13165 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &NavigationTransitionInfo {
13166     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13167         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13168     }
13169 }
13170 impl ::std::convert::From<NavigationTransitionInfo> for ::windows::runtime::IInspectable {
13171     fn from(value: NavigationTransitionInfo) -> Self {
13172         value.0
13173     }
13174 }
13175 impl ::std::convert::From<&NavigationTransitionInfo> for ::windows::runtime::IInspectable {
13176     fn from(value: &NavigationTransitionInfo) -> Self {
13177         value.0.clone()
13178     }
13179 }
13180 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for NavigationTransitionInfo {
13181     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13182         ::windows::runtime::Param::Owned(self.0)
13183     }
13184 }
13185 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a NavigationTransitionInfo {
13186     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13187         ::windows::runtime::Param::Borrowed(&self.0)
13188     }
13189 }
13190 impl ::std::convert::From<NavigationTransitionInfo> for super::super::DependencyObject {
13191     fn from(value: NavigationTransitionInfo) -> Self {
13192         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
13193     }
13194 }
13195 impl ::std::convert::From<&NavigationTransitionInfo> for super::super::DependencyObject {
13196     fn from(value: &NavigationTransitionInfo) -> Self {
13197         ::windows::runtime::Interface::cast(value).unwrap()
13198     }
13199 }
13200 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for NavigationTransitionInfo {
13201     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
13202         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
13203     }
13204 }
13205 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &NavigationTransitionInfo {
13206     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
13207         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
13208     }
13209 }
13210 unsafe impl ::std::marker::Send for NavigationTransitionInfo {}
13211 unsafe impl ::std::marker::Sync for NavigationTransitionInfo {}
13212 #[repr(transparent)]
13213 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
13214 pub struct ObjectAnimationUsingKeyFrames(::windows::runtime::IInspectable);
13215 impl ObjectAnimationUsingKeyFrames {
13216     pub fn new() -> ::windows::runtime::Result<Self> {
13217         Self::IActivationFactory(|f| f.activate_instance::<Self>())
13218     }
13219     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
13220         static mut SHARED: ::windows::runtime::FactoryCache<ObjectAnimationUsingKeyFrames, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
13221         unsafe { SHARED.call(callback) }
13222     }
13223     #[cfg(feature = "Foundation_Collections")]
13224     pub fn KeyFrames(&self) -> ::windows::runtime::Result<ObjectKeyFrameCollection> {
13225         let this = self;
13226         unsafe {
13227             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13228             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ObjectKeyFrameCollection>(result__)
13229         }
13230     }
13231     pub fn EnableDependentAnimation(&self) -> ::windows::runtime::Result<bool> {
13232         let this = self;
13233         unsafe {
13234             let mut result__: bool = ::std::mem::zeroed();
13235             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13236         }
13237     }
13238     pub fn SetEnableDependentAnimation(&self, value: bool) -> ::windows::runtime::Result<()> {
13239         let this = self;
13240         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
13241     }
13242     pub fn EnableDependentAnimationProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
13243         Self::IObjectAnimationUsingKeyFramesStatics(|this| unsafe {
13244             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13245             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
13246         })
13247     }
13248     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13249         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13250         unsafe {
13251             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13252             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13253         }
13254     }
13255     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
13256         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13257         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
13258     }
13259     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
13260         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13261         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
13262     }
13263     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13264         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13265         unsafe {
13266             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13267             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13268         }
13269     }
13270     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13271         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13272         unsafe {
13273             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13274             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13275         }
13276     }
13277     #[cfg(feature = "UI_Core")]
13278     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
13279         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13280         unsafe {
13281             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13282             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
13283         }
13284     }
13285     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
13286         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
13287         unsafe {
13288             let mut result__: i64 = ::std::mem::zeroed();
13289             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
13290         }
13291     }
13292     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
13293         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
13294         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
13295     }
13296     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
13297         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13298         unsafe {
13299             let mut result__: bool = ::std::mem::zeroed();
13300             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
13301         }
13302     }
13303     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
13304         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13305         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
13306     }
13307     #[cfg(feature = "Foundation")]
13308     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
13309         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13310         unsafe {
13311             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13312             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
13313         }
13314     }
13315     #[cfg(feature = "Foundation")]
13316     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
13317         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13318         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
13319     }
13320     #[cfg(feature = "Foundation")]
13321     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
13322         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13323         unsafe {
13324             let mut result__: super::super::Duration = ::std::mem::zeroed();
13325             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
13326         }
13327     }
13328     #[cfg(feature = "Foundation")]
13329     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
13330         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13331         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
13332     }
13333     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
13334         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13335         unsafe {
13336             let mut result__: f64 = ::std::mem::zeroed();
13337             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
13338         }
13339     }
13340     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
13341         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13342         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
13343     }
13344     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
13345         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13346         unsafe {
13347             let mut result__: FillBehavior = ::std::mem::zeroed();
13348             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
13349         }
13350     }
13351     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
13352         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13353         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
13354     }
13355     #[cfg(feature = "Foundation")]
13356     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
13357         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13358         unsafe {
13359             let mut result__: RepeatBehavior = ::std::mem::zeroed();
13360             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
13361         }
13362     }
13363     #[cfg(feature = "Foundation")]
13364     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
13365         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13366         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
13367     }
13368     #[cfg(feature = "Foundation")]
13369     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
13370         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13371         unsafe {
13372             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
13373             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
13374         }
13375     }
13376     #[cfg(feature = "Foundation")]
13377     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
13378         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
13379         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
13380     }
13381     pub fn IObjectAnimationUsingKeyFramesStatics<R, F: FnOnce(&IObjectAnimationUsingKeyFramesStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
13382         static mut SHARED: ::windows::runtime::FactoryCache<ObjectAnimationUsingKeyFrames, IObjectAnimationUsingKeyFramesStatics> = ::windows::runtime::FactoryCache::new();
13383         unsafe { SHARED.call(callback) }
13384     }
13385 }
13386 unsafe impl ::windows::runtime::RuntimeType for ObjectAnimationUsingKeyFrames {
13387     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ObjectAnimationUsingKeyFrames;{334a2d92-b74a-4c64-b9a6-58bcfa314f22})");
13388 }
13389 unsafe impl ::windows::runtime::Interface for ObjectAnimationUsingKeyFrames {
13390     type Vtable = IObjectAnimationUsingKeyFrames_abi;
13391     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(860499346, 46922, 19556, [185, 166, 88, 188, 250, 49, 79, 34]);
13392 }
13393 impl ::windows::runtime::RuntimeName for ObjectAnimationUsingKeyFrames {
13394     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ObjectAnimationUsingKeyFrames";
13395 }
13396 impl ::std::convert::From<ObjectAnimationUsingKeyFrames> for ::windows::runtime::IUnknown {
13397     fn from(value: ObjectAnimationUsingKeyFrames) -> Self {
13398         unsafe { ::std::mem::transmute(value) }
13399     }
13400 }
13401 impl ::std::convert::From<&ObjectAnimationUsingKeyFrames> for ::windows::runtime::IUnknown {
13402     fn from(value: &ObjectAnimationUsingKeyFrames) -> Self {
13403         ::std::convert::From::from(::std::clone::Clone::clone(value))
13404     }
13405 }
13406 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ObjectAnimationUsingKeyFrames {
13407     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13408         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13409     }
13410 }
13411 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ObjectAnimationUsingKeyFrames {
13412     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13413         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13414     }
13415 }
13416 impl ::std::convert::From<ObjectAnimationUsingKeyFrames> for ::windows::runtime::IInspectable {
13417     fn from(value: ObjectAnimationUsingKeyFrames) -> Self {
13418         value.0
13419     }
13420 }
13421 impl ::std::convert::From<&ObjectAnimationUsingKeyFrames> for ::windows::runtime::IInspectable {
13422     fn from(value: &ObjectAnimationUsingKeyFrames) -> Self {
13423         value.0.clone()
13424     }
13425 }
13426 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ObjectAnimationUsingKeyFrames {
13427     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13428         ::windows::runtime::Param::Owned(self.0)
13429     }
13430 }
13431 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ObjectAnimationUsingKeyFrames {
13432     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13433         ::windows::runtime::Param::Borrowed(&self.0)
13434     }
13435 }
13436 impl ::std::convert::From<ObjectAnimationUsingKeyFrames> for Timeline {
13437     fn from(value: ObjectAnimationUsingKeyFrames) -> Self {
13438         ::std::convert::Into::<Timeline>::into(&value)
13439     }
13440 }
13441 impl ::std::convert::From<&ObjectAnimationUsingKeyFrames> for Timeline {
13442     fn from(value: &ObjectAnimationUsingKeyFrames) -> Self {
13443         ::windows::runtime::Interface::cast(value).unwrap()
13444     }
13445 }
13446 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for ObjectAnimationUsingKeyFrames {
13447     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
13448         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
13449     }
13450 }
13451 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &ObjectAnimationUsingKeyFrames {
13452     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
13453         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
13454     }
13455 }
13456 impl ::std::convert::From<ObjectAnimationUsingKeyFrames> for super::super::DependencyObject {
13457     fn from(value: ObjectAnimationUsingKeyFrames) -> Self {
13458         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
13459     }
13460 }
13461 impl ::std::convert::From<&ObjectAnimationUsingKeyFrames> for super::super::DependencyObject {
13462     fn from(value: &ObjectAnimationUsingKeyFrames) -> Self {
13463         ::windows::runtime::Interface::cast(value).unwrap()
13464     }
13465 }
13466 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ObjectAnimationUsingKeyFrames {
13467     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
13468         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
13469     }
13470 }
13471 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ObjectAnimationUsingKeyFrames {
13472     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
13473         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
13474     }
13475 }
13476 unsafe impl ::std::marker::Send for ObjectAnimationUsingKeyFrames {}
13477 unsafe impl ::std::marker::Sync for ObjectAnimationUsingKeyFrames {}
13478 #[repr(transparent)]
13479 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
13480 pub struct ObjectKeyFrame(::windows::runtime::IInspectable);
13481 impl ObjectKeyFrame {
13482     pub fn Value(&self) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13483         let this = self;
13484         unsafe {
13485             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13486             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13487         }
13488     }
13489     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
13490         let this = self;
13491         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
13492     }
13493     #[cfg(feature = "Foundation")]
13494     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
13495         let this = self;
13496         unsafe {
13497             let mut result__: KeyTime = ::std::mem::zeroed();
13498             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
13499         }
13500     }
13501     #[cfg(feature = "Foundation")]
13502     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
13503         let this = self;
13504         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
13505     }
13506     pub fn ValueProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
13507         Self::IObjectKeyFrameStatics(|this| unsafe {
13508             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13509             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
13510         })
13511     }
13512     pub fn KeyTimeProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
13513         Self::IObjectKeyFrameStatics(|this| unsafe {
13514             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13515             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
13516         })
13517     }
13518     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13519         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13520         unsafe {
13521             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13522             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13523         }
13524     }
13525     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
13526         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13527         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
13528     }
13529     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
13530         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13531         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
13532     }
13533     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13534         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13535         unsafe {
13536             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13537             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13538         }
13539     }
13540     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13541         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13542         unsafe {
13543             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13544             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13545         }
13546     }
13547     #[cfg(feature = "UI_Core")]
13548     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
13549         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13550         unsafe {
13551             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13552             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
13553         }
13554     }
13555     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
13556         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
13557         unsafe {
13558             let mut result__: i64 = ::std::mem::zeroed();
13559             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
13560         }
13561     }
13562     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
13563         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
13564         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
13565     }
13566     pub fn IObjectKeyFrameStatics<R, F: FnOnce(&IObjectKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
13567         static mut SHARED: ::windows::runtime::FactoryCache<ObjectKeyFrame, IObjectKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
13568         unsafe { SHARED.call(callback) }
13569     }
13570 }
13571 unsafe impl ::windows::runtime::RuntimeType for ObjectKeyFrame {
13572     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ObjectKeyFrame;{9852a851-8593-48ee-a6a4-d5d4720f029a})");
13573 }
13574 unsafe impl ::windows::runtime::Interface for ObjectKeyFrame {
13575     type Vtable = IObjectKeyFrame_abi;
13576     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2555553873, 34195, 18670, [166, 164, 213, 212, 114, 15, 2, 154]);
13577 }
13578 impl ::windows::runtime::RuntimeName for ObjectKeyFrame {
13579     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ObjectKeyFrame";
13580 }
13581 impl ::std::convert::From<ObjectKeyFrame> for ::windows::runtime::IUnknown {
13582     fn from(value: ObjectKeyFrame) -> Self {
13583         unsafe { ::std::mem::transmute(value) }
13584     }
13585 }
13586 impl ::std::convert::From<&ObjectKeyFrame> for ::windows::runtime::IUnknown {
13587     fn from(value: &ObjectKeyFrame) -> Self {
13588         ::std::convert::From::from(::std::clone::Clone::clone(value))
13589     }
13590 }
13591 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ObjectKeyFrame {
13592     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13593         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13594     }
13595 }
13596 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ObjectKeyFrame {
13597     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13598         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13599     }
13600 }
13601 impl ::std::convert::From<ObjectKeyFrame> for ::windows::runtime::IInspectable {
13602     fn from(value: ObjectKeyFrame) -> Self {
13603         value.0
13604     }
13605 }
13606 impl ::std::convert::From<&ObjectKeyFrame> for ::windows::runtime::IInspectable {
13607     fn from(value: &ObjectKeyFrame) -> Self {
13608         value.0.clone()
13609     }
13610 }
13611 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ObjectKeyFrame {
13612     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13613         ::windows::runtime::Param::Owned(self.0)
13614     }
13615 }
13616 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ObjectKeyFrame {
13617     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13618         ::windows::runtime::Param::Borrowed(&self.0)
13619     }
13620 }
13621 impl ::std::convert::From<ObjectKeyFrame> for super::super::DependencyObject {
13622     fn from(value: ObjectKeyFrame) -> Self {
13623         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
13624     }
13625 }
13626 impl ::std::convert::From<&ObjectKeyFrame> for super::super::DependencyObject {
13627     fn from(value: &ObjectKeyFrame) -> Self {
13628         ::windows::runtime::Interface::cast(value).unwrap()
13629     }
13630 }
13631 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ObjectKeyFrame {
13632     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
13633         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
13634     }
13635 }
13636 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ObjectKeyFrame {
13637     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
13638         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
13639     }
13640 }
13641 unsafe impl ::std::marker::Send for ObjectKeyFrame {}
13642 unsafe impl ::std::marker::Sync for ObjectKeyFrame {}
13643 #[cfg(feature = "Foundation_Collections")]
13644 #[repr(transparent)]
13645 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
13646 pub struct ObjectKeyFrameCollection(::windows::runtime::IInspectable);
13647 #[cfg(feature = "Foundation_Collections")]
13648 impl ObjectKeyFrameCollection {
13649     pub fn new() -> ::windows::runtime::Result<Self> {
13650         Self::IActivationFactory(|f| f.activate_instance::<Self>())
13651     }
13652     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
13653         static mut SHARED: ::windows::runtime::FactoryCache<ObjectKeyFrameCollection, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
13654         unsafe { SHARED.call(callback) }
13655     }
13656     #[cfg(feature = "Foundation_Collections")]
13657     pub fn GetAt(&self, index: u32) -> ::windows::runtime::Result<ObjectKeyFrame> {
13658         let this = self;
13659         unsafe {
13660             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13661             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), index, &mut result__).from_abi::<ObjectKeyFrame>(result__)
13662         }
13663     }
13664     #[cfg(feature = "Foundation_Collections")]
13665     pub fn Size(&self) -> ::windows::runtime::Result<u32> {
13666         let this = self;
13667         unsafe {
13668             let mut result__: u32 = ::std::mem::zeroed();
13669             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
13670         }
13671     }
13672     #[cfg(feature = "Foundation_Collections")]
13673     pub fn GetView(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IVectorView<ObjectKeyFrame>> {
13674         let this = self;
13675         unsafe {
13676             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13677             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IVectorView<ObjectKeyFrame>>(result__)
13678         }
13679     }
13680     #[cfg(feature = "Foundation_Collections")]
13681     pub fn IndexOf<'a, Param0: ::windows::runtime::IntoParam<'a, ObjectKeyFrame>>(&self, value: Param0, index: &mut u32) -> ::windows::runtime::Result<bool> {
13682         let this = self;
13683         unsafe {
13684             let mut result__: bool = ::std::mem::zeroed();
13685             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi(), index, &mut result__).from_abi::<bool>(result__)
13686         }
13687     }
13688     #[cfg(feature = "Foundation_Collections")]
13689     pub fn SetAt<'a, Param1: ::windows::runtime::IntoParam<'a, ObjectKeyFrame>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
13690         let this = self;
13691         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
13692     }
13693     #[cfg(feature = "Foundation_Collections")]
13694     pub fn InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, ObjectKeyFrame>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
13695         let this = self;
13696         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
13697     }
13698     #[cfg(feature = "Foundation_Collections")]
13699     pub fn RemoveAt(&self, index: u32) -> ::windows::runtime::Result<()> {
13700         let this = self;
13701         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), index).ok() }
13702     }
13703     #[cfg(feature = "Foundation_Collections")]
13704     pub fn Append<'a, Param0: ::windows::runtime::IntoParam<'a, ObjectKeyFrame>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
13705         let this = self;
13706         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
13707     }
13708     #[cfg(feature = "Foundation_Collections")]
13709     pub fn RemoveAtEnd(&self) -> ::windows::runtime::Result<()> {
13710         let this = self;
13711         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
13712     }
13713     #[cfg(feature = "Foundation_Collections")]
13714     pub fn Clear(&self) -> ::windows::runtime::Result<()> {
13715         let this = self;
13716         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this)).ok() }
13717     }
13718     #[cfg(feature = "Foundation_Collections")]
13719     pub fn GetMany(&self, startindex: u32, items: &mut [<ObjectKeyFrame as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<u32> {
13720         let this = self;
13721         unsafe {
13722             let mut result__: u32 = ::std::mem::zeroed();
13723             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), startindex, items.len() as u32, ::std::mem::transmute_copy(&items), &mut result__).from_abi::<u32>(result__)
13724         }
13725     }
13726     #[cfg(feature = "Foundation_Collections")]
13727     pub fn ReplaceAll(&self, items: &[<ObjectKeyFrame as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<()> {
13728         let this = self;
13729         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), items.len() as u32, ::std::mem::transmute(items.as_ptr())).ok() }
13730     }
13731     #[cfg(feature = "Foundation_Collections")]
13732     pub fn First(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IIterator<ObjectKeyFrame>> {
13733         let this = &::windows::runtime::Interface::cast::<super::super::super::super::Foundation::Collections::IIterable<ObjectKeyFrame>>(self)?;
13734         unsafe {
13735             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13736             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IIterator<ObjectKeyFrame>>(result__)
13737         }
13738     }
13739 }
13740 #[cfg(feature = "Foundation_Collections")]
13741 unsafe impl ::windows::runtime::RuntimeType for ObjectKeyFrameCollection {
13742     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ObjectKeyFrameCollection;pinterface({913337e9-11a1-4345-a3a2-4e7f956e222d};rc(Windows.UI.Xaml.Media.Animation.ObjectKeyFrame;{9852a851-8593-48ee-a6a4-d5d4720f029a})))");
13743 }
13744 #[cfg(feature = "Foundation_Collections")]
13745 unsafe impl ::windows::runtime::Interface for ObjectKeyFrameCollection {
13746     type Vtable = super::super::super::super::Foundation::Collections::IVector_abi<ObjectKeyFrame>;
13747     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_signature(<super::super::super::super::Foundation::Collections::IVector<ObjectKeyFrame> as ::windows::runtime::RuntimeType>::SIGNATURE);
13748 }
13749 #[cfg(feature = "Foundation_Collections")]
13750 impl ::windows::runtime::RuntimeName for ObjectKeyFrameCollection {
13751     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ObjectKeyFrameCollection";
13752 }
13753 #[cfg(feature = "Foundation_Collections")]
13754 impl ::std::convert::From<ObjectKeyFrameCollection> for ::windows::runtime::IUnknown {
13755     fn from(value: ObjectKeyFrameCollection) -> Self {
13756         unsafe { ::std::mem::transmute(value) }
13757     }
13758 }
13759 #[cfg(feature = "Foundation_Collections")]
13760 impl ::std::convert::From<&ObjectKeyFrameCollection> for ::windows::runtime::IUnknown {
13761     fn from(value: &ObjectKeyFrameCollection) -> Self {
13762         ::std::convert::From::from(::std::clone::Clone::clone(value))
13763     }
13764 }
13765 #[cfg(feature = "Foundation_Collections")]
13766 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ObjectKeyFrameCollection {
13767     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13768         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13769     }
13770 }
13771 #[cfg(feature = "Foundation_Collections")]
13772 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ObjectKeyFrameCollection {
13773     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13774         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13775     }
13776 }
13777 #[cfg(feature = "Foundation_Collections")]
13778 impl ::std::convert::From<ObjectKeyFrameCollection> for ::windows::runtime::IInspectable {
13779     fn from(value: ObjectKeyFrameCollection) -> Self {
13780         value.0
13781     }
13782 }
13783 #[cfg(feature = "Foundation_Collections")]
13784 impl ::std::convert::From<&ObjectKeyFrameCollection> for ::windows::runtime::IInspectable {
13785     fn from(value: &ObjectKeyFrameCollection) -> Self {
13786         value.0.clone()
13787     }
13788 }
13789 #[cfg(feature = "Foundation_Collections")]
13790 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ObjectKeyFrameCollection {
13791     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13792         ::windows::runtime::Param::Owned(self.0)
13793     }
13794 }
13795 #[cfg(feature = "Foundation_Collections")]
13796 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ObjectKeyFrameCollection {
13797     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13798         ::windows::runtime::Param::Borrowed(&self.0)
13799     }
13800 }
13801 #[cfg(feature = "Foundation_Collections")]
13802 impl ::std::convert::From<ObjectKeyFrameCollection> for super::super::super::super::Foundation::Collections::IVector<ObjectKeyFrame> {
13803     fn from(value: ObjectKeyFrameCollection) -> Self {
13804         unsafe { ::std::mem::transmute(value) }
13805     }
13806 }
13807 #[cfg(feature = "Foundation_Collections")]
13808 impl ::std::convert::From<&ObjectKeyFrameCollection> for super::super::super::super::Foundation::Collections::IVector<ObjectKeyFrame> {
13809     fn from(value: &ObjectKeyFrameCollection) -> Self {
13810         ::std::convert::From::from(::std::clone::Clone::clone(value))
13811     }
13812 }
13813 #[cfg(feature = "Foundation_Collections")]
13814 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<ObjectKeyFrame>> for ObjectKeyFrameCollection {
13815     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<ObjectKeyFrame>> {
13816         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<ObjectKeyFrame>>::into(self))
13817     }
13818 }
13819 #[cfg(feature = "Foundation_Collections")]
13820 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<ObjectKeyFrame>> for &ObjectKeyFrameCollection {
13821     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<ObjectKeyFrame>> {
13822         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<ObjectKeyFrame>>::into(::std::clone::Clone::clone(self)))
13823     }
13824 }
13825 #[cfg(feature = "Foundation_Collections")]
13826 impl ::std::convert::TryFrom<ObjectKeyFrameCollection> for super::super::super::super::Foundation::Collections::IIterable<ObjectKeyFrame> {
13827     type Error = ::windows::runtime::Error;
13828     fn try_from(value: ObjectKeyFrameCollection) -> ::windows::runtime::Result<Self> {
13829         ::std::convert::TryFrom::try_from(&value)
13830     }
13831 }
13832 #[cfg(feature = "Foundation_Collections")]
13833 impl ::std::convert::TryFrom<&ObjectKeyFrameCollection> for super::super::super::super::Foundation::Collections::IIterable<ObjectKeyFrame> {
13834     type Error = ::windows::runtime::Error;
13835     fn try_from(value: &ObjectKeyFrameCollection) -> ::windows::runtime::Result<Self> {
13836         ::windows::runtime::Interface::cast(value)
13837     }
13838 }
13839 #[cfg(feature = "Foundation_Collections")]
13840 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<ObjectKeyFrame>> for ObjectKeyFrameCollection {
13841     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<ObjectKeyFrame>> {
13842         ::windows::runtime::IntoParam::into_param(&self)
13843     }
13844 }
13845 #[cfg(feature = "Foundation_Collections")]
13846 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<ObjectKeyFrame>> for &ObjectKeyFrameCollection {
13847     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<ObjectKeyFrame>> {
13848         ::std::convert::TryInto::<super::super::super::super::Foundation::Collections::IIterable<ObjectKeyFrame>>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
13849     }
13850 }
13851 #[cfg(feature = "Foundation_Collections")]
13852 unsafe impl ::std::marker::Send for ObjectKeyFrameCollection {}
13853 #[cfg(feature = "Foundation_Collections")]
13854 unsafe impl ::std::marker::Sync for ObjectKeyFrameCollection {}
13855 #[cfg(all(feature = "Foundation_Collections"))]
13856 impl ::std::iter::IntoIterator for ObjectKeyFrameCollection {
13857     type Item = ObjectKeyFrame;
13858     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
13859     fn into_iter(self) -> Self::IntoIter {
13860         ::std::iter::IntoIterator::into_iter(&self)
13861     }
13862 }
13863 #[cfg(all(feature = "Foundation_Collections"))]
13864 impl ::std::iter::IntoIterator for &ObjectKeyFrameCollection {
13865     type Item = ObjectKeyFrame;
13866     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
13867     fn into_iter(self) -> Self::IntoIter {
13868         super::super::super::super::Foundation::Collections::VectorIterator::new(::std::convert::TryInto::try_into(self).ok())
13869     }
13870 }
13871 #[repr(transparent)]
13872 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
13873 pub struct PaneThemeTransition(::windows::runtime::IInspectable);
13874 impl PaneThemeTransition {
13875     pub fn new() -> ::windows::runtime::Result<Self> {
13876         Self::IActivationFactory(|f| f.activate_instance::<Self>())
13877     }
13878     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
13879         static mut SHARED: ::windows::runtime::FactoryCache<PaneThemeTransition, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
13880         unsafe { SHARED.call(callback) }
13881     }
13882     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
13883     pub fn Edge(&self) -> ::windows::runtime::Result<super::super::Controls::Primitives::EdgeTransitionLocation> {
13884         let this = self;
13885         unsafe {
13886             let mut result__: super::super::Controls::Primitives::EdgeTransitionLocation = ::std::mem::zeroed();
13887             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Controls::Primitives::EdgeTransitionLocation>(result__)
13888         }
13889     }
13890     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
13891     pub fn SetEdge(&self, value: super::super::Controls::Primitives::EdgeTransitionLocation) -> ::windows::runtime::Result<()> {
13892         let this = self;
13893         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
13894     }
13895     pub fn EdgeProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
13896         Self::IPaneThemeTransitionStatics(|this| unsafe {
13897             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13898             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
13899         })
13900     }
13901     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13902         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13903         unsafe {
13904             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13905             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13906         }
13907     }
13908     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
13909         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13910         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
13911     }
13912     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
13913         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13914         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
13915     }
13916     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13917         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13918         unsafe {
13919             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13920             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13921         }
13922     }
13923     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
13924         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13925         unsafe {
13926             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13927             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
13928         }
13929     }
13930     #[cfg(feature = "UI_Core")]
13931     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
13932         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
13933         unsafe {
13934             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
13935             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
13936         }
13937     }
13938     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
13939         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
13940         unsafe {
13941             let mut result__: i64 = ::std::mem::zeroed();
13942             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
13943         }
13944     }
13945     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
13946         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
13947         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
13948     }
13949     pub fn IPaneThemeTransitionStatics<R, F: FnOnce(&IPaneThemeTransitionStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
13950         static mut SHARED: ::windows::runtime::FactoryCache<PaneThemeTransition, IPaneThemeTransitionStatics> = ::windows::runtime::FactoryCache::new();
13951         unsafe { SHARED.call(callback) }
13952     }
13953 }
13954 unsafe impl ::windows::runtime::RuntimeType for PaneThemeTransition {
13955     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PaneThemeTransition;{4708eb8e-4bfc-ee46-d4f9-708def3fbb2b})");
13956 }
13957 unsafe impl ::windows::runtime::Interface for PaneThemeTransition {
13958     type Vtable = IPaneThemeTransition_abi;
13959     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1191766926, 19452, 60998, [212, 249, 112, 141, 239, 63, 187, 43]);
13960 }
13961 impl ::windows::runtime::RuntimeName for PaneThemeTransition {
13962     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PaneThemeTransition";
13963 }
13964 impl ::std::convert::From<PaneThemeTransition> for ::windows::runtime::IUnknown {
13965     fn from(value: PaneThemeTransition) -> Self {
13966         unsafe { ::std::mem::transmute(value) }
13967     }
13968 }
13969 impl ::std::convert::From<&PaneThemeTransition> for ::windows::runtime::IUnknown {
13970     fn from(value: &PaneThemeTransition) -> Self {
13971         ::std::convert::From::from(::std::clone::Clone::clone(value))
13972     }
13973 }
13974 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PaneThemeTransition {
13975     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13976         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
13977     }
13978 }
13979 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PaneThemeTransition {
13980     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
13981         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
13982     }
13983 }
13984 impl ::std::convert::From<PaneThemeTransition> for ::windows::runtime::IInspectable {
13985     fn from(value: PaneThemeTransition) -> Self {
13986         value.0
13987     }
13988 }
13989 impl ::std::convert::From<&PaneThemeTransition> for ::windows::runtime::IInspectable {
13990     fn from(value: &PaneThemeTransition) -> Self {
13991         value.0.clone()
13992     }
13993 }
13994 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PaneThemeTransition {
13995     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
13996         ::windows::runtime::Param::Owned(self.0)
13997     }
13998 }
13999 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PaneThemeTransition {
14000     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
14001         ::windows::runtime::Param::Borrowed(&self.0)
14002     }
14003 }
14004 impl ::std::convert::From<PaneThemeTransition> for Transition {
14005     fn from(value: PaneThemeTransition) -> Self {
14006         ::std::convert::Into::<Transition>::into(&value)
14007     }
14008 }
14009 impl ::std::convert::From<&PaneThemeTransition> for Transition {
14010     fn from(value: &PaneThemeTransition) -> Self {
14011         ::windows::runtime::Interface::cast(value).unwrap()
14012     }
14013 }
14014 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for PaneThemeTransition {
14015     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
14016         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(self))
14017     }
14018 }
14019 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for &PaneThemeTransition {
14020     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
14021         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(::std::clone::Clone::clone(self)))
14022     }
14023 }
14024 impl ::std::convert::From<PaneThemeTransition> for super::super::DependencyObject {
14025     fn from(value: PaneThemeTransition) -> Self {
14026         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
14027     }
14028 }
14029 impl ::std::convert::From<&PaneThemeTransition> for super::super::DependencyObject {
14030     fn from(value: &PaneThemeTransition) -> Self {
14031         ::windows::runtime::Interface::cast(value).unwrap()
14032     }
14033 }
14034 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PaneThemeTransition {
14035     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
14036         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
14037     }
14038 }
14039 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PaneThemeTransition {
14040     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
14041         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
14042     }
14043 }
14044 unsafe impl ::std::marker::Send for PaneThemeTransition {}
14045 unsafe impl ::std::marker::Sync for PaneThemeTransition {}
14046 #[repr(transparent)]
14047 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
14048 pub struct PointAnimation(::windows::runtime::IInspectable);
14049 impl PointAnimation {
14050     pub fn new() -> ::windows::runtime::Result<Self> {
14051         Self::IActivationFactory(|f| f.activate_instance::<Self>())
14052     }
14053     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
14054         static mut SHARED: ::windows::runtime::FactoryCache<PointAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
14055         unsafe { SHARED.call(callback) }
14056     }
14057     #[cfg(feature = "Foundation")]
14058     pub fn From(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::Point>> {
14059         let this = self;
14060         unsafe {
14061             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14062             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::Point>>(result__)
14063         }
14064     }
14065     #[cfg(feature = "Foundation")]
14066     pub fn SetFrom<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::Point>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14067         let this = self;
14068         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14069     }
14070     #[cfg(feature = "Foundation")]
14071     pub fn To(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::Point>> {
14072         let this = self;
14073         unsafe {
14074             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14075             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::Point>>(result__)
14076         }
14077     }
14078     #[cfg(feature = "Foundation")]
14079     pub fn SetTo<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::Point>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14080         let this = self;
14081         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14082     }
14083     #[cfg(feature = "Foundation")]
14084     pub fn By(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::Point>> {
14085         let this = self;
14086         unsafe {
14087             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14088             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::Point>>(result__)
14089         }
14090     }
14091     #[cfg(feature = "Foundation")]
14092     pub fn SetBy<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::Point>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14093         let this = self;
14094         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14095     }
14096     pub fn EasingFunction(&self) -> ::windows::runtime::Result<EasingFunctionBase> {
14097         let this = self;
14098         unsafe {
14099             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14100             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingFunctionBase>(result__)
14101         }
14102     }
14103     pub fn SetEasingFunction<'a, Param0: ::windows::runtime::IntoParam<'a, EasingFunctionBase>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14104         let this = self;
14105         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14106     }
14107     pub fn EnableDependentAnimation(&self) -> ::windows::runtime::Result<bool> {
14108         let this = self;
14109         unsafe {
14110             let mut result__: bool = ::std::mem::zeroed();
14111             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
14112         }
14113     }
14114     pub fn SetEnableDependentAnimation(&self, value: bool) -> ::windows::runtime::Result<()> {
14115         let this = self;
14116         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
14117     }
14118     pub fn FromProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
14119         Self::IPointAnimationStatics(|this| unsafe {
14120             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14121             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
14122         })
14123     }
14124     pub fn ToProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
14125         Self::IPointAnimationStatics(|this| unsafe {
14126             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14127             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
14128         })
14129     }
14130     pub fn ByProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
14131         Self::IPointAnimationStatics(|this| unsafe {
14132             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14133             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
14134         })
14135     }
14136     pub fn EasingFunctionProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
14137         Self::IPointAnimationStatics(|this| unsafe {
14138             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14139             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
14140         })
14141     }
14142     pub fn EnableDependentAnimationProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
14143         Self::IPointAnimationStatics(|this| unsafe {
14144             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14145             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
14146         })
14147     }
14148     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14149         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14150         unsafe {
14151             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14152             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
14153         }
14154     }
14155     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
14156         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14157         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
14158     }
14159     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
14160         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14161         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
14162     }
14163     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14164         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14165         unsafe {
14166             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14167             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
14168         }
14169     }
14170     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14171         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14172         unsafe {
14173             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14174             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
14175         }
14176     }
14177     #[cfg(feature = "UI_Core")]
14178     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
14179         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14180         unsafe {
14181             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14182             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
14183         }
14184     }
14185     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
14186         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
14187         unsafe {
14188             let mut result__: i64 = ::std::mem::zeroed();
14189             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
14190         }
14191     }
14192     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
14193         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
14194         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
14195     }
14196     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
14197         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14198         unsafe {
14199             let mut result__: bool = ::std::mem::zeroed();
14200             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
14201         }
14202     }
14203     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
14204         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14205         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
14206     }
14207     #[cfg(feature = "Foundation")]
14208     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
14209         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14210         unsafe {
14211             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14212             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
14213         }
14214     }
14215     #[cfg(feature = "Foundation")]
14216     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14217         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14218         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14219     }
14220     #[cfg(feature = "Foundation")]
14221     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
14222         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14223         unsafe {
14224             let mut result__: super::super::Duration = ::std::mem::zeroed();
14225             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
14226         }
14227     }
14228     #[cfg(feature = "Foundation")]
14229     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14230         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14231         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14232     }
14233     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
14234         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14235         unsafe {
14236             let mut result__: f64 = ::std::mem::zeroed();
14237             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
14238         }
14239     }
14240     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
14241         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14242         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
14243     }
14244     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
14245         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14246         unsafe {
14247             let mut result__: FillBehavior = ::std::mem::zeroed();
14248             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
14249         }
14250     }
14251     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
14252         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14253         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
14254     }
14255     #[cfg(feature = "Foundation")]
14256     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
14257         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14258         unsafe {
14259             let mut result__: RepeatBehavior = ::std::mem::zeroed();
14260             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
14261         }
14262     }
14263     #[cfg(feature = "Foundation")]
14264     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14265         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14266         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14267     }
14268     #[cfg(feature = "Foundation")]
14269     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
14270         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14271         unsafe {
14272             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
14273             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
14274         }
14275     }
14276     #[cfg(feature = "Foundation")]
14277     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
14278         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14279         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
14280     }
14281     pub fn IPointAnimationStatics<R, F: FnOnce(&IPointAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
14282         static mut SHARED: ::windows::runtime::FactoryCache<PointAnimation, IPointAnimationStatics> = ::windows::runtime::FactoryCache::new();
14283         unsafe { SHARED.call(callback) }
14284     }
14285 }
14286 unsafe impl ::windows::runtime::RuntimeType for PointAnimation {
14287     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PointAnimation;{30f04312-7726-4f88-b8e2-2fa54518963b})");
14288 }
14289 unsafe impl ::windows::runtime::Interface for PointAnimation {
14290     type Vtable = IPointAnimation_abi;
14291     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(821052178, 30502, 20360, [184, 226, 47, 165, 69, 24, 150, 59]);
14292 }
14293 impl ::windows::runtime::RuntimeName for PointAnimation {
14294     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PointAnimation";
14295 }
14296 impl ::std::convert::From<PointAnimation> for ::windows::runtime::IUnknown {
14297     fn from(value: PointAnimation) -> Self {
14298         unsafe { ::std::mem::transmute(value) }
14299     }
14300 }
14301 impl ::std::convert::From<&PointAnimation> for ::windows::runtime::IUnknown {
14302     fn from(value: &PointAnimation) -> Self {
14303         ::std::convert::From::from(::std::clone::Clone::clone(value))
14304     }
14305 }
14306 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PointAnimation {
14307     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
14308         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
14309     }
14310 }
14311 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PointAnimation {
14312     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
14313         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
14314     }
14315 }
14316 impl ::std::convert::From<PointAnimation> for ::windows::runtime::IInspectable {
14317     fn from(value: PointAnimation) -> Self {
14318         value.0
14319     }
14320 }
14321 impl ::std::convert::From<&PointAnimation> for ::windows::runtime::IInspectable {
14322     fn from(value: &PointAnimation) -> Self {
14323         value.0.clone()
14324     }
14325 }
14326 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PointAnimation {
14327     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
14328         ::windows::runtime::Param::Owned(self.0)
14329     }
14330 }
14331 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PointAnimation {
14332     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
14333         ::windows::runtime::Param::Borrowed(&self.0)
14334     }
14335 }
14336 impl ::std::convert::From<PointAnimation> for Timeline {
14337     fn from(value: PointAnimation) -> Self {
14338         ::std::convert::Into::<Timeline>::into(&value)
14339     }
14340 }
14341 impl ::std::convert::From<&PointAnimation> for Timeline {
14342     fn from(value: &PointAnimation) -> Self {
14343         ::windows::runtime::Interface::cast(value).unwrap()
14344     }
14345 }
14346 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for PointAnimation {
14347     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
14348         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
14349     }
14350 }
14351 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &PointAnimation {
14352     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
14353         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
14354     }
14355 }
14356 impl ::std::convert::From<PointAnimation> for super::super::DependencyObject {
14357     fn from(value: PointAnimation) -> Self {
14358         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
14359     }
14360 }
14361 impl ::std::convert::From<&PointAnimation> for super::super::DependencyObject {
14362     fn from(value: &PointAnimation) -> Self {
14363         ::windows::runtime::Interface::cast(value).unwrap()
14364     }
14365 }
14366 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PointAnimation {
14367     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
14368         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
14369     }
14370 }
14371 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PointAnimation {
14372     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
14373         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
14374     }
14375 }
14376 unsafe impl ::std::marker::Send for PointAnimation {}
14377 unsafe impl ::std::marker::Sync for PointAnimation {}
14378 #[repr(transparent)]
14379 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
14380 pub struct PointAnimationUsingKeyFrames(::windows::runtime::IInspectable);
14381 impl PointAnimationUsingKeyFrames {
14382     pub fn new() -> ::windows::runtime::Result<Self> {
14383         Self::IActivationFactory(|f| f.activate_instance::<Self>())
14384     }
14385     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
14386         static mut SHARED: ::windows::runtime::FactoryCache<PointAnimationUsingKeyFrames, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
14387         unsafe { SHARED.call(callback) }
14388     }
14389     #[cfg(feature = "Foundation_Collections")]
14390     pub fn KeyFrames(&self) -> ::windows::runtime::Result<PointKeyFrameCollection> {
14391         let this = self;
14392         unsafe {
14393             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14394             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PointKeyFrameCollection>(result__)
14395         }
14396     }
14397     pub fn EnableDependentAnimation(&self) -> ::windows::runtime::Result<bool> {
14398         let this = self;
14399         unsafe {
14400             let mut result__: bool = ::std::mem::zeroed();
14401             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
14402         }
14403     }
14404     pub fn SetEnableDependentAnimation(&self, value: bool) -> ::windows::runtime::Result<()> {
14405         let this = self;
14406         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
14407     }
14408     pub fn EnableDependentAnimationProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
14409         Self::IPointAnimationUsingKeyFramesStatics(|this| unsafe {
14410             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14411             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
14412         })
14413     }
14414     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14415         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14416         unsafe {
14417             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14418             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
14419         }
14420     }
14421     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
14422         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14423         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
14424     }
14425     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
14426         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14427         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
14428     }
14429     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14430         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14431         unsafe {
14432             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14433             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
14434         }
14435     }
14436     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14437         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14438         unsafe {
14439             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14440             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
14441         }
14442     }
14443     #[cfg(feature = "UI_Core")]
14444     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
14445         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14446         unsafe {
14447             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14448             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
14449         }
14450     }
14451     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
14452         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
14453         unsafe {
14454             let mut result__: i64 = ::std::mem::zeroed();
14455             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
14456         }
14457     }
14458     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
14459         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
14460         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
14461     }
14462     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
14463         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14464         unsafe {
14465             let mut result__: bool = ::std::mem::zeroed();
14466             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
14467         }
14468     }
14469     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
14470         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14471         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
14472     }
14473     #[cfg(feature = "Foundation")]
14474     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
14475         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14476         unsafe {
14477             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14478             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
14479         }
14480     }
14481     #[cfg(feature = "Foundation")]
14482     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14483         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14484         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14485     }
14486     #[cfg(feature = "Foundation")]
14487     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
14488         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14489         unsafe {
14490             let mut result__: super::super::Duration = ::std::mem::zeroed();
14491             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
14492         }
14493     }
14494     #[cfg(feature = "Foundation")]
14495     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14496         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14497         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14498     }
14499     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
14500         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14501         unsafe {
14502             let mut result__: f64 = ::std::mem::zeroed();
14503             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
14504         }
14505     }
14506     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
14507         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14508         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
14509     }
14510     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
14511         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14512         unsafe {
14513             let mut result__: FillBehavior = ::std::mem::zeroed();
14514             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
14515         }
14516     }
14517     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
14518         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14519         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
14520     }
14521     #[cfg(feature = "Foundation")]
14522     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
14523         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14524         unsafe {
14525             let mut result__: RepeatBehavior = ::std::mem::zeroed();
14526             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
14527         }
14528     }
14529     #[cfg(feature = "Foundation")]
14530     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14531         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14532         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14533     }
14534     #[cfg(feature = "Foundation")]
14535     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
14536         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14537         unsafe {
14538             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
14539             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
14540         }
14541     }
14542     #[cfg(feature = "Foundation")]
14543     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
14544         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
14545         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
14546     }
14547     pub fn IPointAnimationUsingKeyFramesStatics<R, F: FnOnce(&IPointAnimationUsingKeyFramesStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
14548         static mut SHARED: ::windows::runtime::FactoryCache<PointAnimationUsingKeyFrames, IPointAnimationUsingKeyFramesStatics> = ::windows::runtime::FactoryCache::new();
14549         unsafe { SHARED.call(callback) }
14550     }
14551 }
14552 unsafe impl ::windows::runtime::RuntimeType for PointAnimationUsingKeyFrames {
14553     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PointAnimationUsingKeyFrames;{9b944f72-446a-41d0-a129-41a620f4595d})");
14554 }
14555 unsafe impl ::windows::runtime::Interface for PointAnimationUsingKeyFrames {
14556     type Vtable = IPointAnimationUsingKeyFrames_abi;
14557     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2610188146, 17514, 16848, [161, 41, 65, 166, 32, 244, 89, 93]);
14558 }
14559 impl ::windows::runtime::RuntimeName for PointAnimationUsingKeyFrames {
14560     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PointAnimationUsingKeyFrames";
14561 }
14562 impl ::std::convert::From<PointAnimationUsingKeyFrames> for ::windows::runtime::IUnknown {
14563     fn from(value: PointAnimationUsingKeyFrames) -> Self {
14564         unsafe { ::std::mem::transmute(value) }
14565     }
14566 }
14567 impl ::std::convert::From<&PointAnimationUsingKeyFrames> for ::windows::runtime::IUnknown {
14568     fn from(value: &PointAnimationUsingKeyFrames) -> Self {
14569         ::std::convert::From::from(::std::clone::Clone::clone(value))
14570     }
14571 }
14572 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PointAnimationUsingKeyFrames {
14573     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
14574         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
14575     }
14576 }
14577 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PointAnimationUsingKeyFrames {
14578     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
14579         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
14580     }
14581 }
14582 impl ::std::convert::From<PointAnimationUsingKeyFrames> for ::windows::runtime::IInspectable {
14583     fn from(value: PointAnimationUsingKeyFrames) -> Self {
14584         value.0
14585     }
14586 }
14587 impl ::std::convert::From<&PointAnimationUsingKeyFrames> for ::windows::runtime::IInspectable {
14588     fn from(value: &PointAnimationUsingKeyFrames) -> Self {
14589         value.0.clone()
14590     }
14591 }
14592 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PointAnimationUsingKeyFrames {
14593     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
14594         ::windows::runtime::Param::Owned(self.0)
14595     }
14596 }
14597 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PointAnimationUsingKeyFrames {
14598     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
14599         ::windows::runtime::Param::Borrowed(&self.0)
14600     }
14601 }
14602 impl ::std::convert::From<PointAnimationUsingKeyFrames> for Timeline {
14603     fn from(value: PointAnimationUsingKeyFrames) -> Self {
14604         ::std::convert::Into::<Timeline>::into(&value)
14605     }
14606 }
14607 impl ::std::convert::From<&PointAnimationUsingKeyFrames> for Timeline {
14608     fn from(value: &PointAnimationUsingKeyFrames) -> Self {
14609         ::windows::runtime::Interface::cast(value).unwrap()
14610     }
14611 }
14612 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for PointAnimationUsingKeyFrames {
14613     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
14614         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
14615     }
14616 }
14617 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &PointAnimationUsingKeyFrames {
14618     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
14619         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
14620     }
14621 }
14622 impl ::std::convert::From<PointAnimationUsingKeyFrames> for super::super::DependencyObject {
14623     fn from(value: PointAnimationUsingKeyFrames) -> Self {
14624         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
14625     }
14626 }
14627 impl ::std::convert::From<&PointAnimationUsingKeyFrames> for super::super::DependencyObject {
14628     fn from(value: &PointAnimationUsingKeyFrames) -> Self {
14629         ::windows::runtime::Interface::cast(value).unwrap()
14630     }
14631 }
14632 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PointAnimationUsingKeyFrames {
14633     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
14634         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
14635     }
14636 }
14637 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PointAnimationUsingKeyFrames {
14638     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
14639         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
14640     }
14641 }
14642 unsafe impl ::std::marker::Send for PointAnimationUsingKeyFrames {}
14643 unsafe impl ::std::marker::Sync for PointAnimationUsingKeyFrames {}
14644 #[repr(transparent)]
14645 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
14646 pub struct PointKeyFrame(::windows::runtime::IInspectable);
14647 impl PointKeyFrame {
14648     #[cfg(feature = "Foundation")]
14649     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Point> {
14650         let this = self;
14651         unsafe {
14652             let mut result__: super::super::super::super::Foundation::Point = ::std::mem::zeroed();
14653             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Point>(result__)
14654         }
14655     }
14656     #[cfg(feature = "Foundation")]
14657     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Point>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14658         let this = self;
14659         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14660     }
14661     #[cfg(feature = "Foundation")]
14662     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
14663         let this = self;
14664         unsafe {
14665             let mut result__: KeyTime = ::std::mem::zeroed();
14666             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
14667         }
14668     }
14669     #[cfg(feature = "Foundation")]
14670     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14671         let this = self;
14672         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14673     }
14674     pub fn ValueProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
14675         Self::IPointKeyFrameStatics(|this| unsafe {
14676             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14677             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
14678         })
14679     }
14680     pub fn KeyTimeProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
14681         Self::IPointKeyFrameStatics(|this| unsafe {
14682             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14683             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
14684         })
14685     }
14686     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14687         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14688         unsafe {
14689             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14690             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
14691         }
14692     }
14693     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
14694         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14695         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
14696     }
14697     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
14698         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14699         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
14700     }
14701     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14702         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14703         unsafe {
14704             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14705             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
14706         }
14707     }
14708     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
14709         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14710         unsafe {
14711             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14712             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
14713         }
14714     }
14715     #[cfg(feature = "UI_Core")]
14716     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
14717         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
14718         unsafe {
14719             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14720             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
14721         }
14722     }
14723     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
14724         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
14725         unsafe {
14726             let mut result__: i64 = ::std::mem::zeroed();
14727             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
14728         }
14729     }
14730     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
14731         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
14732         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
14733     }
14734     pub fn IPointKeyFrameStatics<R, F: FnOnce(&IPointKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
14735         static mut SHARED: ::windows::runtime::FactoryCache<PointKeyFrame, IPointKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
14736         unsafe { SHARED.call(callback) }
14737     }
14738 }
14739 unsafe impl ::windows::runtime::RuntimeType for PointKeyFrame {
14740     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PointKeyFrame;{fcc88d01-7f82-4dae-8026-7b7e086878b3})");
14741 }
14742 unsafe impl ::windows::runtime::Interface for PointKeyFrame {
14743     type Vtable = IPointKeyFrame_abi;
14744     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4241001729, 32642, 19886, [128, 38, 123, 126, 8, 104, 120, 179]);
14745 }
14746 impl ::windows::runtime::RuntimeName for PointKeyFrame {
14747     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PointKeyFrame";
14748 }
14749 impl ::std::convert::From<PointKeyFrame> for ::windows::runtime::IUnknown {
14750     fn from(value: PointKeyFrame) -> Self {
14751         unsafe { ::std::mem::transmute(value) }
14752     }
14753 }
14754 impl ::std::convert::From<&PointKeyFrame> for ::windows::runtime::IUnknown {
14755     fn from(value: &PointKeyFrame) -> Self {
14756         ::std::convert::From::from(::std::clone::Clone::clone(value))
14757     }
14758 }
14759 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PointKeyFrame {
14760     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
14761         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
14762     }
14763 }
14764 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PointKeyFrame {
14765     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
14766         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
14767     }
14768 }
14769 impl ::std::convert::From<PointKeyFrame> for ::windows::runtime::IInspectable {
14770     fn from(value: PointKeyFrame) -> Self {
14771         value.0
14772     }
14773 }
14774 impl ::std::convert::From<&PointKeyFrame> for ::windows::runtime::IInspectable {
14775     fn from(value: &PointKeyFrame) -> Self {
14776         value.0.clone()
14777     }
14778 }
14779 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PointKeyFrame {
14780     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
14781         ::windows::runtime::Param::Owned(self.0)
14782     }
14783 }
14784 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PointKeyFrame {
14785     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
14786         ::windows::runtime::Param::Borrowed(&self.0)
14787     }
14788 }
14789 impl ::std::convert::From<PointKeyFrame> for super::super::DependencyObject {
14790     fn from(value: PointKeyFrame) -> Self {
14791         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
14792     }
14793 }
14794 impl ::std::convert::From<&PointKeyFrame> for super::super::DependencyObject {
14795     fn from(value: &PointKeyFrame) -> Self {
14796         ::windows::runtime::Interface::cast(value).unwrap()
14797     }
14798 }
14799 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PointKeyFrame {
14800     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
14801         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
14802     }
14803 }
14804 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PointKeyFrame {
14805     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
14806         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
14807     }
14808 }
14809 unsafe impl ::std::marker::Send for PointKeyFrame {}
14810 unsafe impl ::std::marker::Sync for PointKeyFrame {}
14811 #[cfg(feature = "Foundation_Collections")]
14812 #[repr(transparent)]
14813 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
14814 pub struct PointKeyFrameCollection(::windows::runtime::IInspectable);
14815 #[cfg(feature = "Foundation_Collections")]
14816 impl PointKeyFrameCollection {
14817     pub fn new() -> ::windows::runtime::Result<Self> {
14818         Self::IActivationFactory(|f| f.activate_instance::<Self>())
14819     }
14820     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
14821         static mut SHARED: ::windows::runtime::FactoryCache<PointKeyFrameCollection, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
14822         unsafe { SHARED.call(callback) }
14823     }
14824     #[cfg(feature = "Foundation_Collections")]
14825     pub fn GetAt(&self, index: u32) -> ::windows::runtime::Result<PointKeyFrame> {
14826         let this = self;
14827         unsafe {
14828             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14829             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), index, &mut result__).from_abi::<PointKeyFrame>(result__)
14830         }
14831     }
14832     #[cfg(feature = "Foundation_Collections")]
14833     pub fn Size(&self) -> ::windows::runtime::Result<u32> {
14834         let this = self;
14835         unsafe {
14836             let mut result__: u32 = ::std::mem::zeroed();
14837             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
14838         }
14839     }
14840     #[cfg(feature = "Foundation_Collections")]
14841     pub fn GetView(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IVectorView<PointKeyFrame>> {
14842         let this = self;
14843         unsafe {
14844             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14845             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IVectorView<PointKeyFrame>>(result__)
14846         }
14847     }
14848     #[cfg(feature = "Foundation_Collections")]
14849     pub fn IndexOf<'a, Param0: ::windows::runtime::IntoParam<'a, PointKeyFrame>>(&self, value: Param0, index: &mut u32) -> ::windows::runtime::Result<bool> {
14850         let this = self;
14851         unsafe {
14852             let mut result__: bool = ::std::mem::zeroed();
14853             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi(), index, &mut result__).from_abi::<bool>(result__)
14854         }
14855     }
14856     #[cfg(feature = "Foundation_Collections")]
14857     pub fn SetAt<'a, Param1: ::windows::runtime::IntoParam<'a, PointKeyFrame>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
14858         let this = self;
14859         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
14860     }
14861     #[cfg(feature = "Foundation_Collections")]
14862     pub fn InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, PointKeyFrame>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
14863         let this = self;
14864         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
14865     }
14866     #[cfg(feature = "Foundation_Collections")]
14867     pub fn RemoveAt(&self, index: u32) -> ::windows::runtime::Result<()> {
14868         let this = self;
14869         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), index).ok() }
14870     }
14871     #[cfg(feature = "Foundation_Collections")]
14872     pub fn Append<'a, Param0: ::windows::runtime::IntoParam<'a, PointKeyFrame>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
14873         let this = self;
14874         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
14875     }
14876     #[cfg(feature = "Foundation_Collections")]
14877     pub fn RemoveAtEnd(&self) -> ::windows::runtime::Result<()> {
14878         let this = self;
14879         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
14880     }
14881     #[cfg(feature = "Foundation_Collections")]
14882     pub fn Clear(&self) -> ::windows::runtime::Result<()> {
14883         let this = self;
14884         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this)).ok() }
14885     }
14886     #[cfg(feature = "Foundation_Collections")]
14887     pub fn GetMany(&self, startindex: u32, items: &mut [<PointKeyFrame as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<u32> {
14888         let this = self;
14889         unsafe {
14890             let mut result__: u32 = ::std::mem::zeroed();
14891             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), startindex, items.len() as u32, ::std::mem::transmute_copy(&items), &mut result__).from_abi::<u32>(result__)
14892         }
14893     }
14894     #[cfg(feature = "Foundation_Collections")]
14895     pub fn ReplaceAll(&self, items: &[<PointKeyFrame as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<()> {
14896         let this = self;
14897         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), items.len() as u32, ::std::mem::transmute(items.as_ptr())).ok() }
14898     }
14899     #[cfg(feature = "Foundation_Collections")]
14900     pub fn First(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IIterator<PointKeyFrame>> {
14901         let this = &::windows::runtime::Interface::cast::<super::super::super::super::Foundation::Collections::IIterable<PointKeyFrame>>(self)?;
14902         unsafe {
14903             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
14904             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IIterator<PointKeyFrame>>(result__)
14905         }
14906     }
14907 }
14908 #[cfg(feature = "Foundation_Collections")]
14909 unsafe impl ::windows::runtime::RuntimeType for PointKeyFrameCollection {
14910     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PointKeyFrameCollection;pinterface({913337e9-11a1-4345-a3a2-4e7f956e222d};rc(Windows.UI.Xaml.Media.Animation.PointKeyFrame;{fcc88d01-7f82-4dae-8026-7b7e086878b3})))");
14911 }
14912 #[cfg(feature = "Foundation_Collections")]
14913 unsafe impl ::windows::runtime::Interface for PointKeyFrameCollection {
14914     type Vtable = super::super::super::super::Foundation::Collections::IVector_abi<PointKeyFrame>;
14915     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_signature(<super::super::super::super::Foundation::Collections::IVector<PointKeyFrame> as ::windows::runtime::RuntimeType>::SIGNATURE);
14916 }
14917 #[cfg(feature = "Foundation_Collections")]
14918 impl ::windows::runtime::RuntimeName for PointKeyFrameCollection {
14919     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PointKeyFrameCollection";
14920 }
14921 #[cfg(feature = "Foundation_Collections")]
14922 impl ::std::convert::From<PointKeyFrameCollection> for ::windows::runtime::IUnknown {
14923     fn from(value: PointKeyFrameCollection) -> Self {
14924         unsafe { ::std::mem::transmute(value) }
14925     }
14926 }
14927 #[cfg(feature = "Foundation_Collections")]
14928 impl ::std::convert::From<&PointKeyFrameCollection> for ::windows::runtime::IUnknown {
14929     fn from(value: &PointKeyFrameCollection) -> Self {
14930         ::std::convert::From::from(::std::clone::Clone::clone(value))
14931     }
14932 }
14933 #[cfg(feature = "Foundation_Collections")]
14934 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PointKeyFrameCollection {
14935     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
14936         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
14937     }
14938 }
14939 #[cfg(feature = "Foundation_Collections")]
14940 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PointKeyFrameCollection {
14941     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
14942         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
14943     }
14944 }
14945 #[cfg(feature = "Foundation_Collections")]
14946 impl ::std::convert::From<PointKeyFrameCollection> for ::windows::runtime::IInspectable {
14947     fn from(value: PointKeyFrameCollection) -> Self {
14948         value.0
14949     }
14950 }
14951 #[cfg(feature = "Foundation_Collections")]
14952 impl ::std::convert::From<&PointKeyFrameCollection> for ::windows::runtime::IInspectable {
14953     fn from(value: &PointKeyFrameCollection) -> Self {
14954         value.0.clone()
14955     }
14956 }
14957 #[cfg(feature = "Foundation_Collections")]
14958 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PointKeyFrameCollection {
14959     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
14960         ::windows::runtime::Param::Owned(self.0)
14961     }
14962 }
14963 #[cfg(feature = "Foundation_Collections")]
14964 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PointKeyFrameCollection {
14965     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
14966         ::windows::runtime::Param::Borrowed(&self.0)
14967     }
14968 }
14969 #[cfg(feature = "Foundation_Collections")]
14970 impl ::std::convert::From<PointKeyFrameCollection> for super::super::super::super::Foundation::Collections::IVector<PointKeyFrame> {
14971     fn from(value: PointKeyFrameCollection) -> Self {
14972         unsafe { ::std::mem::transmute(value) }
14973     }
14974 }
14975 #[cfg(feature = "Foundation_Collections")]
14976 impl ::std::convert::From<&PointKeyFrameCollection> for super::super::super::super::Foundation::Collections::IVector<PointKeyFrame> {
14977     fn from(value: &PointKeyFrameCollection) -> Self {
14978         ::std::convert::From::from(::std::clone::Clone::clone(value))
14979     }
14980 }
14981 #[cfg(feature = "Foundation_Collections")]
14982 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<PointKeyFrame>> for PointKeyFrameCollection {
14983     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<PointKeyFrame>> {
14984         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<PointKeyFrame>>::into(self))
14985     }
14986 }
14987 #[cfg(feature = "Foundation_Collections")]
14988 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<PointKeyFrame>> for &PointKeyFrameCollection {
14989     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<PointKeyFrame>> {
14990         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<PointKeyFrame>>::into(::std::clone::Clone::clone(self)))
14991     }
14992 }
14993 #[cfg(feature = "Foundation_Collections")]
14994 impl ::std::convert::TryFrom<PointKeyFrameCollection> for super::super::super::super::Foundation::Collections::IIterable<PointKeyFrame> {
14995     type Error = ::windows::runtime::Error;
14996     fn try_from(value: PointKeyFrameCollection) -> ::windows::runtime::Result<Self> {
14997         ::std::convert::TryFrom::try_from(&value)
14998     }
14999 }
15000 #[cfg(feature = "Foundation_Collections")]
15001 impl ::std::convert::TryFrom<&PointKeyFrameCollection> for super::super::super::super::Foundation::Collections::IIterable<PointKeyFrame> {
15002     type Error = ::windows::runtime::Error;
15003     fn try_from(value: &PointKeyFrameCollection) -> ::windows::runtime::Result<Self> {
15004         ::windows::runtime::Interface::cast(value)
15005     }
15006 }
15007 #[cfg(feature = "Foundation_Collections")]
15008 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<PointKeyFrame>> for PointKeyFrameCollection {
15009     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<PointKeyFrame>> {
15010         ::windows::runtime::IntoParam::into_param(&self)
15011     }
15012 }
15013 #[cfg(feature = "Foundation_Collections")]
15014 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<PointKeyFrame>> for &PointKeyFrameCollection {
15015     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<PointKeyFrame>> {
15016         ::std::convert::TryInto::<super::super::super::super::Foundation::Collections::IIterable<PointKeyFrame>>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
15017     }
15018 }
15019 #[cfg(feature = "Foundation_Collections")]
15020 unsafe impl ::std::marker::Send for PointKeyFrameCollection {}
15021 #[cfg(feature = "Foundation_Collections")]
15022 unsafe impl ::std::marker::Sync for PointKeyFrameCollection {}
15023 #[cfg(all(feature = "Foundation_Collections"))]
15024 impl ::std::iter::IntoIterator for PointKeyFrameCollection {
15025     type Item = PointKeyFrame;
15026     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
15027     fn into_iter(self) -> Self::IntoIter {
15028         ::std::iter::IntoIterator::into_iter(&self)
15029     }
15030 }
15031 #[cfg(all(feature = "Foundation_Collections"))]
15032 impl ::std::iter::IntoIterator for &PointKeyFrameCollection {
15033     type Item = PointKeyFrame;
15034     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
15035     fn into_iter(self) -> Self::IntoIter {
15036         super::super::super::super::Foundation::Collections::VectorIterator::new(::std::convert::TryInto::try_into(self).ok())
15037     }
15038 }
15039 #[repr(transparent)]
15040 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
15041 pub struct PointerDownThemeAnimation(::windows::runtime::IInspectable);
15042 impl PointerDownThemeAnimation {
15043     pub fn new() -> ::windows::runtime::Result<Self> {
15044         Self::IActivationFactory(|f| f.activate_instance::<Self>())
15045     }
15046     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
15047         static mut SHARED: ::windows::runtime::FactoryCache<PointerDownThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
15048         unsafe { SHARED.call(callback) }
15049     }
15050     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
15051         let this = self;
15052         unsafe {
15053             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
15054             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
15055         }
15056     }
15057     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15058         let this = self;
15059         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15060     }
15061     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
15062         Self::IPointerDownThemeAnimationStatics(|this| unsafe {
15063             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15064             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
15065         })
15066     }
15067     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15068         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15069         unsafe {
15070             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15071             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15072         }
15073     }
15074     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
15075         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15076         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
15077     }
15078     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
15079         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15080         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
15081     }
15082     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15083         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15084         unsafe {
15085             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15086             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15087         }
15088     }
15089     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15090         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15091         unsafe {
15092             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15093             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15094         }
15095     }
15096     #[cfg(feature = "UI_Core")]
15097     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
15098         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15099         unsafe {
15100             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15101             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
15102         }
15103     }
15104     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
15105         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
15106         unsafe {
15107             let mut result__: i64 = ::std::mem::zeroed();
15108             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
15109         }
15110     }
15111     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
15112         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
15113         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
15114     }
15115     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
15116         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15117         unsafe {
15118             let mut result__: bool = ::std::mem::zeroed();
15119             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
15120         }
15121     }
15122     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
15123         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15124         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
15125     }
15126     #[cfg(feature = "Foundation")]
15127     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
15128         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15129         unsafe {
15130             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15131             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
15132         }
15133     }
15134     #[cfg(feature = "Foundation")]
15135     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15136         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15137         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15138     }
15139     #[cfg(feature = "Foundation")]
15140     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
15141         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15142         unsafe {
15143             let mut result__: super::super::Duration = ::std::mem::zeroed();
15144             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
15145         }
15146     }
15147     #[cfg(feature = "Foundation")]
15148     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15149         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15150         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15151     }
15152     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
15153         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15154         unsafe {
15155             let mut result__: f64 = ::std::mem::zeroed();
15156             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
15157         }
15158     }
15159     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
15160         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15161         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
15162     }
15163     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
15164         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15165         unsafe {
15166             let mut result__: FillBehavior = ::std::mem::zeroed();
15167             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
15168         }
15169     }
15170     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
15171         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15172         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
15173     }
15174     #[cfg(feature = "Foundation")]
15175     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
15176         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15177         unsafe {
15178             let mut result__: RepeatBehavior = ::std::mem::zeroed();
15179             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
15180         }
15181     }
15182     #[cfg(feature = "Foundation")]
15183     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15184         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15185         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15186     }
15187     #[cfg(feature = "Foundation")]
15188     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
15189         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15190         unsafe {
15191             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
15192             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
15193         }
15194     }
15195     #[cfg(feature = "Foundation")]
15196     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
15197         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15198         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
15199     }
15200     pub fn IPointerDownThemeAnimationStatics<R, F: FnOnce(&IPointerDownThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
15201         static mut SHARED: ::windows::runtime::FactoryCache<PointerDownThemeAnimation, IPointerDownThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
15202         unsafe { SHARED.call(callback) }
15203     }
15204 }
15205 unsafe impl ::windows::runtime::RuntimeType for PointerDownThemeAnimation {
15206     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PointerDownThemeAnimation;{b58e714e-c49d-4788-a233-0ae85d99dd5a})");
15207 }
15208 unsafe impl ::windows::runtime::Interface for PointerDownThemeAnimation {
15209     type Vtable = IPointerDownThemeAnimation_abi;
15210     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3046011214, 50333, 18312, [162, 51, 10, 232, 93, 153, 221, 90]);
15211 }
15212 impl ::windows::runtime::RuntimeName for PointerDownThemeAnimation {
15213     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PointerDownThemeAnimation";
15214 }
15215 impl ::std::convert::From<PointerDownThemeAnimation> for ::windows::runtime::IUnknown {
15216     fn from(value: PointerDownThemeAnimation) -> Self {
15217         unsafe { ::std::mem::transmute(value) }
15218     }
15219 }
15220 impl ::std::convert::From<&PointerDownThemeAnimation> for ::windows::runtime::IUnknown {
15221     fn from(value: &PointerDownThemeAnimation) -> Self {
15222         ::std::convert::From::from(::std::clone::Clone::clone(value))
15223     }
15224 }
15225 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PointerDownThemeAnimation {
15226     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
15227         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
15228     }
15229 }
15230 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PointerDownThemeAnimation {
15231     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
15232         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
15233     }
15234 }
15235 impl ::std::convert::From<PointerDownThemeAnimation> for ::windows::runtime::IInspectable {
15236     fn from(value: PointerDownThemeAnimation) -> Self {
15237         value.0
15238     }
15239 }
15240 impl ::std::convert::From<&PointerDownThemeAnimation> for ::windows::runtime::IInspectable {
15241     fn from(value: &PointerDownThemeAnimation) -> Self {
15242         value.0.clone()
15243     }
15244 }
15245 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PointerDownThemeAnimation {
15246     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
15247         ::windows::runtime::Param::Owned(self.0)
15248     }
15249 }
15250 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PointerDownThemeAnimation {
15251     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
15252         ::windows::runtime::Param::Borrowed(&self.0)
15253     }
15254 }
15255 impl ::std::convert::From<PointerDownThemeAnimation> for Timeline {
15256     fn from(value: PointerDownThemeAnimation) -> Self {
15257         ::std::convert::Into::<Timeline>::into(&value)
15258     }
15259 }
15260 impl ::std::convert::From<&PointerDownThemeAnimation> for Timeline {
15261     fn from(value: &PointerDownThemeAnimation) -> Self {
15262         ::windows::runtime::Interface::cast(value).unwrap()
15263     }
15264 }
15265 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for PointerDownThemeAnimation {
15266     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
15267         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
15268     }
15269 }
15270 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &PointerDownThemeAnimation {
15271     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
15272         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
15273     }
15274 }
15275 impl ::std::convert::From<PointerDownThemeAnimation> for super::super::DependencyObject {
15276     fn from(value: PointerDownThemeAnimation) -> Self {
15277         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
15278     }
15279 }
15280 impl ::std::convert::From<&PointerDownThemeAnimation> for super::super::DependencyObject {
15281     fn from(value: &PointerDownThemeAnimation) -> Self {
15282         ::windows::runtime::Interface::cast(value).unwrap()
15283     }
15284 }
15285 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PointerDownThemeAnimation {
15286     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
15287         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
15288     }
15289 }
15290 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PointerDownThemeAnimation {
15291     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
15292         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
15293     }
15294 }
15295 unsafe impl ::std::marker::Send for PointerDownThemeAnimation {}
15296 unsafe impl ::std::marker::Sync for PointerDownThemeAnimation {}
15297 #[repr(transparent)]
15298 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
15299 pub struct PointerUpThemeAnimation(::windows::runtime::IInspectable);
15300 impl PointerUpThemeAnimation {
15301     pub fn new() -> ::windows::runtime::Result<Self> {
15302         Self::IActivationFactory(|f| f.activate_instance::<Self>())
15303     }
15304     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
15305         static mut SHARED: ::windows::runtime::FactoryCache<PointerUpThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
15306         unsafe { SHARED.call(callback) }
15307     }
15308     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
15309         let this = self;
15310         unsafe {
15311             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
15312             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
15313         }
15314     }
15315     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15316         let this = self;
15317         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15318     }
15319     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
15320         Self::IPointerUpThemeAnimationStatics(|this| unsafe {
15321             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15322             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
15323         })
15324     }
15325     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15326         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15327         unsafe {
15328             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15329             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15330         }
15331     }
15332     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
15333         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15334         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
15335     }
15336     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
15337         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15338         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
15339     }
15340     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15341         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15342         unsafe {
15343             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15344             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15345         }
15346     }
15347     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15348         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15349         unsafe {
15350             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15351             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15352         }
15353     }
15354     #[cfg(feature = "UI_Core")]
15355     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
15356         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15357         unsafe {
15358             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15359             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
15360         }
15361     }
15362     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
15363         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
15364         unsafe {
15365             let mut result__: i64 = ::std::mem::zeroed();
15366             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
15367         }
15368     }
15369     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
15370         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
15371         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
15372     }
15373     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
15374         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15375         unsafe {
15376             let mut result__: bool = ::std::mem::zeroed();
15377             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
15378         }
15379     }
15380     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
15381         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15382         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
15383     }
15384     #[cfg(feature = "Foundation")]
15385     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
15386         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15387         unsafe {
15388             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15389             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
15390         }
15391     }
15392     #[cfg(feature = "Foundation")]
15393     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15394         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15395         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15396     }
15397     #[cfg(feature = "Foundation")]
15398     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
15399         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15400         unsafe {
15401             let mut result__: super::super::Duration = ::std::mem::zeroed();
15402             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
15403         }
15404     }
15405     #[cfg(feature = "Foundation")]
15406     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15407         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15408         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15409     }
15410     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
15411         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15412         unsafe {
15413             let mut result__: f64 = ::std::mem::zeroed();
15414             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
15415         }
15416     }
15417     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
15418         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15419         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
15420     }
15421     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
15422         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15423         unsafe {
15424             let mut result__: FillBehavior = ::std::mem::zeroed();
15425             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
15426         }
15427     }
15428     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
15429         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15430         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
15431     }
15432     #[cfg(feature = "Foundation")]
15433     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
15434         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15435         unsafe {
15436             let mut result__: RepeatBehavior = ::std::mem::zeroed();
15437             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
15438         }
15439     }
15440     #[cfg(feature = "Foundation")]
15441     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15442         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15443         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15444     }
15445     #[cfg(feature = "Foundation")]
15446     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
15447         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15448         unsafe {
15449             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
15450             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
15451         }
15452     }
15453     #[cfg(feature = "Foundation")]
15454     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
15455         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15456         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
15457     }
15458     pub fn IPointerUpThemeAnimationStatics<R, F: FnOnce(&IPointerUpThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
15459         static mut SHARED: ::windows::runtime::FactoryCache<PointerUpThemeAnimation, IPointerUpThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
15460         unsafe { SHARED.call(callback) }
15461     }
15462 }
15463 unsafe impl ::windows::runtime::RuntimeType for PointerUpThemeAnimation {
15464     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PointerUpThemeAnimation;{e9e9d07d-6340-4828-ad12-690694b9910b})");
15465 }
15466 unsafe impl ::windows::runtime::Interface for PointerUpThemeAnimation {
15467     type Vtable = IPointerUpThemeAnimation_abi;
15468     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3924414589, 25408, 18472, [173, 18, 105, 6, 148, 185, 145, 11]);
15469 }
15470 impl ::windows::runtime::RuntimeName for PointerUpThemeAnimation {
15471     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PointerUpThemeAnimation";
15472 }
15473 impl ::std::convert::From<PointerUpThemeAnimation> for ::windows::runtime::IUnknown {
15474     fn from(value: PointerUpThemeAnimation) -> Self {
15475         unsafe { ::std::mem::transmute(value) }
15476     }
15477 }
15478 impl ::std::convert::From<&PointerUpThemeAnimation> for ::windows::runtime::IUnknown {
15479     fn from(value: &PointerUpThemeAnimation) -> Self {
15480         ::std::convert::From::from(::std::clone::Clone::clone(value))
15481     }
15482 }
15483 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PointerUpThemeAnimation {
15484     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
15485         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
15486     }
15487 }
15488 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PointerUpThemeAnimation {
15489     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
15490         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
15491     }
15492 }
15493 impl ::std::convert::From<PointerUpThemeAnimation> for ::windows::runtime::IInspectable {
15494     fn from(value: PointerUpThemeAnimation) -> Self {
15495         value.0
15496     }
15497 }
15498 impl ::std::convert::From<&PointerUpThemeAnimation> for ::windows::runtime::IInspectable {
15499     fn from(value: &PointerUpThemeAnimation) -> Self {
15500         value.0.clone()
15501     }
15502 }
15503 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PointerUpThemeAnimation {
15504     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
15505         ::windows::runtime::Param::Owned(self.0)
15506     }
15507 }
15508 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PointerUpThemeAnimation {
15509     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
15510         ::windows::runtime::Param::Borrowed(&self.0)
15511     }
15512 }
15513 impl ::std::convert::From<PointerUpThemeAnimation> for Timeline {
15514     fn from(value: PointerUpThemeAnimation) -> Self {
15515         ::std::convert::Into::<Timeline>::into(&value)
15516     }
15517 }
15518 impl ::std::convert::From<&PointerUpThemeAnimation> for Timeline {
15519     fn from(value: &PointerUpThemeAnimation) -> Self {
15520         ::windows::runtime::Interface::cast(value).unwrap()
15521     }
15522 }
15523 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for PointerUpThemeAnimation {
15524     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
15525         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
15526     }
15527 }
15528 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &PointerUpThemeAnimation {
15529     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
15530         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
15531     }
15532 }
15533 impl ::std::convert::From<PointerUpThemeAnimation> for super::super::DependencyObject {
15534     fn from(value: PointerUpThemeAnimation) -> Self {
15535         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
15536     }
15537 }
15538 impl ::std::convert::From<&PointerUpThemeAnimation> for super::super::DependencyObject {
15539     fn from(value: &PointerUpThemeAnimation) -> Self {
15540         ::windows::runtime::Interface::cast(value).unwrap()
15541     }
15542 }
15543 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PointerUpThemeAnimation {
15544     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
15545         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
15546     }
15547 }
15548 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PointerUpThemeAnimation {
15549     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
15550         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
15551     }
15552 }
15553 unsafe impl ::std::marker::Send for PointerUpThemeAnimation {}
15554 unsafe impl ::std::marker::Sync for PointerUpThemeAnimation {}
15555 #[repr(transparent)]
15556 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
15557 pub struct PopInThemeAnimation(::windows::runtime::IInspectable);
15558 impl PopInThemeAnimation {
15559     pub fn new() -> ::windows::runtime::Result<Self> {
15560         Self::IActivationFactory(|f| f.activate_instance::<Self>())
15561     }
15562     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
15563         static mut SHARED: ::windows::runtime::FactoryCache<PopInThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
15564         unsafe { SHARED.call(callback) }
15565     }
15566     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
15567         let this = self;
15568         unsafe {
15569             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
15570             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
15571         }
15572     }
15573     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15574         let this = self;
15575         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15576     }
15577     pub fn FromHorizontalOffset(&self) -> ::windows::runtime::Result<f64> {
15578         let this = self;
15579         unsafe {
15580             let mut result__: f64 = ::std::mem::zeroed();
15581             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
15582         }
15583     }
15584     pub fn SetFromHorizontalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
15585         let this = self;
15586         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
15587     }
15588     pub fn FromVerticalOffset(&self) -> ::windows::runtime::Result<f64> {
15589         let this = self;
15590         unsafe {
15591             let mut result__: f64 = ::std::mem::zeroed();
15592             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
15593         }
15594     }
15595     pub fn SetFromVerticalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
15596         let this = self;
15597         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
15598     }
15599     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
15600         Self::IPopInThemeAnimationStatics(|this| unsafe {
15601             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15602             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
15603         })
15604     }
15605     pub fn FromHorizontalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
15606         Self::IPopInThemeAnimationStatics(|this| unsafe {
15607             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15608             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
15609         })
15610     }
15611     pub fn FromVerticalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
15612         Self::IPopInThemeAnimationStatics(|this| unsafe {
15613             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15614             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
15615         })
15616     }
15617     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15618         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15619         unsafe {
15620             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15621             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15622         }
15623     }
15624     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
15625         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15626         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
15627     }
15628     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
15629         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15630         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
15631     }
15632     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15633         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15634         unsafe {
15635             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15636             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15637         }
15638     }
15639     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15640         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15641         unsafe {
15642             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15643             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15644         }
15645     }
15646     #[cfg(feature = "UI_Core")]
15647     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
15648         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15649         unsafe {
15650             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15651             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
15652         }
15653     }
15654     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
15655         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
15656         unsafe {
15657             let mut result__: i64 = ::std::mem::zeroed();
15658             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
15659         }
15660     }
15661     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
15662         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
15663         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
15664     }
15665     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
15666         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15667         unsafe {
15668             let mut result__: bool = ::std::mem::zeroed();
15669             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
15670         }
15671     }
15672     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
15673         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15674         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
15675     }
15676     #[cfg(feature = "Foundation")]
15677     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
15678         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15679         unsafe {
15680             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15681             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
15682         }
15683     }
15684     #[cfg(feature = "Foundation")]
15685     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15686         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15687         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15688     }
15689     #[cfg(feature = "Foundation")]
15690     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
15691         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15692         unsafe {
15693             let mut result__: super::super::Duration = ::std::mem::zeroed();
15694             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
15695         }
15696     }
15697     #[cfg(feature = "Foundation")]
15698     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15699         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15700         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15701     }
15702     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
15703         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15704         unsafe {
15705             let mut result__: f64 = ::std::mem::zeroed();
15706             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
15707         }
15708     }
15709     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
15710         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15711         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
15712     }
15713     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
15714         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15715         unsafe {
15716             let mut result__: FillBehavior = ::std::mem::zeroed();
15717             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
15718         }
15719     }
15720     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
15721         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15722         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
15723     }
15724     #[cfg(feature = "Foundation")]
15725     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
15726         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15727         unsafe {
15728             let mut result__: RepeatBehavior = ::std::mem::zeroed();
15729             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
15730         }
15731     }
15732     #[cfg(feature = "Foundation")]
15733     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15734         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15735         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15736     }
15737     #[cfg(feature = "Foundation")]
15738     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
15739         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15740         unsafe {
15741             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
15742             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
15743         }
15744     }
15745     #[cfg(feature = "Foundation")]
15746     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
15747         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15748         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
15749     }
15750     pub fn IPopInThemeAnimationStatics<R, F: FnOnce(&IPopInThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
15751         static mut SHARED: ::windows::runtime::FactoryCache<PopInThemeAnimation, IPopInThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
15752         unsafe { SHARED.call(callback) }
15753     }
15754 }
15755 unsafe impl ::windows::runtime::RuntimeType for PopInThemeAnimation {
15756     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PopInThemeAnimation;{196938c1-1c07-4c28-8847-f9f055b32855})");
15757 }
15758 unsafe impl ::windows::runtime::Interface for PopInThemeAnimation {
15759     type Vtable = IPopInThemeAnimation_abi;
15760     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(426326209, 7175, 19496, [136, 71, 249, 240, 85, 179, 40, 85]);
15761 }
15762 impl ::windows::runtime::RuntimeName for PopInThemeAnimation {
15763     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PopInThemeAnimation";
15764 }
15765 impl ::std::convert::From<PopInThemeAnimation> for ::windows::runtime::IUnknown {
15766     fn from(value: PopInThemeAnimation) -> Self {
15767         unsafe { ::std::mem::transmute(value) }
15768     }
15769 }
15770 impl ::std::convert::From<&PopInThemeAnimation> for ::windows::runtime::IUnknown {
15771     fn from(value: &PopInThemeAnimation) -> Self {
15772         ::std::convert::From::from(::std::clone::Clone::clone(value))
15773     }
15774 }
15775 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PopInThemeAnimation {
15776     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
15777         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
15778     }
15779 }
15780 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PopInThemeAnimation {
15781     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
15782         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
15783     }
15784 }
15785 impl ::std::convert::From<PopInThemeAnimation> for ::windows::runtime::IInspectable {
15786     fn from(value: PopInThemeAnimation) -> Self {
15787         value.0
15788     }
15789 }
15790 impl ::std::convert::From<&PopInThemeAnimation> for ::windows::runtime::IInspectable {
15791     fn from(value: &PopInThemeAnimation) -> Self {
15792         value.0.clone()
15793     }
15794 }
15795 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PopInThemeAnimation {
15796     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
15797         ::windows::runtime::Param::Owned(self.0)
15798     }
15799 }
15800 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PopInThemeAnimation {
15801     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
15802         ::windows::runtime::Param::Borrowed(&self.0)
15803     }
15804 }
15805 impl ::std::convert::From<PopInThemeAnimation> for Timeline {
15806     fn from(value: PopInThemeAnimation) -> Self {
15807         ::std::convert::Into::<Timeline>::into(&value)
15808     }
15809 }
15810 impl ::std::convert::From<&PopInThemeAnimation> for Timeline {
15811     fn from(value: &PopInThemeAnimation) -> Self {
15812         ::windows::runtime::Interface::cast(value).unwrap()
15813     }
15814 }
15815 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for PopInThemeAnimation {
15816     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
15817         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
15818     }
15819 }
15820 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &PopInThemeAnimation {
15821     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
15822         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
15823     }
15824 }
15825 impl ::std::convert::From<PopInThemeAnimation> for super::super::DependencyObject {
15826     fn from(value: PopInThemeAnimation) -> Self {
15827         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
15828     }
15829 }
15830 impl ::std::convert::From<&PopInThemeAnimation> for super::super::DependencyObject {
15831     fn from(value: &PopInThemeAnimation) -> Self {
15832         ::windows::runtime::Interface::cast(value).unwrap()
15833     }
15834 }
15835 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PopInThemeAnimation {
15836     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
15837         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
15838     }
15839 }
15840 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PopInThemeAnimation {
15841     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
15842         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
15843     }
15844 }
15845 unsafe impl ::std::marker::Send for PopInThemeAnimation {}
15846 unsafe impl ::std::marker::Sync for PopInThemeAnimation {}
15847 #[repr(transparent)]
15848 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
15849 pub struct PopOutThemeAnimation(::windows::runtime::IInspectable);
15850 impl PopOutThemeAnimation {
15851     pub fn new() -> ::windows::runtime::Result<Self> {
15852         Self::IActivationFactory(|f| f.activate_instance::<Self>())
15853     }
15854     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
15855         static mut SHARED: ::windows::runtime::FactoryCache<PopOutThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
15856         unsafe { SHARED.call(callback) }
15857     }
15858     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
15859         let this = self;
15860         unsafe {
15861             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
15862             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
15863         }
15864     }
15865     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15866         let this = self;
15867         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15868     }
15869     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
15870         Self::IPopOutThemeAnimationStatics(|this| unsafe {
15871             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15872             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
15873         })
15874     }
15875     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15876         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15877         unsafe {
15878             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15879             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15880         }
15881     }
15882     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
15883         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15884         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
15885     }
15886     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
15887         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15888         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
15889     }
15890     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15891         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15892         unsafe {
15893             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15894             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15895         }
15896     }
15897     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
15898         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15899         unsafe {
15900             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15901             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
15902         }
15903     }
15904     #[cfg(feature = "UI_Core")]
15905     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
15906         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
15907         unsafe {
15908             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15909             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
15910         }
15911     }
15912     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
15913         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
15914         unsafe {
15915             let mut result__: i64 = ::std::mem::zeroed();
15916             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
15917         }
15918     }
15919     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
15920         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
15921         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
15922     }
15923     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
15924         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15925         unsafe {
15926             let mut result__: bool = ::std::mem::zeroed();
15927             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
15928         }
15929     }
15930     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
15931         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15932         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
15933     }
15934     #[cfg(feature = "Foundation")]
15935     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
15936         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15937         unsafe {
15938             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
15939             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
15940         }
15941     }
15942     #[cfg(feature = "Foundation")]
15943     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15944         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15945         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15946     }
15947     #[cfg(feature = "Foundation")]
15948     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
15949         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15950         unsafe {
15951             let mut result__: super::super::Duration = ::std::mem::zeroed();
15952             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
15953         }
15954     }
15955     #[cfg(feature = "Foundation")]
15956     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15957         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15958         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15959     }
15960     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
15961         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15962         unsafe {
15963             let mut result__: f64 = ::std::mem::zeroed();
15964             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
15965         }
15966     }
15967     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
15968         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15969         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
15970     }
15971     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
15972         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15973         unsafe {
15974             let mut result__: FillBehavior = ::std::mem::zeroed();
15975             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
15976         }
15977     }
15978     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
15979         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15980         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
15981     }
15982     #[cfg(feature = "Foundation")]
15983     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
15984         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15985         unsafe {
15986             let mut result__: RepeatBehavior = ::std::mem::zeroed();
15987             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
15988         }
15989     }
15990     #[cfg(feature = "Foundation")]
15991     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
15992         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15993         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
15994     }
15995     #[cfg(feature = "Foundation")]
15996     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
15997         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
15998         unsafe {
15999             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
16000             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
16001         }
16002     }
16003     #[cfg(feature = "Foundation")]
16004     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
16005         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
16006         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
16007     }
16008     pub fn IPopOutThemeAnimationStatics<R, F: FnOnce(&IPopOutThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
16009         static mut SHARED: ::windows::runtime::FactoryCache<PopOutThemeAnimation, IPopOutThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
16010         unsafe { SHARED.call(callback) }
16011     }
16012 }
16013 unsafe impl ::windows::runtime::RuntimeType for PopOutThemeAnimation {
16014     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PopOutThemeAnimation;{4786ab49-0e48-4e81-a2e5-cc5aa19e48d3})");
16015 }
16016 unsafe impl ::windows::runtime::Interface for PopOutThemeAnimation {
16017     type Vtable = IPopOutThemeAnimation_abi;
16018     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1200008009, 3656, 20097, [162, 229, 204, 90, 161, 158, 72, 211]);
16019 }
16020 impl ::windows::runtime::RuntimeName for PopOutThemeAnimation {
16021     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PopOutThemeAnimation";
16022 }
16023 impl ::std::convert::From<PopOutThemeAnimation> for ::windows::runtime::IUnknown {
16024     fn from(value: PopOutThemeAnimation) -> Self {
16025         unsafe { ::std::mem::transmute(value) }
16026     }
16027 }
16028 impl ::std::convert::From<&PopOutThemeAnimation> for ::windows::runtime::IUnknown {
16029     fn from(value: &PopOutThemeAnimation) -> Self {
16030         ::std::convert::From::from(::std::clone::Clone::clone(value))
16031     }
16032 }
16033 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PopOutThemeAnimation {
16034     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16035         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
16036     }
16037 }
16038 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PopOutThemeAnimation {
16039     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16040         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
16041     }
16042 }
16043 impl ::std::convert::From<PopOutThemeAnimation> for ::windows::runtime::IInspectable {
16044     fn from(value: PopOutThemeAnimation) -> Self {
16045         value.0
16046     }
16047 }
16048 impl ::std::convert::From<&PopOutThemeAnimation> for ::windows::runtime::IInspectable {
16049     fn from(value: &PopOutThemeAnimation) -> Self {
16050         value.0.clone()
16051     }
16052 }
16053 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PopOutThemeAnimation {
16054     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16055         ::windows::runtime::Param::Owned(self.0)
16056     }
16057 }
16058 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PopOutThemeAnimation {
16059     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16060         ::windows::runtime::Param::Borrowed(&self.0)
16061     }
16062 }
16063 impl ::std::convert::From<PopOutThemeAnimation> for Timeline {
16064     fn from(value: PopOutThemeAnimation) -> Self {
16065         ::std::convert::Into::<Timeline>::into(&value)
16066     }
16067 }
16068 impl ::std::convert::From<&PopOutThemeAnimation> for Timeline {
16069     fn from(value: &PopOutThemeAnimation) -> Self {
16070         ::windows::runtime::Interface::cast(value).unwrap()
16071     }
16072 }
16073 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for PopOutThemeAnimation {
16074     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
16075         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
16076     }
16077 }
16078 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &PopOutThemeAnimation {
16079     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
16080         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
16081     }
16082 }
16083 impl ::std::convert::From<PopOutThemeAnimation> for super::super::DependencyObject {
16084     fn from(value: PopOutThemeAnimation) -> Self {
16085         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
16086     }
16087 }
16088 impl ::std::convert::From<&PopOutThemeAnimation> for super::super::DependencyObject {
16089     fn from(value: &PopOutThemeAnimation) -> Self {
16090         ::windows::runtime::Interface::cast(value).unwrap()
16091     }
16092 }
16093 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PopOutThemeAnimation {
16094     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16095         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
16096     }
16097 }
16098 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PopOutThemeAnimation {
16099     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16100         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
16101     }
16102 }
16103 unsafe impl ::std::marker::Send for PopOutThemeAnimation {}
16104 unsafe impl ::std::marker::Sync for PopOutThemeAnimation {}
16105 #[repr(transparent)]
16106 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
16107 pub struct PopupThemeTransition(::windows::runtime::IInspectable);
16108 impl PopupThemeTransition {
16109     pub fn new() -> ::windows::runtime::Result<Self> {
16110         Self::IActivationFactory(|f| f.activate_instance::<Self>())
16111     }
16112     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
16113         static mut SHARED: ::windows::runtime::FactoryCache<PopupThemeTransition, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
16114         unsafe { SHARED.call(callback) }
16115     }
16116     pub fn FromHorizontalOffset(&self) -> ::windows::runtime::Result<f64> {
16117         let this = self;
16118         unsafe {
16119             let mut result__: f64 = ::std::mem::zeroed();
16120             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
16121         }
16122     }
16123     pub fn SetFromHorizontalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
16124         let this = self;
16125         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
16126     }
16127     pub fn FromVerticalOffset(&self) -> ::windows::runtime::Result<f64> {
16128         let this = self;
16129         unsafe {
16130             let mut result__: f64 = ::std::mem::zeroed();
16131             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
16132         }
16133     }
16134     pub fn SetFromVerticalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
16135         let this = self;
16136         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
16137     }
16138     pub fn FromHorizontalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
16139         Self::IPopupThemeTransitionStatics(|this| unsafe {
16140             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16141             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
16142         })
16143     }
16144     pub fn FromVerticalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
16145         Self::IPopupThemeTransitionStatics(|this| unsafe {
16146             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16147             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
16148         })
16149     }
16150     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16151         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16152         unsafe {
16153             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16154             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16155         }
16156     }
16157     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
16158         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16159         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
16160     }
16161     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
16162         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16163         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
16164     }
16165     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16166         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16167         unsafe {
16168             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16169             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16170         }
16171     }
16172     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16173         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16174         unsafe {
16175             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16176             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16177         }
16178     }
16179     #[cfg(feature = "UI_Core")]
16180     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
16181         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16182         unsafe {
16183             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16184             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
16185         }
16186     }
16187     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
16188         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16189         unsafe {
16190             let mut result__: i64 = ::std::mem::zeroed();
16191             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
16192         }
16193     }
16194     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
16195         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16196         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
16197     }
16198     pub fn IPopupThemeTransitionStatics<R, F: FnOnce(&IPopupThemeTransitionStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
16199         static mut SHARED: ::windows::runtime::FactoryCache<PopupThemeTransition, IPopupThemeTransitionStatics> = ::windows::runtime::FactoryCache::new();
16200         unsafe { SHARED.call(callback) }
16201     }
16202 }
16203 unsafe impl ::windows::runtime::RuntimeType for PopupThemeTransition {
16204     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PopupThemeTransition;{47843552-4283-545e-c791-268dca22ce4b})");
16205 }
16206 unsafe impl ::windows::runtime::Interface for PopupThemeTransition {
16207     type Vtable = IPopupThemeTransition_abi;
16208     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1199846738, 17027, 21598, [199, 145, 38, 141, 202, 34, 206, 75]);
16209 }
16210 impl ::windows::runtime::RuntimeName for PopupThemeTransition {
16211     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PopupThemeTransition";
16212 }
16213 impl ::std::convert::From<PopupThemeTransition> for ::windows::runtime::IUnknown {
16214     fn from(value: PopupThemeTransition) -> Self {
16215         unsafe { ::std::mem::transmute(value) }
16216     }
16217 }
16218 impl ::std::convert::From<&PopupThemeTransition> for ::windows::runtime::IUnknown {
16219     fn from(value: &PopupThemeTransition) -> Self {
16220         ::std::convert::From::from(::std::clone::Clone::clone(value))
16221     }
16222 }
16223 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PopupThemeTransition {
16224     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16225         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
16226     }
16227 }
16228 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PopupThemeTransition {
16229     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16230         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
16231     }
16232 }
16233 impl ::std::convert::From<PopupThemeTransition> for ::windows::runtime::IInspectable {
16234     fn from(value: PopupThemeTransition) -> Self {
16235         value.0
16236     }
16237 }
16238 impl ::std::convert::From<&PopupThemeTransition> for ::windows::runtime::IInspectable {
16239     fn from(value: &PopupThemeTransition) -> Self {
16240         value.0.clone()
16241     }
16242 }
16243 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PopupThemeTransition {
16244     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16245         ::windows::runtime::Param::Owned(self.0)
16246     }
16247 }
16248 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PopupThemeTransition {
16249     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16250         ::windows::runtime::Param::Borrowed(&self.0)
16251     }
16252 }
16253 impl ::std::convert::From<PopupThemeTransition> for Transition {
16254     fn from(value: PopupThemeTransition) -> Self {
16255         ::std::convert::Into::<Transition>::into(&value)
16256     }
16257 }
16258 impl ::std::convert::From<&PopupThemeTransition> for Transition {
16259     fn from(value: &PopupThemeTransition) -> Self {
16260         ::windows::runtime::Interface::cast(value).unwrap()
16261     }
16262 }
16263 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for PopupThemeTransition {
16264     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
16265         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(self))
16266     }
16267 }
16268 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for &PopupThemeTransition {
16269     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
16270         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(::std::clone::Clone::clone(self)))
16271     }
16272 }
16273 impl ::std::convert::From<PopupThemeTransition> for super::super::DependencyObject {
16274     fn from(value: PopupThemeTransition) -> Self {
16275         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
16276     }
16277 }
16278 impl ::std::convert::From<&PopupThemeTransition> for super::super::DependencyObject {
16279     fn from(value: &PopupThemeTransition) -> Self {
16280         ::windows::runtime::Interface::cast(value).unwrap()
16281     }
16282 }
16283 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PopupThemeTransition {
16284     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16285         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
16286     }
16287 }
16288 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PopupThemeTransition {
16289     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16290         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
16291     }
16292 }
16293 unsafe impl ::std::marker::Send for PopupThemeTransition {}
16294 unsafe impl ::std::marker::Sync for PopupThemeTransition {}
16295 #[repr(transparent)]
16296 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
16297 pub struct PowerEase(::windows::runtime::IInspectable);
16298 impl PowerEase {
16299     pub fn new() -> ::windows::runtime::Result<Self> {
16300         Self::IActivationFactory(|f| f.activate_instance::<Self>())
16301     }
16302     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
16303         static mut SHARED: ::windows::runtime::FactoryCache<PowerEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
16304         unsafe { SHARED.call(callback) }
16305     }
16306     pub fn Power(&self) -> ::windows::runtime::Result<f64> {
16307         let this = self;
16308         unsafe {
16309             let mut result__: f64 = ::std::mem::zeroed();
16310             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
16311         }
16312     }
16313     pub fn SetPower(&self, value: f64) -> ::windows::runtime::Result<()> {
16314         let this = self;
16315         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
16316     }
16317     pub fn PowerProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
16318         Self::IPowerEaseStatics(|this| unsafe {
16319             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16320             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
16321         })
16322     }
16323     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16324         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16325         unsafe {
16326             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16327             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16328         }
16329     }
16330     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
16331         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16332         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
16333     }
16334     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
16335         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16336         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
16337     }
16338     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16339         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16340         unsafe {
16341             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16342             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16343         }
16344     }
16345     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16346         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16347         unsafe {
16348             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16349             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16350         }
16351     }
16352     #[cfg(feature = "UI_Core")]
16353     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
16354         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16355         unsafe {
16356             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16357             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
16358         }
16359     }
16360     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
16361         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16362         unsafe {
16363             let mut result__: i64 = ::std::mem::zeroed();
16364             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
16365         }
16366     }
16367     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
16368         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16369         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
16370     }
16371     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
16372         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16373         unsafe {
16374             let mut result__: EasingMode = ::std::mem::zeroed();
16375             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
16376         }
16377     }
16378     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
16379         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16380         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
16381     }
16382     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
16383         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16384         unsafe {
16385             let mut result__: f64 = ::std::mem::zeroed();
16386             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
16387         }
16388     }
16389     pub fn IPowerEaseStatics<R, F: FnOnce(&IPowerEaseStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
16390         static mut SHARED: ::windows::runtime::FactoryCache<PowerEase, IPowerEaseStatics> = ::windows::runtime::FactoryCache::new();
16391         unsafe { SHARED.call(callback) }
16392     }
16393 }
16394 unsafe impl ::windows::runtime::RuntimeType for PowerEase {
16395     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.PowerEase;{69c80579-eedf-405b-8680-d9606880c937})");
16396 }
16397 unsafe impl ::windows::runtime::Interface for PowerEase {
16398     type Vtable = IPowerEase_abi;
16399     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1774716281, 61151, 16475, [134, 128, 217, 96, 104, 128, 201, 55]);
16400 }
16401 impl ::windows::runtime::RuntimeName for PowerEase {
16402     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.PowerEase";
16403 }
16404 impl ::std::convert::From<PowerEase> for ::windows::runtime::IUnknown {
16405     fn from(value: PowerEase) -> Self {
16406         unsafe { ::std::mem::transmute(value) }
16407     }
16408 }
16409 impl ::std::convert::From<&PowerEase> for ::windows::runtime::IUnknown {
16410     fn from(value: &PowerEase) -> Self {
16411         ::std::convert::From::from(::std::clone::Clone::clone(value))
16412     }
16413 }
16414 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PowerEase {
16415     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16416         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
16417     }
16418 }
16419 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PowerEase {
16420     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16421         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
16422     }
16423 }
16424 impl ::std::convert::From<PowerEase> for ::windows::runtime::IInspectable {
16425     fn from(value: PowerEase) -> Self {
16426         value.0
16427     }
16428 }
16429 impl ::std::convert::From<&PowerEase> for ::windows::runtime::IInspectable {
16430     fn from(value: &PowerEase) -> Self {
16431         value.0.clone()
16432     }
16433 }
16434 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PowerEase {
16435     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16436         ::windows::runtime::Param::Owned(self.0)
16437     }
16438 }
16439 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PowerEase {
16440     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16441         ::windows::runtime::Param::Borrowed(&self.0)
16442     }
16443 }
16444 impl ::std::convert::From<PowerEase> for EasingFunctionBase {
16445     fn from(value: PowerEase) -> Self {
16446         ::std::convert::Into::<EasingFunctionBase>::into(&value)
16447     }
16448 }
16449 impl ::std::convert::From<&PowerEase> for EasingFunctionBase {
16450     fn from(value: &PowerEase) -> Self {
16451         ::windows::runtime::Interface::cast(value).unwrap()
16452     }
16453 }
16454 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for PowerEase {
16455     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
16456         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
16457     }
16458 }
16459 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &PowerEase {
16460     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
16461         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
16462     }
16463 }
16464 impl ::std::convert::From<PowerEase> for super::super::DependencyObject {
16465     fn from(value: PowerEase) -> Self {
16466         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
16467     }
16468 }
16469 impl ::std::convert::From<&PowerEase> for super::super::DependencyObject {
16470     fn from(value: &PowerEase) -> Self {
16471         ::windows::runtime::Interface::cast(value).unwrap()
16472     }
16473 }
16474 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for PowerEase {
16475     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16476         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
16477     }
16478 }
16479 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &PowerEase {
16480     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16481         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
16482     }
16483 }
16484 unsafe impl ::std::marker::Send for PowerEase {}
16485 unsafe impl ::std::marker::Sync for PowerEase {}
16486 #[repr(transparent)]
16487 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
16488 pub struct QuadraticEase(::windows::runtime::IInspectable);
16489 impl QuadraticEase {
16490     pub fn new() -> ::windows::runtime::Result<Self> {
16491         Self::IActivationFactory(|f| f.activate_instance::<Self>())
16492     }
16493     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
16494         static mut SHARED: ::windows::runtime::FactoryCache<QuadraticEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
16495         unsafe { SHARED.call(callback) }
16496     }
16497     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16498         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16499         unsafe {
16500             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16501             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16502         }
16503     }
16504     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
16505         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16506         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
16507     }
16508     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
16509         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16510         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
16511     }
16512     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16513         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16514         unsafe {
16515             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16516             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16517         }
16518     }
16519     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16520         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16521         unsafe {
16522             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16523             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16524         }
16525     }
16526     #[cfg(feature = "UI_Core")]
16527     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
16528         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16529         unsafe {
16530             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16531             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
16532         }
16533     }
16534     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
16535         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16536         unsafe {
16537             let mut result__: i64 = ::std::mem::zeroed();
16538             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
16539         }
16540     }
16541     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
16542         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16543         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
16544     }
16545     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
16546         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16547         unsafe {
16548             let mut result__: EasingMode = ::std::mem::zeroed();
16549             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
16550         }
16551     }
16552     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
16553         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16554         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
16555     }
16556     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
16557         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16558         unsafe {
16559             let mut result__: f64 = ::std::mem::zeroed();
16560             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
16561         }
16562     }
16563 }
16564 unsafe impl ::windows::runtime::RuntimeType for QuadraticEase {
16565     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.QuadraticEase;{e1510e91-ef6d-44f0-803d-68d16de0ddfc})");
16566 }
16567 unsafe impl ::windows::runtime::Interface for QuadraticEase {
16568     type Vtable = IQuadraticEase_abi;
16569     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3780185745, 61293, 17648, [128, 61, 104, 209, 109, 224, 221, 252]);
16570 }
16571 impl ::windows::runtime::RuntimeName for QuadraticEase {
16572     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.QuadraticEase";
16573 }
16574 impl ::std::convert::From<QuadraticEase> for ::windows::runtime::IUnknown {
16575     fn from(value: QuadraticEase) -> Self {
16576         unsafe { ::std::mem::transmute(value) }
16577     }
16578 }
16579 impl ::std::convert::From<&QuadraticEase> for ::windows::runtime::IUnknown {
16580     fn from(value: &QuadraticEase) -> Self {
16581         ::std::convert::From::from(::std::clone::Clone::clone(value))
16582     }
16583 }
16584 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for QuadraticEase {
16585     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16586         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
16587     }
16588 }
16589 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &QuadraticEase {
16590     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16591         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
16592     }
16593 }
16594 impl ::std::convert::From<QuadraticEase> for ::windows::runtime::IInspectable {
16595     fn from(value: QuadraticEase) -> Self {
16596         value.0
16597     }
16598 }
16599 impl ::std::convert::From<&QuadraticEase> for ::windows::runtime::IInspectable {
16600     fn from(value: &QuadraticEase) -> Self {
16601         value.0.clone()
16602     }
16603 }
16604 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for QuadraticEase {
16605     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16606         ::windows::runtime::Param::Owned(self.0)
16607     }
16608 }
16609 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a QuadraticEase {
16610     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16611         ::windows::runtime::Param::Borrowed(&self.0)
16612     }
16613 }
16614 impl ::std::convert::From<QuadraticEase> for EasingFunctionBase {
16615     fn from(value: QuadraticEase) -> Self {
16616         ::std::convert::Into::<EasingFunctionBase>::into(&value)
16617     }
16618 }
16619 impl ::std::convert::From<&QuadraticEase> for EasingFunctionBase {
16620     fn from(value: &QuadraticEase) -> Self {
16621         ::windows::runtime::Interface::cast(value).unwrap()
16622     }
16623 }
16624 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for QuadraticEase {
16625     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
16626         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
16627     }
16628 }
16629 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &QuadraticEase {
16630     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
16631         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
16632     }
16633 }
16634 impl ::std::convert::From<QuadraticEase> for super::super::DependencyObject {
16635     fn from(value: QuadraticEase) -> Self {
16636         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
16637     }
16638 }
16639 impl ::std::convert::From<&QuadraticEase> for super::super::DependencyObject {
16640     fn from(value: &QuadraticEase) -> Self {
16641         ::windows::runtime::Interface::cast(value).unwrap()
16642     }
16643 }
16644 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for QuadraticEase {
16645     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16646         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
16647     }
16648 }
16649 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &QuadraticEase {
16650     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16651         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
16652     }
16653 }
16654 unsafe impl ::std::marker::Send for QuadraticEase {}
16655 unsafe impl ::std::marker::Sync for QuadraticEase {}
16656 #[repr(transparent)]
16657 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
16658 pub struct QuarticEase(::windows::runtime::IInspectable);
16659 impl QuarticEase {
16660     pub fn new() -> ::windows::runtime::Result<Self> {
16661         Self::IActivationFactory(|f| f.activate_instance::<Self>())
16662     }
16663     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
16664         static mut SHARED: ::windows::runtime::FactoryCache<QuarticEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
16665         unsafe { SHARED.call(callback) }
16666     }
16667     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16668         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16669         unsafe {
16670             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16671             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16672         }
16673     }
16674     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
16675         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16676         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
16677     }
16678     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
16679         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16680         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
16681     }
16682     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16683         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16684         unsafe {
16685             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16686             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16687         }
16688     }
16689     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16690         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16691         unsafe {
16692             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16693             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16694         }
16695     }
16696     #[cfg(feature = "UI_Core")]
16697     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
16698         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16699         unsafe {
16700             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16701             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
16702         }
16703     }
16704     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
16705         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16706         unsafe {
16707             let mut result__: i64 = ::std::mem::zeroed();
16708             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
16709         }
16710     }
16711     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
16712         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16713         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
16714     }
16715     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
16716         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16717         unsafe {
16718             let mut result__: EasingMode = ::std::mem::zeroed();
16719             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
16720         }
16721     }
16722     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
16723         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16724         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
16725     }
16726     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
16727         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16728         unsafe {
16729             let mut result__: f64 = ::std::mem::zeroed();
16730             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
16731         }
16732     }
16733 }
16734 unsafe impl ::windows::runtime::RuntimeType for QuarticEase {
16735     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.QuarticEase;{e8698814-fe42-4a05-b5b8-081f41157815})");
16736 }
16737 unsafe impl ::windows::runtime::Interface for QuarticEase {
16738     type Vtable = IQuarticEase_abi;
16739     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3899230228, 65090, 18949, [181, 184, 8, 31, 65, 21, 120, 21]);
16740 }
16741 impl ::windows::runtime::RuntimeName for QuarticEase {
16742     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.QuarticEase";
16743 }
16744 impl ::std::convert::From<QuarticEase> for ::windows::runtime::IUnknown {
16745     fn from(value: QuarticEase) -> Self {
16746         unsafe { ::std::mem::transmute(value) }
16747     }
16748 }
16749 impl ::std::convert::From<&QuarticEase> for ::windows::runtime::IUnknown {
16750     fn from(value: &QuarticEase) -> Self {
16751         ::std::convert::From::from(::std::clone::Clone::clone(value))
16752     }
16753 }
16754 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for QuarticEase {
16755     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16756         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
16757     }
16758 }
16759 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &QuarticEase {
16760     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16761         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
16762     }
16763 }
16764 impl ::std::convert::From<QuarticEase> for ::windows::runtime::IInspectable {
16765     fn from(value: QuarticEase) -> Self {
16766         value.0
16767     }
16768 }
16769 impl ::std::convert::From<&QuarticEase> for ::windows::runtime::IInspectable {
16770     fn from(value: &QuarticEase) -> Self {
16771         value.0.clone()
16772     }
16773 }
16774 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for QuarticEase {
16775     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16776         ::windows::runtime::Param::Owned(self.0)
16777     }
16778 }
16779 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a QuarticEase {
16780     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16781         ::windows::runtime::Param::Borrowed(&self.0)
16782     }
16783 }
16784 impl ::std::convert::From<QuarticEase> for EasingFunctionBase {
16785     fn from(value: QuarticEase) -> Self {
16786         ::std::convert::Into::<EasingFunctionBase>::into(&value)
16787     }
16788 }
16789 impl ::std::convert::From<&QuarticEase> for EasingFunctionBase {
16790     fn from(value: &QuarticEase) -> Self {
16791         ::windows::runtime::Interface::cast(value).unwrap()
16792     }
16793 }
16794 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for QuarticEase {
16795     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
16796         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
16797     }
16798 }
16799 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &QuarticEase {
16800     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
16801         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
16802     }
16803 }
16804 impl ::std::convert::From<QuarticEase> for super::super::DependencyObject {
16805     fn from(value: QuarticEase) -> Self {
16806         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
16807     }
16808 }
16809 impl ::std::convert::From<&QuarticEase> for super::super::DependencyObject {
16810     fn from(value: &QuarticEase) -> Self {
16811         ::windows::runtime::Interface::cast(value).unwrap()
16812     }
16813 }
16814 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for QuarticEase {
16815     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16816         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
16817     }
16818 }
16819 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &QuarticEase {
16820     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16821         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
16822     }
16823 }
16824 unsafe impl ::std::marker::Send for QuarticEase {}
16825 unsafe impl ::std::marker::Sync for QuarticEase {}
16826 #[repr(transparent)]
16827 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
16828 pub struct QuinticEase(::windows::runtime::IInspectable);
16829 impl QuinticEase {
16830     pub fn new() -> ::windows::runtime::Result<Self> {
16831         Self::IActivationFactory(|f| f.activate_instance::<Self>())
16832     }
16833     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
16834         static mut SHARED: ::windows::runtime::FactoryCache<QuinticEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
16835         unsafe { SHARED.call(callback) }
16836     }
16837     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16838         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16839         unsafe {
16840             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16841             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16842         }
16843     }
16844     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
16845         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16846         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
16847     }
16848     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
16849         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16850         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
16851     }
16852     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16853         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16854         unsafe {
16855             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16856             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16857         }
16858     }
16859     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
16860         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16861         unsafe {
16862             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16863             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
16864         }
16865     }
16866     #[cfg(feature = "UI_Core")]
16867     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
16868         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
16869         unsafe {
16870             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
16871             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
16872         }
16873     }
16874     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
16875         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16876         unsafe {
16877             let mut result__: i64 = ::std::mem::zeroed();
16878             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
16879         }
16880     }
16881     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
16882         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
16883         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
16884     }
16885     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
16886         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16887         unsafe {
16888             let mut result__: EasingMode = ::std::mem::zeroed();
16889             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
16890         }
16891     }
16892     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
16893         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16894         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
16895     }
16896     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
16897         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
16898         unsafe {
16899             let mut result__: f64 = ::std::mem::zeroed();
16900             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
16901         }
16902     }
16903 }
16904 unsafe impl ::windows::runtime::RuntimeType for QuinticEase {
16905     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.QuinticEase;{92ee793b-3c49-4108-aa11-ab786603da21})");
16906 }
16907 unsafe impl ::windows::runtime::Interface for QuinticEase {
16908     type Vtable = IQuinticEase_abi;
16909     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2465102139, 15433, 16648, [170, 17, 171, 120, 102, 3, 218, 33]);
16910 }
16911 impl ::windows::runtime::RuntimeName for QuinticEase {
16912     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.QuinticEase";
16913 }
16914 impl ::std::convert::From<QuinticEase> for ::windows::runtime::IUnknown {
16915     fn from(value: QuinticEase) -> Self {
16916         unsafe { ::std::mem::transmute(value) }
16917     }
16918 }
16919 impl ::std::convert::From<&QuinticEase> for ::windows::runtime::IUnknown {
16920     fn from(value: &QuinticEase) -> Self {
16921         ::std::convert::From::from(::std::clone::Clone::clone(value))
16922     }
16923 }
16924 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for QuinticEase {
16925     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16926         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
16927     }
16928 }
16929 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &QuinticEase {
16930     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
16931         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
16932     }
16933 }
16934 impl ::std::convert::From<QuinticEase> for ::windows::runtime::IInspectable {
16935     fn from(value: QuinticEase) -> Self {
16936         value.0
16937     }
16938 }
16939 impl ::std::convert::From<&QuinticEase> for ::windows::runtime::IInspectable {
16940     fn from(value: &QuinticEase) -> Self {
16941         value.0.clone()
16942     }
16943 }
16944 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for QuinticEase {
16945     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16946         ::windows::runtime::Param::Owned(self.0)
16947     }
16948 }
16949 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a QuinticEase {
16950     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
16951         ::windows::runtime::Param::Borrowed(&self.0)
16952     }
16953 }
16954 impl ::std::convert::From<QuinticEase> for EasingFunctionBase {
16955     fn from(value: QuinticEase) -> Self {
16956         ::std::convert::Into::<EasingFunctionBase>::into(&value)
16957     }
16958 }
16959 impl ::std::convert::From<&QuinticEase> for EasingFunctionBase {
16960     fn from(value: &QuinticEase) -> Self {
16961         ::windows::runtime::Interface::cast(value).unwrap()
16962     }
16963 }
16964 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for QuinticEase {
16965     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
16966         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
16967     }
16968 }
16969 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &QuinticEase {
16970     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
16971         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
16972     }
16973 }
16974 impl ::std::convert::From<QuinticEase> for super::super::DependencyObject {
16975     fn from(value: QuinticEase) -> Self {
16976         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
16977     }
16978 }
16979 impl ::std::convert::From<&QuinticEase> for super::super::DependencyObject {
16980     fn from(value: &QuinticEase) -> Self {
16981         ::windows::runtime::Interface::cast(value).unwrap()
16982     }
16983 }
16984 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for QuinticEase {
16985     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16986         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
16987     }
16988 }
16989 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &QuinticEase {
16990     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
16991         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
16992     }
16993 }
16994 unsafe impl ::std::marker::Send for QuinticEase {}
16995 unsafe impl ::std::marker::Sync for QuinticEase {}
16996 #[repr(transparent)]
16997 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
16998 pub struct ReorderThemeTransition(::windows::runtime::IInspectable);
16999 impl ReorderThemeTransition {
17000     pub fn new() -> ::windows::runtime::Result<Self> {
17001         Self::IActivationFactory(|f| f.activate_instance::<Self>())
17002     }
17003     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
17004         static mut SHARED: ::windows::runtime::FactoryCache<ReorderThemeTransition, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
17005         unsafe { SHARED.call(callback) }
17006     }
17007     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17008         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17009         unsafe {
17010             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17011             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17012         }
17013     }
17014     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
17015         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17016         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
17017     }
17018     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
17019         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17020         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
17021     }
17022     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17023         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17024         unsafe {
17025             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17026             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17027         }
17028     }
17029     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17030         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17031         unsafe {
17032             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17033             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17034         }
17035     }
17036     #[cfg(feature = "UI_Core")]
17037     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
17038         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17039         unsafe {
17040             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17041             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
17042         }
17043     }
17044     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
17045         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
17046         unsafe {
17047             let mut result__: i64 = ::std::mem::zeroed();
17048             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
17049         }
17050     }
17051     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
17052         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
17053         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
17054     }
17055 }
17056 unsafe impl ::windows::runtime::RuntimeType for ReorderThemeTransition {
17057     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.ReorderThemeTransition;{f2065c6c-d052-4ad1-8362-b71b36df7497})");
17058 }
17059 unsafe impl ::windows::runtime::Interface for ReorderThemeTransition {
17060     type Vtable = IReorderThemeTransition_abi;
17061     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4060503148, 53330, 19153, [131, 98, 183, 27, 54, 223, 116, 151]);
17062 }
17063 impl ::windows::runtime::RuntimeName for ReorderThemeTransition {
17064     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.ReorderThemeTransition";
17065 }
17066 impl ::std::convert::From<ReorderThemeTransition> for ::windows::runtime::IUnknown {
17067     fn from(value: ReorderThemeTransition) -> Self {
17068         unsafe { ::std::mem::transmute(value) }
17069     }
17070 }
17071 impl ::std::convert::From<&ReorderThemeTransition> for ::windows::runtime::IUnknown {
17072     fn from(value: &ReorderThemeTransition) -> Self {
17073         ::std::convert::From::from(::std::clone::Clone::clone(value))
17074     }
17075 }
17076 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ReorderThemeTransition {
17077     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17078         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
17079     }
17080 }
17081 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ReorderThemeTransition {
17082     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17083         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
17084     }
17085 }
17086 impl ::std::convert::From<ReorderThemeTransition> for ::windows::runtime::IInspectable {
17087     fn from(value: ReorderThemeTransition) -> Self {
17088         value.0
17089     }
17090 }
17091 impl ::std::convert::From<&ReorderThemeTransition> for ::windows::runtime::IInspectable {
17092     fn from(value: &ReorderThemeTransition) -> Self {
17093         value.0.clone()
17094     }
17095 }
17096 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for ReorderThemeTransition {
17097     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17098         ::windows::runtime::Param::Owned(self.0)
17099     }
17100 }
17101 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a ReorderThemeTransition {
17102     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17103         ::windows::runtime::Param::Borrowed(&self.0)
17104     }
17105 }
17106 impl ::std::convert::From<ReorderThemeTransition> for Transition {
17107     fn from(value: ReorderThemeTransition) -> Self {
17108         ::std::convert::Into::<Transition>::into(&value)
17109     }
17110 }
17111 impl ::std::convert::From<&ReorderThemeTransition> for Transition {
17112     fn from(value: &ReorderThemeTransition) -> Self {
17113         ::windows::runtime::Interface::cast(value).unwrap()
17114     }
17115 }
17116 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for ReorderThemeTransition {
17117     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
17118         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(self))
17119     }
17120 }
17121 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for &ReorderThemeTransition {
17122     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
17123         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(::std::clone::Clone::clone(self)))
17124     }
17125 }
17126 impl ::std::convert::From<ReorderThemeTransition> for super::super::DependencyObject {
17127     fn from(value: ReorderThemeTransition) -> Self {
17128         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
17129     }
17130 }
17131 impl ::std::convert::From<&ReorderThemeTransition> for super::super::DependencyObject {
17132     fn from(value: &ReorderThemeTransition) -> Self {
17133         ::windows::runtime::Interface::cast(value).unwrap()
17134     }
17135 }
17136 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for ReorderThemeTransition {
17137     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
17138         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
17139     }
17140 }
17141 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &ReorderThemeTransition {
17142     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
17143         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
17144     }
17145 }
17146 unsafe impl ::std::marker::Send for ReorderThemeTransition {}
17147 unsafe impl ::std::marker::Sync for ReorderThemeTransition {}
17148 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
17149 #[repr(C)]
17150 #[cfg(feature = "Foundation")]
17151 pub struct RepeatBehavior {
17152     pub Count: f64,
17153     pub Duration: super::super::super::super::Foundation::TimeSpan,
17154     pub Type: RepeatBehaviorType,
17155 }
17156 #[cfg(feature = "Foundation")]
17157 impl RepeatBehavior {}
17158 #[cfg(feature = "Foundation")]
17159 impl ::std::default::Default for RepeatBehavior {
17160     fn default() -> Self {
17161         unsafe { ::std::mem::zeroed() }
17162     }
17163 }
17164 #[cfg(feature = "Foundation")]
17165 impl ::std::fmt::Debug for RepeatBehavior {
17166     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
17167         fmt.debug_struct("RepeatBehavior").field("Count", &self.Count).field("Duration", &self.Duration).field("Type", &self.Type).finish()
17168     }
17169 }
17170 #[cfg(feature = "Foundation")]
17171 impl ::std::cmp::PartialEq for RepeatBehavior {
17172     fn eq(&self, other: &Self) -> bool {
17173         self.Count == other.Count && self.Duration == other.Duration && self.Type == other.Type
17174     }
17175 }
17176 #[cfg(feature = "Foundation")]
17177 impl ::std::cmp::Eq for RepeatBehavior {}
17178 #[cfg(feature = "Foundation")]
17179 unsafe impl ::windows::runtime::Abi for RepeatBehavior {
17180     type Abi = Self;
17181     type DefaultType = Self;
17182 }
17183 #[cfg(feature = "Foundation")]
17184 unsafe impl ::windows::runtime::RuntimeType for RepeatBehavior {
17185     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"struct(Windows.UI.Xaml.Media.Animation.RepeatBehavior;f8;struct(Windows.Foundation.TimeSpan;i8);enum(Windows.UI.Xaml.Media.Animation.RepeatBehaviorType;i4))");
17186 }
17187 #[repr(transparent)]
17188 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
17189 pub struct RepeatBehaviorHelper(::windows::runtime::IInspectable);
17190 impl RepeatBehaviorHelper {
17191     #[cfg(feature = "Foundation")]
17192     pub fn Forever() -> ::windows::runtime::Result<RepeatBehavior> {
17193         Self::IRepeatBehaviorHelperStatics(|this| unsafe {
17194             let mut result__: RepeatBehavior = ::std::mem::zeroed();
17195             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
17196         })
17197     }
17198     #[cfg(feature = "Foundation")]
17199     pub fn FromCount(count: f64) -> ::windows::runtime::Result<RepeatBehavior> {
17200         Self::IRepeatBehaviorHelperStatics(|this| unsafe {
17201             let mut result__: RepeatBehavior = ::std::mem::zeroed();
17202             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), count, &mut result__).from_abi::<RepeatBehavior>(result__)
17203         })
17204     }
17205     #[cfg(feature = "Foundation")]
17206     pub fn FromDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::TimeSpan>>(duration: Param0) -> ::windows::runtime::Result<RepeatBehavior> {
17207         Self::IRepeatBehaviorHelperStatics(|this| unsafe {
17208             let mut result__: RepeatBehavior = ::std::mem::zeroed();
17209             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), duration.into_param().abi(), &mut result__).from_abi::<RepeatBehavior>(result__)
17210         })
17211     }
17212     #[cfg(feature = "Foundation")]
17213     pub fn GetHasCount<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(target: Param0) -> ::windows::runtime::Result<bool> {
17214         Self::IRepeatBehaviorHelperStatics(|this| unsafe {
17215             let mut result__: bool = ::std::mem::zeroed();
17216             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), target.into_param().abi(), &mut result__).from_abi::<bool>(result__)
17217         })
17218     }
17219     #[cfg(feature = "Foundation")]
17220     pub fn GetHasDuration<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(target: Param0) -> ::windows::runtime::Result<bool> {
17221         Self::IRepeatBehaviorHelperStatics(|this| unsafe {
17222             let mut result__: bool = ::std::mem::zeroed();
17223             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), target.into_param().abi(), &mut result__).from_abi::<bool>(result__)
17224         })
17225     }
17226     #[cfg(feature = "Foundation")]
17227     pub fn Equals<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>, Param1: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(target: Param0, value: Param1) -> ::windows::runtime::Result<bool> {
17228         Self::IRepeatBehaviorHelperStatics(|this| unsafe {
17229             let mut result__: bool = ::std::mem::zeroed();
17230             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), target.into_param().abi(), value.into_param().abi(), &mut result__).from_abi::<bool>(result__)
17231         })
17232     }
17233     pub fn IRepeatBehaviorHelperStatics<R, F: FnOnce(&IRepeatBehaviorHelperStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
17234         static mut SHARED: ::windows::runtime::FactoryCache<RepeatBehaviorHelper, IRepeatBehaviorHelperStatics> = ::windows::runtime::FactoryCache::new();
17235         unsafe { SHARED.call(callback) }
17236     }
17237 }
17238 unsafe impl ::windows::runtime::RuntimeType for RepeatBehaviorHelper {
17239     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.RepeatBehaviorHelper;{6863ab72-4997-47f9-87ad-37efb75993ea})");
17240 }
17241 unsafe impl ::windows::runtime::Interface for RepeatBehaviorHelper {
17242     type Vtable = IRepeatBehaviorHelper_abi;
17243     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1751362418, 18839, 18425, [135, 173, 55, 239, 183, 89, 147, 234]);
17244 }
17245 impl ::windows::runtime::RuntimeName for RepeatBehaviorHelper {
17246     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.RepeatBehaviorHelper";
17247 }
17248 impl ::std::convert::From<RepeatBehaviorHelper> for ::windows::runtime::IUnknown {
17249     fn from(value: RepeatBehaviorHelper) -> Self {
17250         unsafe { ::std::mem::transmute(value) }
17251     }
17252 }
17253 impl ::std::convert::From<&RepeatBehaviorHelper> for ::windows::runtime::IUnknown {
17254     fn from(value: &RepeatBehaviorHelper) -> Self {
17255         ::std::convert::From::from(::std::clone::Clone::clone(value))
17256     }
17257 }
17258 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for RepeatBehaviorHelper {
17259     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17260         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
17261     }
17262 }
17263 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &RepeatBehaviorHelper {
17264     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17265         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
17266     }
17267 }
17268 impl ::std::convert::From<RepeatBehaviorHelper> for ::windows::runtime::IInspectable {
17269     fn from(value: RepeatBehaviorHelper) -> Self {
17270         value.0
17271     }
17272 }
17273 impl ::std::convert::From<&RepeatBehaviorHelper> for ::windows::runtime::IInspectable {
17274     fn from(value: &RepeatBehaviorHelper) -> Self {
17275         value.0.clone()
17276     }
17277 }
17278 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for RepeatBehaviorHelper {
17279     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17280         ::windows::runtime::Param::Owned(self.0)
17281     }
17282 }
17283 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a RepeatBehaviorHelper {
17284     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17285         ::windows::runtime::Param::Borrowed(&self.0)
17286     }
17287 }
17288 unsafe impl ::std::marker::Send for RepeatBehaviorHelper {}
17289 unsafe impl ::std::marker::Sync for RepeatBehaviorHelper {}
17290 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
17291 #[repr(transparent)]
17292 pub struct RepeatBehaviorType(pub i32);
17293 impl RepeatBehaviorType {
17294     pub const Count: RepeatBehaviorType = RepeatBehaviorType(0i32);
17295     pub const Duration: RepeatBehaviorType = RepeatBehaviorType(1i32);
17296     pub const Forever: RepeatBehaviorType = RepeatBehaviorType(2i32);
17297 }
17298 impl ::std::convert::From<i32> for RepeatBehaviorType {
17299     fn from(value: i32) -> Self {
17300         Self(value)
17301     }
17302 }
17303 unsafe impl ::windows::runtime::Abi for RepeatBehaviorType {
17304     type Abi = Self;
17305     type DefaultType = Self;
17306 }
17307 unsafe impl ::windows::runtime::RuntimeType for RepeatBehaviorType {
17308     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.UI.Xaml.Media.Animation.RepeatBehaviorType;i4)");
17309 }
17310 #[repr(transparent)]
17311 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
17312 pub struct RepositionThemeAnimation(::windows::runtime::IInspectable);
17313 impl RepositionThemeAnimation {
17314     pub fn new() -> ::windows::runtime::Result<Self> {
17315         Self::IActivationFactory(|f| f.activate_instance::<Self>())
17316     }
17317     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
17318         static mut SHARED: ::windows::runtime::FactoryCache<RepositionThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
17319         unsafe { SHARED.call(callback) }
17320     }
17321     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
17322         let this = self;
17323         unsafe {
17324             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
17325             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
17326         }
17327     }
17328     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
17329         let this = self;
17330         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
17331     }
17332     pub fn FromHorizontalOffset(&self) -> ::windows::runtime::Result<f64> {
17333         let this = self;
17334         unsafe {
17335             let mut result__: f64 = ::std::mem::zeroed();
17336             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
17337         }
17338     }
17339     pub fn SetFromHorizontalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
17340         let this = self;
17341         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
17342     }
17343     pub fn FromVerticalOffset(&self) -> ::windows::runtime::Result<f64> {
17344         let this = self;
17345         unsafe {
17346             let mut result__: f64 = ::std::mem::zeroed();
17347             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
17348         }
17349     }
17350     pub fn SetFromVerticalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
17351         let this = self;
17352         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
17353     }
17354     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
17355         Self::IRepositionThemeAnimationStatics(|this| unsafe {
17356             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17357             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
17358         })
17359     }
17360     pub fn FromHorizontalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
17361         Self::IRepositionThemeAnimationStatics(|this| unsafe {
17362             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17363             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
17364         })
17365     }
17366     pub fn FromVerticalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
17367         Self::IRepositionThemeAnimationStatics(|this| unsafe {
17368             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17369             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
17370         })
17371     }
17372     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17373         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17374         unsafe {
17375             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17376             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17377         }
17378     }
17379     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
17380         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17381         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
17382     }
17383     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
17384         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17385         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
17386     }
17387     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17388         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17389         unsafe {
17390             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17391             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17392         }
17393     }
17394     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17395         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17396         unsafe {
17397             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17398             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17399         }
17400     }
17401     #[cfg(feature = "UI_Core")]
17402     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
17403         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17404         unsafe {
17405             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17406             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
17407         }
17408     }
17409     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
17410         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
17411         unsafe {
17412             let mut result__: i64 = ::std::mem::zeroed();
17413             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
17414         }
17415     }
17416     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
17417         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
17418         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
17419     }
17420     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
17421         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17422         unsafe {
17423             let mut result__: bool = ::std::mem::zeroed();
17424             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
17425         }
17426     }
17427     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
17428         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17429         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
17430     }
17431     #[cfg(feature = "Foundation")]
17432     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
17433         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17434         unsafe {
17435             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17436             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
17437         }
17438     }
17439     #[cfg(feature = "Foundation")]
17440     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
17441         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17442         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
17443     }
17444     #[cfg(feature = "Foundation")]
17445     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
17446         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17447         unsafe {
17448             let mut result__: super::super::Duration = ::std::mem::zeroed();
17449             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
17450         }
17451     }
17452     #[cfg(feature = "Foundation")]
17453     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
17454         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17455         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
17456     }
17457     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
17458         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17459         unsafe {
17460             let mut result__: f64 = ::std::mem::zeroed();
17461             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
17462         }
17463     }
17464     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
17465         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17466         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
17467     }
17468     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
17469         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17470         unsafe {
17471             let mut result__: FillBehavior = ::std::mem::zeroed();
17472             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
17473         }
17474     }
17475     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
17476         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17477         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
17478     }
17479     #[cfg(feature = "Foundation")]
17480     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
17481         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17482         unsafe {
17483             let mut result__: RepeatBehavior = ::std::mem::zeroed();
17484             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
17485         }
17486     }
17487     #[cfg(feature = "Foundation")]
17488     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
17489         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17490         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
17491     }
17492     #[cfg(feature = "Foundation")]
17493     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
17494         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17495         unsafe {
17496             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
17497             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
17498         }
17499     }
17500     #[cfg(feature = "Foundation")]
17501     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
17502         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
17503         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
17504     }
17505     pub fn IRepositionThemeAnimationStatics<R, F: FnOnce(&IRepositionThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
17506         static mut SHARED: ::windows::runtime::FactoryCache<RepositionThemeAnimation, IRepositionThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
17507         unsafe { SHARED.call(callback) }
17508     }
17509 }
17510 unsafe impl ::windows::runtime::RuntimeType for RepositionThemeAnimation {
17511     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.RepositionThemeAnimation;{ecda24e8-8945-4949-a1bf-62109965a7e9})");
17512 }
17513 unsafe impl ::windows::runtime::Interface for RepositionThemeAnimation {
17514     type Vtable = IRepositionThemeAnimation_abi;
17515     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3973719272, 35141, 18761, [161, 191, 98, 16, 153, 101, 167, 233]);
17516 }
17517 impl ::windows::runtime::RuntimeName for RepositionThemeAnimation {
17518     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.RepositionThemeAnimation";
17519 }
17520 impl ::std::convert::From<RepositionThemeAnimation> for ::windows::runtime::IUnknown {
17521     fn from(value: RepositionThemeAnimation) -> Self {
17522         unsafe { ::std::mem::transmute(value) }
17523     }
17524 }
17525 impl ::std::convert::From<&RepositionThemeAnimation> for ::windows::runtime::IUnknown {
17526     fn from(value: &RepositionThemeAnimation) -> Self {
17527         ::std::convert::From::from(::std::clone::Clone::clone(value))
17528     }
17529 }
17530 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for RepositionThemeAnimation {
17531     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17532         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
17533     }
17534 }
17535 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &RepositionThemeAnimation {
17536     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17537         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
17538     }
17539 }
17540 impl ::std::convert::From<RepositionThemeAnimation> for ::windows::runtime::IInspectable {
17541     fn from(value: RepositionThemeAnimation) -> Self {
17542         value.0
17543     }
17544 }
17545 impl ::std::convert::From<&RepositionThemeAnimation> for ::windows::runtime::IInspectable {
17546     fn from(value: &RepositionThemeAnimation) -> Self {
17547         value.0.clone()
17548     }
17549 }
17550 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for RepositionThemeAnimation {
17551     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17552         ::windows::runtime::Param::Owned(self.0)
17553     }
17554 }
17555 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a RepositionThemeAnimation {
17556     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17557         ::windows::runtime::Param::Borrowed(&self.0)
17558     }
17559 }
17560 impl ::std::convert::From<RepositionThemeAnimation> for Timeline {
17561     fn from(value: RepositionThemeAnimation) -> Self {
17562         ::std::convert::Into::<Timeline>::into(&value)
17563     }
17564 }
17565 impl ::std::convert::From<&RepositionThemeAnimation> for Timeline {
17566     fn from(value: &RepositionThemeAnimation) -> Self {
17567         ::windows::runtime::Interface::cast(value).unwrap()
17568     }
17569 }
17570 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for RepositionThemeAnimation {
17571     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
17572         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
17573     }
17574 }
17575 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &RepositionThemeAnimation {
17576     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
17577         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
17578     }
17579 }
17580 impl ::std::convert::From<RepositionThemeAnimation> for super::super::DependencyObject {
17581     fn from(value: RepositionThemeAnimation) -> Self {
17582         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
17583     }
17584 }
17585 impl ::std::convert::From<&RepositionThemeAnimation> for super::super::DependencyObject {
17586     fn from(value: &RepositionThemeAnimation) -> Self {
17587         ::windows::runtime::Interface::cast(value).unwrap()
17588     }
17589 }
17590 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for RepositionThemeAnimation {
17591     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
17592         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
17593     }
17594 }
17595 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &RepositionThemeAnimation {
17596     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
17597         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
17598     }
17599 }
17600 unsafe impl ::std::marker::Send for RepositionThemeAnimation {}
17601 unsafe impl ::std::marker::Sync for RepositionThemeAnimation {}
17602 #[repr(transparent)]
17603 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
17604 pub struct RepositionThemeTransition(::windows::runtime::IInspectable);
17605 impl RepositionThemeTransition {
17606     pub fn new() -> ::windows::runtime::Result<Self> {
17607         Self::IActivationFactory(|f| f.activate_instance::<Self>())
17608     }
17609     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
17610         static mut SHARED: ::windows::runtime::FactoryCache<RepositionThemeTransition, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
17611         unsafe { SHARED.call(callback) }
17612     }
17613     pub fn IsStaggeringEnabled(&self) -> ::windows::runtime::Result<bool> {
17614         let this = &::windows::runtime::Interface::cast::<IRepositionThemeTransition2>(self)?;
17615         unsafe {
17616             let mut result__: bool = ::std::mem::zeroed();
17617             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
17618         }
17619     }
17620     pub fn SetIsStaggeringEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
17621         let this = &::windows::runtime::Interface::cast::<IRepositionThemeTransition2>(self)?;
17622         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
17623     }
17624     pub fn IsStaggeringEnabledProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
17625         Self::IRepositionThemeTransitionStatics2(|this| unsafe {
17626             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17627             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
17628         })
17629     }
17630     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17631         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17632         unsafe {
17633             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17634             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17635         }
17636     }
17637     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
17638         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17639         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
17640     }
17641     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
17642         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17643         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
17644     }
17645     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17646         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17647         unsafe {
17648             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17649             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17650         }
17651     }
17652     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17653         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17654         unsafe {
17655             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17656             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17657         }
17658     }
17659     #[cfg(feature = "UI_Core")]
17660     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
17661         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17662         unsafe {
17663             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17664             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
17665         }
17666     }
17667     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
17668         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
17669         unsafe {
17670             let mut result__: i64 = ::std::mem::zeroed();
17671             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
17672         }
17673     }
17674     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
17675         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
17676         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
17677     }
17678     pub fn IRepositionThemeTransitionStatics2<R, F: FnOnce(&IRepositionThemeTransitionStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
17679         static mut SHARED: ::windows::runtime::FactoryCache<RepositionThemeTransition, IRepositionThemeTransitionStatics2> = ::windows::runtime::FactoryCache::new();
17680         unsafe { SHARED.call(callback) }
17681     }
17682 }
17683 unsafe impl ::windows::runtime::RuntimeType for RepositionThemeTransition {
17684     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.RepositionThemeTransition;{88329b82-98f3-455a-ac53-2e7083b6e22c})");
17685 }
17686 unsafe impl ::windows::runtime::Interface for RepositionThemeTransition {
17687     type Vtable = IRepositionThemeTransition_abi;
17688     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2285017986, 39155, 17754, [172, 83, 46, 112, 131, 182, 226, 44]);
17689 }
17690 impl ::windows::runtime::RuntimeName for RepositionThemeTransition {
17691     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.RepositionThemeTransition";
17692 }
17693 impl ::std::convert::From<RepositionThemeTransition> for ::windows::runtime::IUnknown {
17694     fn from(value: RepositionThemeTransition) -> Self {
17695         unsafe { ::std::mem::transmute(value) }
17696     }
17697 }
17698 impl ::std::convert::From<&RepositionThemeTransition> for ::windows::runtime::IUnknown {
17699     fn from(value: &RepositionThemeTransition) -> Self {
17700         ::std::convert::From::from(::std::clone::Clone::clone(value))
17701     }
17702 }
17703 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for RepositionThemeTransition {
17704     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17705         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
17706     }
17707 }
17708 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &RepositionThemeTransition {
17709     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17710         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
17711     }
17712 }
17713 impl ::std::convert::From<RepositionThemeTransition> for ::windows::runtime::IInspectable {
17714     fn from(value: RepositionThemeTransition) -> Self {
17715         value.0
17716     }
17717 }
17718 impl ::std::convert::From<&RepositionThemeTransition> for ::windows::runtime::IInspectable {
17719     fn from(value: &RepositionThemeTransition) -> Self {
17720         value.0.clone()
17721     }
17722 }
17723 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for RepositionThemeTransition {
17724     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17725         ::windows::runtime::Param::Owned(self.0)
17726     }
17727 }
17728 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a RepositionThemeTransition {
17729     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17730         ::windows::runtime::Param::Borrowed(&self.0)
17731     }
17732 }
17733 impl ::std::convert::From<RepositionThemeTransition> for Transition {
17734     fn from(value: RepositionThemeTransition) -> Self {
17735         ::std::convert::Into::<Transition>::into(&value)
17736     }
17737 }
17738 impl ::std::convert::From<&RepositionThemeTransition> for Transition {
17739     fn from(value: &RepositionThemeTransition) -> Self {
17740         ::windows::runtime::Interface::cast(value).unwrap()
17741     }
17742 }
17743 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for RepositionThemeTransition {
17744     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
17745         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(self))
17746     }
17747 }
17748 impl<'a> ::windows::runtime::IntoParam<'a, Transition> for &RepositionThemeTransition {
17749     fn into_param(self) -> ::windows::runtime::Param<'a, Transition> {
17750         ::windows::runtime::Param::Owned(::std::convert::Into::<Transition>::into(::std::clone::Clone::clone(self)))
17751     }
17752 }
17753 impl ::std::convert::From<RepositionThemeTransition> for super::super::DependencyObject {
17754     fn from(value: RepositionThemeTransition) -> Self {
17755         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
17756     }
17757 }
17758 impl ::std::convert::From<&RepositionThemeTransition> for super::super::DependencyObject {
17759     fn from(value: &RepositionThemeTransition) -> Self {
17760         ::windows::runtime::Interface::cast(value).unwrap()
17761     }
17762 }
17763 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for RepositionThemeTransition {
17764     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
17765         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
17766     }
17767 }
17768 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &RepositionThemeTransition {
17769     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
17770         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
17771     }
17772 }
17773 unsafe impl ::std::marker::Send for RepositionThemeTransition {}
17774 unsafe impl ::std::marker::Sync for RepositionThemeTransition {}
17775 #[repr(transparent)]
17776 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
17777 pub struct SineEase(::windows::runtime::IInspectable);
17778 impl SineEase {
17779     pub fn new() -> ::windows::runtime::Result<Self> {
17780         Self::IActivationFactory(|f| f.activate_instance::<Self>())
17781     }
17782     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
17783         static mut SHARED: ::windows::runtime::FactoryCache<SineEase, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
17784         unsafe { SHARED.call(callback) }
17785     }
17786     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17787         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17788         unsafe {
17789             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17790             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17791         }
17792     }
17793     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
17794         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17795         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
17796     }
17797     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
17798         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17799         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
17800     }
17801     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17802         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17803         unsafe {
17804             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17805             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17806         }
17807     }
17808     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17809         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17810         unsafe {
17811             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17812             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17813         }
17814     }
17815     #[cfg(feature = "UI_Core")]
17816     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
17817         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17818         unsafe {
17819             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17820             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
17821         }
17822     }
17823     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
17824         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
17825         unsafe {
17826             let mut result__: i64 = ::std::mem::zeroed();
17827             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
17828         }
17829     }
17830     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
17831         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
17832         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
17833     }
17834     pub fn EasingMode(&self) -> ::windows::runtime::Result<EasingMode> {
17835         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
17836         unsafe {
17837             let mut result__: EasingMode = ::std::mem::zeroed();
17838             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EasingMode>(result__)
17839         }
17840     }
17841     pub fn SetEasingMode(&self, value: EasingMode) -> ::windows::runtime::Result<()> {
17842         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
17843         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
17844     }
17845     pub fn Ease(&self, normalizedtime: f64) -> ::windows::runtime::Result<f64> {
17846         let this = &::windows::runtime::Interface::cast::<IEasingFunctionBase>(self)?;
17847         unsafe {
17848             let mut result__: f64 = ::std::mem::zeroed();
17849             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), normalizedtime, &mut result__).from_abi::<f64>(result__)
17850         }
17851     }
17852 }
17853 unsafe impl ::windows::runtime::RuntimeType for SineEase {
17854     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SineEase;{a9382962-230b-49da-9e0d-664987892343})");
17855 }
17856 unsafe impl ::windows::runtime::Interface for SineEase {
17857     type Vtable = ISineEase_abi;
17858     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2839030114, 8971, 18906, [158, 13, 102, 73, 135, 137, 35, 67]);
17859 }
17860 impl ::windows::runtime::RuntimeName for SineEase {
17861     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SineEase";
17862 }
17863 impl ::std::convert::From<SineEase> for ::windows::runtime::IUnknown {
17864     fn from(value: SineEase) -> Self {
17865         unsafe { ::std::mem::transmute(value) }
17866     }
17867 }
17868 impl ::std::convert::From<&SineEase> for ::windows::runtime::IUnknown {
17869     fn from(value: &SineEase) -> Self {
17870         ::std::convert::From::from(::std::clone::Clone::clone(value))
17871     }
17872 }
17873 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SineEase {
17874     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17875         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
17876     }
17877 }
17878 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SineEase {
17879     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
17880         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
17881     }
17882 }
17883 impl ::std::convert::From<SineEase> for ::windows::runtime::IInspectable {
17884     fn from(value: SineEase) -> Self {
17885         value.0
17886     }
17887 }
17888 impl ::std::convert::From<&SineEase> for ::windows::runtime::IInspectable {
17889     fn from(value: &SineEase) -> Self {
17890         value.0.clone()
17891     }
17892 }
17893 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SineEase {
17894     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17895         ::windows::runtime::Param::Owned(self.0)
17896     }
17897 }
17898 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SineEase {
17899     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
17900         ::windows::runtime::Param::Borrowed(&self.0)
17901     }
17902 }
17903 impl ::std::convert::From<SineEase> for EasingFunctionBase {
17904     fn from(value: SineEase) -> Self {
17905         ::std::convert::Into::<EasingFunctionBase>::into(&value)
17906     }
17907 }
17908 impl ::std::convert::From<&SineEase> for EasingFunctionBase {
17909     fn from(value: &SineEase) -> Self {
17910         ::windows::runtime::Interface::cast(value).unwrap()
17911     }
17912 }
17913 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for SineEase {
17914     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
17915         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(self))
17916     }
17917 }
17918 impl<'a> ::windows::runtime::IntoParam<'a, EasingFunctionBase> for &SineEase {
17919     fn into_param(self) -> ::windows::runtime::Param<'a, EasingFunctionBase> {
17920         ::windows::runtime::Param::Owned(::std::convert::Into::<EasingFunctionBase>::into(::std::clone::Clone::clone(self)))
17921     }
17922 }
17923 impl ::std::convert::From<SineEase> for super::super::DependencyObject {
17924     fn from(value: SineEase) -> Self {
17925         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
17926     }
17927 }
17928 impl ::std::convert::From<&SineEase> for super::super::DependencyObject {
17929     fn from(value: &SineEase) -> Self {
17930         ::windows::runtime::Interface::cast(value).unwrap()
17931     }
17932 }
17933 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SineEase {
17934     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
17935         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
17936     }
17937 }
17938 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SineEase {
17939     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
17940         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
17941     }
17942 }
17943 unsafe impl ::std::marker::Send for SineEase {}
17944 unsafe impl ::std::marker::Sync for SineEase {}
17945 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
17946 #[repr(transparent)]
17947 pub struct SlideNavigationTransitionEffect(pub i32);
17948 impl SlideNavigationTransitionEffect {
17949     pub const FromBottom: SlideNavigationTransitionEffect = SlideNavigationTransitionEffect(0i32);
17950     pub const FromLeft: SlideNavigationTransitionEffect = SlideNavigationTransitionEffect(1i32);
17951     pub const FromRight: SlideNavigationTransitionEffect = SlideNavigationTransitionEffect(2i32);
17952 }
17953 impl ::std::convert::From<i32> for SlideNavigationTransitionEffect {
17954     fn from(value: i32) -> Self {
17955         Self(value)
17956     }
17957 }
17958 unsafe impl ::windows::runtime::Abi for SlideNavigationTransitionEffect {
17959     type Abi = Self;
17960     type DefaultType = Self;
17961 }
17962 unsafe impl ::windows::runtime::RuntimeType for SlideNavigationTransitionEffect {
17963     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.UI.Xaml.Media.Animation.SlideNavigationTransitionEffect;i4)");
17964 }
17965 #[repr(transparent)]
17966 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
17967 pub struct SlideNavigationTransitionInfo(::windows::runtime::IInspectable);
17968 impl SlideNavigationTransitionInfo {
17969     pub fn new() -> ::windows::runtime::Result<Self> {
17970         Self::IActivationFactory(|f| f.activate_instance::<Self>())
17971     }
17972     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
17973         static mut SHARED: ::windows::runtime::FactoryCache<SlideNavigationTransitionInfo, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
17974         unsafe { SHARED.call(callback) }
17975     }
17976     pub fn Effect(&self) -> ::windows::runtime::Result<SlideNavigationTransitionEffect> {
17977         let this = &::windows::runtime::Interface::cast::<ISlideNavigationTransitionInfo2>(self)?;
17978         unsafe {
17979             let mut result__: SlideNavigationTransitionEffect = ::std::mem::zeroed();
17980             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SlideNavigationTransitionEffect>(result__)
17981         }
17982     }
17983     pub fn SetEffect(&self, value: SlideNavigationTransitionEffect) -> ::windows::runtime::Result<()> {
17984         let this = &::windows::runtime::Interface::cast::<ISlideNavigationTransitionInfo2>(self)?;
17985         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
17986     }
17987     pub fn EffectProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
17988         Self::ISlideNavigationTransitionInfoStatics2(|this| unsafe {
17989             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17990             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
17991         })
17992     }
17993     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
17994         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
17995         unsafe {
17996             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
17997             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
17998         }
17999     }
18000     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
18001         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18002         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
18003     }
18004     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
18005         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18006         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
18007     }
18008     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18009         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18010         unsafe {
18011             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18012             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18013         }
18014     }
18015     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18016         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18017         unsafe {
18018             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18019             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18020         }
18021     }
18022     #[cfg(feature = "UI_Core")]
18023     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
18024         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18025         unsafe {
18026             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18027             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
18028         }
18029     }
18030     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
18031         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18032         unsafe {
18033             let mut result__: i64 = ::std::mem::zeroed();
18034             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
18035         }
18036     }
18037     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
18038         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18039         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
18040     }
18041     pub fn GetNavigationStateCore(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
18042         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
18043         unsafe {
18044             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
18045             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
18046         }
18047     }
18048     pub fn SetNavigationStateCore<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, navigationstate: Param0) -> ::windows::runtime::Result<()> {
18049         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
18050         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), navigationstate.into_param().abi()).ok() }
18051     }
18052     pub fn ISlideNavigationTransitionInfoStatics2<R, F: FnOnce(&ISlideNavigationTransitionInfoStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
18053         static mut SHARED: ::windows::runtime::FactoryCache<SlideNavigationTransitionInfo, ISlideNavigationTransitionInfoStatics2> = ::windows::runtime::FactoryCache::new();
18054         unsafe { SHARED.call(callback) }
18055     }
18056 }
18057 unsafe impl ::windows::runtime::RuntimeType for SlideNavigationTransitionInfo {
18058     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SlideNavigationTransitionInfo;{d6ac9d77-2e03-405f-80ed-e62beef3668f})");
18059 }
18060 unsafe impl ::windows::runtime::Interface for SlideNavigationTransitionInfo {
18061     type Vtable = ISlideNavigationTransitionInfo_abi;
18062     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3601636727, 11779, 16479, [128, 237, 230, 43, 238, 243, 102, 143]);
18063 }
18064 impl ::windows::runtime::RuntimeName for SlideNavigationTransitionInfo {
18065     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SlideNavigationTransitionInfo";
18066 }
18067 impl ::std::convert::From<SlideNavigationTransitionInfo> for ::windows::runtime::IUnknown {
18068     fn from(value: SlideNavigationTransitionInfo) -> Self {
18069         unsafe { ::std::mem::transmute(value) }
18070     }
18071 }
18072 impl ::std::convert::From<&SlideNavigationTransitionInfo> for ::windows::runtime::IUnknown {
18073     fn from(value: &SlideNavigationTransitionInfo) -> Self {
18074         ::std::convert::From::from(::std::clone::Clone::clone(value))
18075     }
18076 }
18077 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SlideNavigationTransitionInfo {
18078     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
18079         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
18080     }
18081 }
18082 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SlideNavigationTransitionInfo {
18083     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
18084         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
18085     }
18086 }
18087 impl ::std::convert::From<SlideNavigationTransitionInfo> for ::windows::runtime::IInspectable {
18088     fn from(value: SlideNavigationTransitionInfo) -> Self {
18089         value.0
18090     }
18091 }
18092 impl ::std::convert::From<&SlideNavigationTransitionInfo> for ::windows::runtime::IInspectable {
18093     fn from(value: &SlideNavigationTransitionInfo) -> Self {
18094         value.0.clone()
18095     }
18096 }
18097 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SlideNavigationTransitionInfo {
18098     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
18099         ::windows::runtime::Param::Owned(self.0)
18100     }
18101 }
18102 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SlideNavigationTransitionInfo {
18103     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
18104         ::windows::runtime::Param::Borrowed(&self.0)
18105     }
18106 }
18107 impl ::std::convert::From<SlideNavigationTransitionInfo> for NavigationTransitionInfo {
18108     fn from(value: SlideNavigationTransitionInfo) -> Self {
18109         ::std::convert::Into::<NavigationTransitionInfo>::into(&value)
18110     }
18111 }
18112 impl ::std::convert::From<&SlideNavigationTransitionInfo> for NavigationTransitionInfo {
18113     fn from(value: &SlideNavigationTransitionInfo) -> Self {
18114         ::windows::runtime::Interface::cast(value).unwrap()
18115     }
18116 }
18117 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for SlideNavigationTransitionInfo {
18118     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
18119         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(self))
18120     }
18121 }
18122 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for &SlideNavigationTransitionInfo {
18123     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
18124         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(::std::clone::Clone::clone(self)))
18125     }
18126 }
18127 impl ::std::convert::From<SlideNavigationTransitionInfo> for super::super::DependencyObject {
18128     fn from(value: SlideNavigationTransitionInfo) -> Self {
18129         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
18130     }
18131 }
18132 impl ::std::convert::From<&SlideNavigationTransitionInfo> for super::super::DependencyObject {
18133     fn from(value: &SlideNavigationTransitionInfo) -> Self {
18134         ::windows::runtime::Interface::cast(value).unwrap()
18135     }
18136 }
18137 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SlideNavigationTransitionInfo {
18138     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
18139         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
18140     }
18141 }
18142 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SlideNavigationTransitionInfo {
18143     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
18144         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
18145     }
18146 }
18147 unsafe impl ::std::marker::Send for SlideNavigationTransitionInfo {}
18148 unsafe impl ::std::marker::Sync for SlideNavigationTransitionInfo {}
18149 #[repr(transparent)]
18150 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
18151 pub struct SplineColorKeyFrame(::windows::runtime::IInspectable);
18152 impl SplineColorKeyFrame {
18153     pub fn new() -> ::windows::runtime::Result<Self> {
18154         Self::IActivationFactory(|f| f.activate_instance::<Self>())
18155     }
18156     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
18157         static mut SHARED: ::windows::runtime::FactoryCache<SplineColorKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
18158         unsafe { SHARED.call(callback) }
18159     }
18160     pub fn KeySpline(&self) -> ::windows::runtime::Result<KeySpline> {
18161         let this = self;
18162         unsafe {
18163             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18164             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeySpline>(result__)
18165         }
18166     }
18167     pub fn SetKeySpline<'a, Param0: ::windows::runtime::IntoParam<'a, KeySpline>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18168         let this = self;
18169         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18170     }
18171     pub fn KeySplineProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18172         Self::ISplineColorKeyFrameStatics(|this| unsafe {
18173             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18174             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18175         })
18176     }
18177     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18178         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18179         unsafe {
18180             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18181             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18182         }
18183     }
18184     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
18185         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18186         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
18187     }
18188     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
18189         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18190         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
18191     }
18192     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18193         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18194         unsafe {
18195             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18196             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18197         }
18198     }
18199     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18200         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18201         unsafe {
18202             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18203             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18204         }
18205     }
18206     #[cfg(feature = "UI_Core")]
18207     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
18208         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18209         unsafe {
18210             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18211             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
18212         }
18213     }
18214     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
18215         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18216         unsafe {
18217             let mut result__: i64 = ::std::mem::zeroed();
18218             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
18219         }
18220     }
18221     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
18222         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18223         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
18224     }
18225     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::Color> {
18226         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
18227         unsafe {
18228             let mut result__: super::super::super::Color = ::std::mem::zeroed();
18229             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Color>(result__)
18230         }
18231     }
18232     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::Color>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18233         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
18234         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18235     }
18236     #[cfg(feature = "Foundation")]
18237     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
18238         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
18239         unsafe {
18240             let mut result__: KeyTime = ::std::mem::zeroed();
18241             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
18242         }
18243     }
18244     #[cfg(feature = "Foundation")]
18245     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18246         let this = &::windows::runtime::Interface::cast::<IColorKeyFrame>(self)?;
18247         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18248     }
18249     pub fn ISplineColorKeyFrameStatics<R, F: FnOnce(&ISplineColorKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
18250         static mut SHARED: ::windows::runtime::FactoryCache<SplineColorKeyFrame, ISplineColorKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
18251         unsafe { SHARED.call(callback) }
18252     }
18253 }
18254 unsafe impl ::windows::runtime::RuntimeType for SplineColorKeyFrame {
18255     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SplineColorKeyFrame;{1a4a5941-1fe0-473a-8efe-4316d8c86229})");
18256 }
18257 unsafe impl ::windows::runtime::Interface for SplineColorKeyFrame {
18258     type Vtable = ISplineColorKeyFrame_abi;
18259     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(441080129, 8160, 18234, [142, 254, 67, 22, 216, 200, 98, 41]);
18260 }
18261 impl ::windows::runtime::RuntimeName for SplineColorKeyFrame {
18262     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SplineColorKeyFrame";
18263 }
18264 impl ::std::convert::From<SplineColorKeyFrame> for ::windows::runtime::IUnknown {
18265     fn from(value: SplineColorKeyFrame) -> Self {
18266         unsafe { ::std::mem::transmute(value) }
18267     }
18268 }
18269 impl ::std::convert::From<&SplineColorKeyFrame> for ::windows::runtime::IUnknown {
18270     fn from(value: &SplineColorKeyFrame) -> Self {
18271         ::std::convert::From::from(::std::clone::Clone::clone(value))
18272     }
18273 }
18274 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SplineColorKeyFrame {
18275     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
18276         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
18277     }
18278 }
18279 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SplineColorKeyFrame {
18280     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
18281         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
18282     }
18283 }
18284 impl ::std::convert::From<SplineColorKeyFrame> for ::windows::runtime::IInspectable {
18285     fn from(value: SplineColorKeyFrame) -> Self {
18286         value.0
18287     }
18288 }
18289 impl ::std::convert::From<&SplineColorKeyFrame> for ::windows::runtime::IInspectable {
18290     fn from(value: &SplineColorKeyFrame) -> Self {
18291         value.0.clone()
18292     }
18293 }
18294 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SplineColorKeyFrame {
18295     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
18296         ::windows::runtime::Param::Owned(self.0)
18297     }
18298 }
18299 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SplineColorKeyFrame {
18300     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
18301         ::windows::runtime::Param::Borrowed(&self.0)
18302     }
18303 }
18304 impl ::std::convert::From<SplineColorKeyFrame> for ColorKeyFrame {
18305     fn from(value: SplineColorKeyFrame) -> Self {
18306         ::std::convert::Into::<ColorKeyFrame>::into(&value)
18307     }
18308 }
18309 impl ::std::convert::From<&SplineColorKeyFrame> for ColorKeyFrame {
18310     fn from(value: &SplineColorKeyFrame) -> Self {
18311         ::windows::runtime::Interface::cast(value).unwrap()
18312     }
18313 }
18314 impl<'a> ::windows::runtime::IntoParam<'a, ColorKeyFrame> for SplineColorKeyFrame {
18315     fn into_param(self) -> ::windows::runtime::Param<'a, ColorKeyFrame> {
18316         ::windows::runtime::Param::Owned(::std::convert::Into::<ColorKeyFrame>::into(self))
18317     }
18318 }
18319 impl<'a> ::windows::runtime::IntoParam<'a, ColorKeyFrame> for &SplineColorKeyFrame {
18320     fn into_param(self) -> ::windows::runtime::Param<'a, ColorKeyFrame> {
18321         ::windows::runtime::Param::Owned(::std::convert::Into::<ColorKeyFrame>::into(::std::clone::Clone::clone(self)))
18322     }
18323 }
18324 impl ::std::convert::From<SplineColorKeyFrame> for super::super::DependencyObject {
18325     fn from(value: SplineColorKeyFrame) -> Self {
18326         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
18327     }
18328 }
18329 impl ::std::convert::From<&SplineColorKeyFrame> for super::super::DependencyObject {
18330     fn from(value: &SplineColorKeyFrame) -> Self {
18331         ::windows::runtime::Interface::cast(value).unwrap()
18332     }
18333 }
18334 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SplineColorKeyFrame {
18335     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
18336         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
18337     }
18338 }
18339 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SplineColorKeyFrame {
18340     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
18341         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
18342     }
18343 }
18344 unsafe impl ::std::marker::Send for SplineColorKeyFrame {}
18345 unsafe impl ::std::marker::Sync for SplineColorKeyFrame {}
18346 #[repr(transparent)]
18347 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
18348 pub struct SplineDoubleKeyFrame(::windows::runtime::IInspectable);
18349 impl SplineDoubleKeyFrame {
18350     pub fn new() -> ::windows::runtime::Result<Self> {
18351         Self::IActivationFactory(|f| f.activate_instance::<Self>())
18352     }
18353     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
18354         static mut SHARED: ::windows::runtime::FactoryCache<SplineDoubleKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
18355         unsafe { SHARED.call(callback) }
18356     }
18357     pub fn KeySpline(&self) -> ::windows::runtime::Result<KeySpline> {
18358         let this = self;
18359         unsafe {
18360             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18361             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeySpline>(result__)
18362         }
18363     }
18364     pub fn SetKeySpline<'a, Param0: ::windows::runtime::IntoParam<'a, KeySpline>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18365         let this = self;
18366         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18367     }
18368     pub fn KeySplineProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18369         Self::ISplineDoubleKeyFrameStatics(|this| unsafe {
18370             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18371             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18372         })
18373     }
18374     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18375         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18376         unsafe {
18377             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18378             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18379         }
18380     }
18381     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
18382         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18383         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
18384     }
18385     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
18386         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18387         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
18388     }
18389     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18390         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18391         unsafe {
18392             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18393             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18394         }
18395     }
18396     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18397         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18398         unsafe {
18399             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18400             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18401         }
18402     }
18403     #[cfg(feature = "UI_Core")]
18404     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
18405         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18406         unsafe {
18407             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18408             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
18409         }
18410     }
18411     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
18412         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18413         unsafe {
18414             let mut result__: i64 = ::std::mem::zeroed();
18415             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
18416         }
18417     }
18418     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
18419         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18420         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
18421     }
18422     pub fn Value(&self) -> ::windows::runtime::Result<f64> {
18423         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
18424         unsafe {
18425             let mut result__: f64 = ::std::mem::zeroed();
18426             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
18427         }
18428     }
18429     pub fn SetValue2(&self, value: f64) -> ::windows::runtime::Result<()> {
18430         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
18431         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
18432     }
18433     #[cfg(feature = "Foundation")]
18434     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
18435         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
18436         unsafe {
18437             let mut result__: KeyTime = ::std::mem::zeroed();
18438             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
18439         }
18440     }
18441     #[cfg(feature = "Foundation")]
18442     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18443         let this = &::windows::runtime::Interface::cast::<IDoubleKeyFrame>(self)?;
18444         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18445     }
18446     pub fn ISplineDoubleKeyFrameStatics<R, F: FnOnce(&ISplineDoubleKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
18447         static mut SHARED: ::windows::runtime::FactoryCache<SplineDoubleKeyFrame, ISplineDoubleKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
18448         unsafe { SHARED.call(callback) }
18449     }
18450 }
18451 unsafe impl ::windows::runtime::RuntimeType for SplineDoubleKeyFrame {
18452     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SplineDoubleKeyFrame;{00d72d38-6b2b-4843-838e-c8b115eec801})");
18453 }
18454 unsafe impl ::windows::runtime::Interface for SplineDoubleKeyFrame {
18455     type Vtable = ISplineDoubleKeyFrame_abi;
18456     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(14101816, 27435, 18499, [131, 142, 200, 177, 21, 238, 200, 1]);
18457 }
18458 impl ::windows::runtime::RuntimeName for SplineDoubleKeyFrame {
18459     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SplineDoubleKeyFrame";
18460 }
18461 impl ::std::convert::From<SplineDoubleKeyFrame> for ::windows::runtime::IUnknown {
18462     fn from(value: SplineDoubleKeyFrame) -> Self {
18463         unsafe { ::std::mem::transmute(value) }
18464     }
18465 }
18466 impl ::std::convert::From<&SplineDoubleKeyFrame> for ::windows::runtime::IUnknown {
18467     fn from(value: &SplineDoubleKeyFrame) -> Self {
18468         ::std::convert::From::from(::std::clone::Clone::clone(value))
18469     }
18470 }
18471 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SplineDoubleKeyFrame {
18472     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
18473         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
18474     }
18475 }
18476 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SplineDoubleKeyFrame {
18477     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
18478         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
18479     }
18480 }
18481 impl ::std::convert::From<SplineDoubleKeyFrame> for ::windows::runtime::IInspectable {
18482     fn from(value: SplineDoubleKeyFrame) -> Self {
18483         value.0
18484     }
18485 }
18486 impl ::std::convert::From<&SplineDoubleKeyFrame> for ::windows::runtime::IInspectable {
18487     fn from(value: &SplineDoubleKeyFrame) -> Self {
18488         value.0.clone()
18489     }
18490 }
18491 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SplineDoubleKeyFrame {
18492     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
18493         ::windows::runtime::Param::Owned(self.0)
18494     }
18495 }
18496 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SplineDoubleKeyFrame {
18497     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
18498         ::windows::runtime::Param::Borrowed(&self.0)
18499     }
18500 }
18501 impl ::std::convert::From<SplineDoubleKeyFrame> for DoubleKeyFrame {
18502     fn from(value: SplineDoubleKeyFrame) -> Self {
18503         ::std::convert::Into::<DoubleKeyFrame>::into(&value)
18504     }
18505 }
18506 impl ::std::convert::From<&SplineDoubleKeyFrame> for DoubleKeyFrame {
18507     fn from(value: &SplineDoubleKeyFrame) -> Self {
18508         ::windows::runtime::Interface::cast(value).unwrap()
18509     }
18510 }
18511 impl<'a> ::windows::runtime::IntoParam<'a, DoubleKeyFrame> for SplineDoubleKeyFrame {
18512     fn into_param(self) -> ::windows::runtime::Param<'a, DoubleKeyFrame> {
18513         ::windows::runtime::Param::Owned(::std::convert::Into::<DoubleKeyFrame>::into(self))
18514     }
18515 }
18516 impl<'a> ::windows::runtime::IntoParam<'a, DoubleKeyFrame> for &SplineDoubleKeyFrame {
18517     fn into_param(self) -> ::windows::runtime::Param<'a, DoubleKeyFrame> {
18518         ::windows::runtime::Param::Owned(::std::convert::Into::<DoubleKeyFrame>::into(::std::clone::Clone::clone(self)))
18519     }
18520 }
18521 impl ::std::convert::From<SplineDoubleKeyFrame> for super::super::DependencyObject {
18522     fn from(value: SplineDoubleKeyFrame) -> Self {
18523         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
18524     }
18525 }
18526 impl ::std::convert::From<&SplineDoubleKeyFrame> for super::super::DependencyObject {
18527     fn from(value: &SplineDoubleKeyFrame) -> Self {
18528         ::windows::runtime::Interface::cast(value).unwrap()
18529     }
18530 }
18531 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SplineDoubleKeyFrame {
18532     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
18533         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
18534     }
18535 }
18536 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SplineDoubleKeyFrame {
18537     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
18538         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
18539     }
18540 }
18541 unsafe impl ::std::marker::Send for SplineDoubleKeyFrame {}
18542 unsafe impl ::std::marker::Sync for SplineDoubleKeyFrame {}
18543 #[repr(transparent)]
18544 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
18545 pub struct SplinePointKeyFrame(::windows::runtime::IInspectable);
18546 impl SplinePointKeyFrame {
18547     pub fn new() -> ::windows::runtime::Result<Self> {
18548         Self::IActivationFactory(|f| f.activate_instance::<Self>())
18549     }
18550     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
18551         static mut SHARED: ::windows::runtime::FactoryCache<SplinePointKeyFrame, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
18552         unsafe { SHARED.call(callback) }
18553     }
18554     pub fn KeySpline(&self) -> ::windows::runtime::Result<KeySpline> {
18555         let this = self;
18556         unsafe {
18557             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18558             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeySpline>(result__)
18559         }
18560     }
18561     pub fn SetKeySpline<'a, Param0: ::windows::runtime::IntoParam<'a, KeySpline>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18562         let this = self;
18563         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18564     }
18565     pub fn KeySplineProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18566         Self::ISplinePointKeyFrameStatics(|this| unsafe {
18567             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18568             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18569         })
18570     }
18571     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18572         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18573         unsafe {
18574             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18575             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18576         }
18577     }
18578     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
18579         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18580         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
18581     }
18582     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
18583         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18584         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
18585     }
18586     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18587         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18588         unsafe {
18589             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18590             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18591         }
18592     }
18593     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18594         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18595         unsafe {
18596             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18597             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18598         }
18599     }
18600     #[cfg(feature = "UI_Core")]
18601     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
18602         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18603         unsafe {
18604             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18605             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
18606         }
18607     }
18608     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
18609         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18610         unsafe {
18611             let mut result__: i64 = ::std::mem::zeroed();
18612             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
18613         }
18614     }
18615     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
18616         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18617         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
18618     }
18619     #[cfg(feature = "Foundation")]
18620     pub fn Value(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Point> {
18621         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
18622         unsafe {
18623             let mut result__: super::super::super::super::Foundation::Point = ::std::mem::zeroed();
18624             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Point>(result__)
18625         }
18626     }
18627     #[cfg(feature = "Foundation")]
18628     pub fn SetValue2<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Point>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18629         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
18630         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18631     }
18632     #[cfg(feature = "Foundation")]
18633     pub fn KeyTime(&self) -> ::windows::runtime::Result<KeyTime> {
18634         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
18635         unsafe {
18636             let mut result__: KeyTime = ::std::mem::zeroed();
18637             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<KeyTime>(result__)
18638         }
18639     }
18640     #[cfg(feature = "Foundation")]
18641     pub fn SetKeyTime<'a, Param0: ::windows::runtime::IntoParam<'a, KeyTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18642         let this = &::windows::runtime::Interface::cast::<IPointKeyFrame>(self)?;
18643         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18644     }
18645     pub fn ISplinePointKeyFrameStatics<R, F: FnOnce(&ISplinePointKeyFrameStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
18646         static mut SHARED: ::windows::runtime::FactoryCache<SplinePointKeyFrame, ISplinePointKeyFrameStatics> = ::windows::runtime::FactoryCache::new();
18647         unsafe { SHARED.call(callback) }
18648     }
18649 }
18650 unsafe impl ::windows::runtime::RuntimeType for SplinePointKeyFrame {
18651     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SplinePointKeyFrame;{0f19f306-7036-494f-bc3c-780df0cc524a})");
18652 }
18653 unsafe impl ::windows::runtime::Interface for SplinePointKeyFrame {
18654     type Vtable = ISplinePointKeyFrame_abi;
18655     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(253358854, 28726, 18767, [188, 60, 120, 13, 240, 204, 82, 74]);
18656 }
18657 impl ::windows::runtime::RuntimeName for SplinePointKeyFrame {
18658     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SplinePointKeyFrame";
18659 }
18660 impl ::std::convert::From<SplinePointKeyFrame> for ::windows::runtime::IUnknown {
18661     fn from(value: SplinePointKeyFrame) -> Self {
18662         unsafe { ::std::mem::transmute(value) }
18663     }
18664 }
18665 impl ::std::convert::From<&SplinePointKeyFrame> for ::windows::runtime::IUnknown {
18666     fn from(value: &SplinePointKeyFrame) -> Self {
18667         ::std::convert::From::from(::std::clone::Clone::clone(value))
18668     }
18669 }
18670 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SplinePointKeyFrame {
18671     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
18672         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
18673     }
18674 }
18675 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SplinePointKeyFrame {
18676     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
18677         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
18678     }
18679 }
18680 impl ::std::convert::From<SplinePointKeyFrame> for ::windows::runtime::IInspectable {
18681     fn from(value: SplinePointKeyFrame) -> Self {
18682         value.0
18683     }
18684 }
18685 impl ::std::convert::From<&SplinePointKeyFrame> for ::windows::runtime::IInspectable {
18686     fn from(value: &SplinePointKeyFrame) -> Self {
18687         value.0.clone()
18688     }
18689 }
18690 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SplinePointKeyFrame {
18691     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
18692         ::windows::runtime::Param::Owned(self.0)
18693     }
18694 }
18695 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SplinePointKeyFrame {
18696     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
18697         ::windows::runtime::Param::Borrowed(&self.0)
18698     }
18699 }
18700 impl ::std::convert::From<SplinePointKeyFrame> for PointKeyFrame {
18701     fn from(value: SplinePointKeyFrame) -> Self {
18702         ::std::convert::Into::<PointKeyFrame>::into(&value)
18703     }
18704 }
18705 impl ::std::convert::From<&SplinePointKeyFrame> for PointKeyFrame {
18706     fn from(value: &SplinePointKeyFrame) -> Self {
18707         ::windows::runtime::Interface::cast(value).unwrap()
18708     }
18709 }
18710 impl<'a> ::windows::runtime::IntoParam<'a, PointKeyFrame> for SplinePointKeyFrame {
18711     fn into_param(self) -> ::windows::runtime::Param<'a, PointKeyFrame> {
18712         ::windows::runtime::Param::Owned(::std::convert::Into::<PointKeyFrame>::into(self))
18713     }
18714 }
18715 impl<'a> ::windows::runtime::IntoParam<'a, PointKeyFrame> for &SplinePointKeyFrame {
18716     fn into_param(self) -> ::windows::runtime::Param<'a, PointKeyFrame> {
18717         ::windows::runtime::Param::Owned(::std::convert::Into::<PointKeyFrame>::into(::std::clone::Clone::clone(self)))
18718     }
18719 }
18720 impl ::std::convert::From<SplinePointKeyFrame> for super::super::DependencyObject {
18721     fn from(value: SplinePointKeyFrame) -> Self {
18722         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
18723     }
18724 }
18725 impl ::std::convert::From<&SplinePointKeyFrame> for super::super::DependencyObject {
18726     fn from(value: &SplinePointKeyFrame) -> Self {
18727         ::windows::runtime::Interface::cast(value).unwrap()
18728     }
18729 }
18730 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SplinePointKeyFrame {
18731     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
18732         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
18733     }
18734 }
18735 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SplinePointKeyFrame {
18736     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
18737         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
18738     }
18739 }
18740 unsafe impl ::std::marker::Send for SplinePointKeyFrame {}
18741 unsafe impl ::std::marker::Sync for SplinePointKeyFrame {}
18742 #[repr(transparent)]
18743 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
18744 pub struct SplitCloseThemeAnimation(::windows::runtime::IInspectable);
18745 impl SplitCloseThemeAnimation {
18746     pub fn new() -> ::windows::runtime::Result<Self> {
18747         Self::IActivationFactory(|f| f.activate_instance::<Self>())
18748     }
18749     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
18750         static mut SHARED: ::windows::runtime::FactoryCache<SplitCloseThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
18751         unsafe { SHARED.call(callback) }
18752     }
18753     pub fn OpenedTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
18754         let this = self;
18755         unsafe {
18756             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
18757             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
18758         }
18759     }
18760     pub fn SetOpenedTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18761         let this = self;
18762         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18763     }
18764     pub fn OpenedTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
18765         let this = self;
18766         unsafe {
18767             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18768             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
18769         }
18770     }
18771     pub fn SetOpenedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18772         let this = self;
18773         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18774     }
18775     pub fn ClosedTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
18776         let this = self;
18777         unsafe {
18778             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
18779             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
18780         }
18781     }
18782     pub fn SetClosedTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18783         let this = self;
18784         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18785     }
18786     pub fn ClosedTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
18787         let this = self;
18788         unsafe {
18789             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18790             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
18791         }
18792     }
18793     pub fn SetClosedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18794         let this = self;
18795         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18796     }
18797     pub fn ContentTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
18798         let this = self;
18799         unsafe {
18800             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
18801             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
18802         }
18803     }
18804     pub fn SetContentTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18805         let this = self;
18806         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18807     }
18808     pub fn ContentTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
18809         let this = self;
18810         unsafe {
18811             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18812             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
18813         }
18814     }
18815     pub fn SetContentTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
18816         let this = self;
18817         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
18818     }
18819     pub fn OpenedLength(&self) -> ::windows::runtime::Result<f64> {
18820         let this = self;
18821         unsafe {
18822             let mut result__: f64 = ::std::mem::zeroed();
18823             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
18824         }
18825     }
18826     pub fn SetOpenedLength(&self, value: f64) -> ::windows::runtime::Result<()> {
18827         let this = self;
18828         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
18829     }
18830     pub fn ClosedLength(&self) -> ::windows::runtime::Result<f64> {
18831         let this = self;
18832         unsafe {
18833             let mut result__: f64 = ::std::mem::zeroed();
18834             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
18835         }
18836     }
18837     pub fn SetClosedLength(&self, value: f64) -> ::windows::runtime::Result<()> {
18838         let this = self;
18839         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), value).ok() }
18840     }
18841     pub fn OffsetFromCenter(&self) -> ::windows::runtime::Result<f64> {
18842         let this = self;
18843         unsafe {
18844             let mut result__: f64 = ::std::mem::zeroed();
18845             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
18846         }
18847     }
18848     pub fn SetOffsetFromCenter(&self, value: f64) -> ::windows::runtime::Result<()> {
18849         let this = self;
18850         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), value).ok() }
18851     }
18852     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
18853     pub fn ContentTranslationDirection(&self) -> ::windows::runtime::Result<super::super::Controls::Primitives::AnimationDirection> {
18854         let this = self;
18855         unsafe {
18856             let mut result__: super::super::Controls::Primitives::AnimationDirection = ::std::mem::zeroed();
18857             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Controls::Primitives::AnimationDirection>(result__)
18858         }
18859     }
18860     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
18861     pub fn SetContentTranslationDirection(&self, value: super::super::Controls::Primitives::AnimationDirection) -> ::windows::runtime::Result<()> {
18862         let this = self;
18863         unsafe { (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), value).ok() }
18864     }
18865     pub fn ContentTranslationOffset(&self) -> ::windows::runtime::Result<f64> {
18866         let this = self;
18867         unsafe {
18868             let mut result__: f64 = ::std::mem::zeroed();
18869             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
18870         }
18871     }
18872     pub fn SetContentTranslationOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
18873         let this = self;
18874         unsafe { (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), value).ok() }
18875     }
18876     pub fn OpenedTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18877         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18878             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18879             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18880         })
18881     }
18882     pub fn OpenedTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18883         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18884             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18885             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18886         })
18887     }
18888     pub fn ClosedTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18889         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18890             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18891             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18892         })
18893     }
18894     pub fn ClosedTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18895         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18896             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18897             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18898         })
18899     }
18900     pub fn ContentTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18901         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18902             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18903             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18904         })
18905     }
18906     pub fn ContentTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18907         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18908             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18909             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18910         })
18911     }
18912     pub fn OpenedLengthProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18913         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18914             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18915             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18916         })
18917     }
18918     pub fn ClosedLengthProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18919         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18920             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18921             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18922         })
18923     }
18924     pub fn OffsetFromCenterProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18925         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18926             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18927             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18928         })
18929     }
18930     pub fn ContentTranslationDirectionProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18931         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18932             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18933             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18934         })
18935     }
18936     pub fn ContentTranslationOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
18937         Self::ISplitCloseThemeAnimationStatics(|this| unsafe {
18938             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18939             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
18940         })
18941     }
18942     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18943         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18944         unsafe {
18945             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18946             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18947         }
18948     }
18949     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
18950         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18951         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
18952     }
18953     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
18954         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18955         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
18956     }
18957     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18958         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18959         unsafe {
18960             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18961             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18962         }
18963     }
18964     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
18965         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18966         unsafe {
18967             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18968             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
18969         }
18970     }
18971     #[cfg(feature = "UI_Core")]
18972     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
18973         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
18974         unsafe {
18975             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
18976             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
18977         }
18978     }
18979     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
18980         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18981         unsafe {
18982             let mut result__: i64 = ::std::mem::zeroed();
18983             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
18984         }
18985     }
18986     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
18987         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
18988         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
18989     }
18990     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
18991         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
18992         unsafe {
18993             let mut result__: bool = ::std::mem::zeroed();
18994             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
18995         }
18996     }
18997     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
18998         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
18999         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
19000     }
19001     #[cfg(feature = "Foundation")]
19002     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
19003         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19004         unsafe {
19005             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19006             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
19007         }
19008     }
19009     #[cfg(feature = "Foundation")]
19010     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19011         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19012         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19013     }
19014     #[cfg(feature = "Foundation")]
19015     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
19016         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19017         unsafe {
19018             let mut result__: super::super::Duration = ::std::mem::zeroed();
19019             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
19020         }
19021     }
19022     #[cfg(feature = "Foundation")]
19023     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19024         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19025         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19026     }
19027     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
19028         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19029         unsafe {
19030             let mut result__: f64 = ::std::mem::zeroed();
19031             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
19032         }
19033     }
19034     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
19035         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19036         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
19037     }
19038     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
19039         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19040         unsafe {
19041             let mut result__: FillBehavior = ::std::mem::zeroed();
19042             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
19043         }
19044     }
19045     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
19046         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19047         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
19048     }
19049     #[cfg(feature = "Foundation")]
19050     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
19051         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19052         unsafe {
19053             let mut result__: RepeatBehavior = ::std::mem::zeroed();
19054             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
19055         }
19056     }
19057     #[cfg(feature = "Foundation")]
19058     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19059         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19060         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19061     }
19062     #[cfg(feature = "Foundation")]
19063     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
19064         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19065         unsafe {
19066             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
19067             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
19068         }
19069     }
19070     #[cfg(feature = "Foundation")]
19071     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
19072         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19073         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
19074     }
19075     pub fn ISplitCloseThemeAnimationStatics<R, F: FnOnce(&ISplitCloseThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
19076         static mut SHARED: ::windows::runtime::FactoryCache<SplitCloseThemeAnimation, ISplitCloseThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
19077         unsafe { SHARED.call(callback) }
19078     }
19079 }
19080 unsafe impl ::windows::runtime::RuntimeType for SplitCloseThemeAnimation {
19081     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SplitCloseThemeAnimation;{4f799518-ff39-4e90-bb74-2abd56027402})");
19082 }
19083 unsafe impl ::windows::runtime::Interface for SplitCloseThemeAnimation {
19084     type Vtable = ISplitCloseThemeAnimation_abi;
19085     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1333368088, 65337, 20112, [187, 116, 42, 189, 86, 2, 116, 2]);
19086 }
19087 impl ::windows::runtime::RuntimeName for SplitCloseThemeAnimation {
19088     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SplitCloseThemeAnimation";
19089 }
19090 impl ::std::convert::From<SplitCloseThemeAnimation> for ::windows::runtime::IUnknown {
19091     fn from(value: SplitCloseThemeAnimation) -> Self {
19092         unsafe { ::std::mem::transmute(value) }
19093     }
19094 }
19095 impl ::std::convert::From<&SplitCloseThemeAnimation> for ::windows::runtime::IUnknown {
19096     fn from(value: &SplitCloseThemeAnimation) -> Self {
19097         ::std::convert::From::from(::std::clone::Clone::clone(value))
19098     }
19099 }
19100 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SplitCloseThemeAnimation {
19101     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
19102         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
19103     }
19104 }
19105 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SplitCloseThemeAnimation {
19106     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
19107         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
19108     }
19109 }
19110 impl ::std::convert::From<SplitCloseThemeAnimation> for ::windows::runtime::IInspectable {
19111     fn from(value: SplitCloseThemeAnimation) -> Self {
19112         value.0
19113     }
19114 }
19115 impl ::std::convert::From<&SplitCloseThemeAnimation> for ::windows::runtime::IInspectable {
19116     fn from(value: &SplitCloseThemeAnimation) -> Self {
19117         value.0.clone()
19118     }
19119 }
19120 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SplitCloseThemeAnimation {
19121     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
19122         ::windows::runtime::Param::Owned(self.0)
19123     }
19124 }
19125 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SplitCloseThemeAnimation {
19126     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
19127         ::windows::runtime::Param::Borrowed(&self.0)
19128     }
19129 }
19130 impl ::std::convert::From<SplitCloseThemeAnimation> for Timeline {
19131     fn from(value: SplitCloseThemeAnimation) -> Self {
19132         ::std::convert::Into::<Timeline>::into(&value)
19133     }
19134 }
19135 impl ::std::convert::From<&SplitCloseThemeAnimation> for Timeline {
19136     fn from(value: &SplitCloseThemeAnimation) -> Self {
19137         ::windows::runtime::Interface::cast(value).unwrap()
19138     }
19139 }
19140 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for SplitCloseThemeAnimation {
19141     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
19142         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
19143     }
19144 }
19145 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &SplitCloseThemeAnimation {
19146     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
19147         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
19148     }
19149 }
19150 impl ::std::convert::From<SplitCloseThemeAnimation> for super::super::DependencyObject {
19151     fn from(value: SplitCloseThemeAnimation) -> Self {
19152         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
19153     }
19154 }
19155 impl ::std::convert::From<&SplitCloseThemeAnimation> for super::super::DependencyObject {
19156     fn from(value: &SplitCloseThemeAnimation) -> Self {
19157         ::windows::runtime::Interface::cast(value).unwrap()
19158     }
19159 }
19160 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SplitCloseThemeAnimation {
19161     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
19162         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
19163     }
19164 }
19165 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SplitCloseThemeAnimation {
19166     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
19167         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
19168     }
19169 }
19170 unsafe impl ::std::marker::Send for SplitCloseThemeAnimation {}
19171 unsafe impl ::std::marker::Sync for SplitCloseThemeAnimation {}
19172 #[repr(transparent)]
19173 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
19174 pub struct SplitOpenThemeAnimation(::windows::runtime::IInspectable);
19175 impl SplitOpenThemeAnimation {
19176     pub fn new() -> ::windows::runtime::Result<Self> {
19177         Self::IActivationFactory(|f| f.activate_instance::<Self>())
19178     }
19179     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
19180         static mut SHARED: ::windows::runtime::FactoryCache<SplitOpenThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
19181         unsafe { SHARED.call(callback) }
19182     }
19183     pub fn OpenedTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
19184         let this = self;
19185         unsafe {
19186             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
19187             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
19188         }
19189     }
19190     pub fn SetOpenedTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19191         let this = self;
19192         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19193     }
19194     pub fn OpenedTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
19195         let this = self;
19196         unsafe {
19197             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19198             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
19199         }
19200     }
19201     pub fn SetOpenedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19202         let this = self;
19203         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19204     }
19205     pub fn ClosedTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
19206         let this = self;
19207         unsafe {
19208             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
19209             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
19210         }
19211     }
19212     pub fn SetClosedTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19213         let this = self;
19214         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19215     }
19216     pub fn ClosedTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
19217         let this = self;
19218         unsafe {
19219             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19220             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
19221         }
19222     }
19223     pub fn SetClosedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19224         let this = self;
19225         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19226     }
19227     pub fn ContentTargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
19228         let this = self;
19229         unsafe {
19230             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
19231             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
19232         }
19233     }
19234     pub fn SetContentTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19235         let this = self;
19236         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19237     }
19238     pub fn ContentTarget(&self) -> ::windows::runtime::Result<super::super::DependencyObject> {
19239         let this = self;
19240         unsafe {
19241             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19242             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyObject>(result__)
19243         }
19244     }
19245     pub fn SetContentTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19246         let this = self;
19247         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19248     }
19249     pub fn OpenedLength(&self) -> ::windows::runtime::Result<f64> {
19250         let this = self;
19251         unsafe {
19252             let mut result__: f64 = ::std::mem::zeroed();
19253             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
19254         }
19255     }
19256     pub fn SetOpenedLength(&self, value: f64) -> ::windows::runtime::Result<()> {
19257         let this = self;
19258         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
19259     }
19260     pub fn ClosedLength(&self) -> ::windows::runtime::Result<f64> {
19261         let this = self;
19262         unsafe {
19263             let mut result__: f64 = ::std::mem::zeroed();
19264             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
19265         }
19266     }
19267     pub fn SetClosedLength(&self, value: f64) -> ::windows::runtime::Result<()> {
19268         let this = self;
19269         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), value).ok() }
19270     }
19271     pub fn OffsetFromCenter(&self) -> ::windows::runtime::Result<f64> {
19272         let this = self;
19273         unsafe {
19274             let mut result__: f64 = ::std::mem::zeroed();
19275             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
19276         }
19277     }
19278     pub fn SetOffsetFromCenter(&self, value: f64) -> ::windows::runtime::Result<()> {
19279         let this = self;
19280         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), value).ok() }
19281     }
19282     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
19283     pub fn ContentTranslationDirection(&self) -> ::windows::runtime::Result<super::super::Controls::Primitives::AnimationDirection> {
19284         let this = self;
19285         unsafe {
19286             let mut result__: super::super::Controls::Primitives::AnimationDirection = ::std::mem::zeroed();
19287             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Controls::Primitives::AnimationDirection>(result__)
19288         }
19289     }
19290     #[cfg(feature = "UI_Xaml_Controls_Primitives")]
19291     pub fn SetContentTranslationDirection(&self, value: super::super::Controls::Primitives::AnimationDirection) -> ::windows::runtime::Result<()> {
19292         let this = self;
19293         unsafe { (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), value).ok() }
19294     }
19295     pub fn ContentTranslationOffset(&self) -> ::windows::runtime::Result<f64> {
19296         let this = self;
19297         unsafe {
19298             let mut result__: f64 = ::std::mem::zeroed();
19299             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
19300         }
19301     }
19302     pub fn SetContentTranslationOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
19303         let this = self;
19304         unsafe { (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), value).ok() }
19305     }
19306     pub fn OpenedTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19307         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19308             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19309             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19310         })
19311     }
19312     pub fn OpenedTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19313         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19314             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19315             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19316         })
19317     }
19318     pub fn ClosedTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19319         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19320             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19321             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19322         })
19323     }
19324     pub fn ClosedTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19325         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19326             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19327             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19328         })
19329     }
19330     pub fn ContentTargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19331         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19332             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19333             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19334         })
19335     }
19336     pub fn ContentTargetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19337         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19338             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19339             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19340         })
19341     }
19342     pub fn OpenedLengthProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19343         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19344             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19345             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19346         })
19347     }
19348     pub fn ClosedLengthProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19349         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19350             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19351             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19352         })
19353     }
19354     pub fn OffsetFromCenterProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19355         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19356             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19357             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19358         })
19359     }
19360     pub fn ContentTranslationDirectionProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19361         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19362             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19363             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19364         })
19365     }
19366     pub fn ContentTranslationOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19367         Self::ISplitOpenThemeAnimationStatics(|this| unsafe {
19368             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19369             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19370         })
19371     }
19372     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
19373         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19374         unsafe {
19375             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19376             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
19377         }
19378     }
19379     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
19380         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19381         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
19382     }
19383     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
19384         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19385         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
19386     }
19387     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
19388         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19389         unsafe {
19390             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19391             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
19392         }
19393     }
19394     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
19395         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19396         unsafe {
19397             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19398             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
19399         }
19400     }
19401     #[cfg(feature = "UI_Core")]
19402     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
19403         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19404         unsafe {
19405             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19406             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
19407         }
19408     }
19409     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
19410         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
19411         unsafe {
19412             let mut result__: i64 = ::std::mem::zeroed();
19413             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
19414         }
19415     }
19416     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
19417         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
19418         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
19419     }
19420     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
19421         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19422         unsafe {
19423             let mut result__: bool = ::std::mem::zeroed();
19424             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
19425         }
19426     }
19427     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
19428         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19429         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
19430     }
19431     #[cfg(feature = "Foundation")]
19432     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
19433         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19434         unsafe {
19435             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19436             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
19437         }
19438     }
19439     #[cfg(feature = "Foundation")]
19440     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19441         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19442         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19443     }
19444     #[cfg(feature = "Foundation")]
19445     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
19446         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19447         unsafe {
19448             let mut result__: super::super::Duration = ::std::mem::zeroed();
19449             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
19450         }
19451     }
19452     #[cfg(feature = "Foundation")]
19453     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19454         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19455         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19456     }
19457     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
19458         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19459         unsafe {
19460             let mut result__: f64 = ::std::mem::zeroed();
19461             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
19462         }
19463     }
19464     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
19465         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19466         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
19467     }
19468     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
19469         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19470         unsafe {
19471             let mut result__: FillBehavior = ::std::mem::zeroed();
19472             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
19473         }
19474     }
19475     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
19476         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19477         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
19478     }
19479     #[cfg(feature = "Foundation")]
19480     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
19481         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19482         unsafe {
19483             let mut result__: RepeatBehavior = ::std::mem::zeroed();
19484             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
19485         }
19486     }
19487     #[cfg(feature = "Foundation")]
19488     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19489         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19490         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19491     }
19492     #[cfg(feature = "Foundation")]
19493     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
19494         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19495         unsafe {
19496             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
19497             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
19498         }
19499     }
19500     #[cfg(feature = "Foundation")]
19501     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
19502         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19503         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
19504     }
19505     pub fn ISplitOpenThemeAnimationStatics<R, F: FnOnce(&ISplitOpenThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
19506         static mut SHARED: ::windows::runtime::FactoryCache<SplitOpenThemeAnimation, ISplitOpenThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
19507         unsafe { SHARED.call(callback) }
19508     }
19509 }
19510 unsafe impl ::windows::runtime::RuntimeType for SplitOpenThemeAnimation {
19511     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SplitOpenThemeAnimation;{785fd7aa-5456-4639-8fd2-26bae6a5ffe4})");
19512 }
19513 unsafe impl ::windows::runtime::Interface for SplitOpenThemeAnimation {
19514     type Vtable = ISplitOpenThemeAnimation_abi;
19515     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2019547050, 21590, 17977, [143, 210, 38, 186, 230, 165, 255, 228]);
19516 }
19517 impl ::windows::runtime::RuntimeName for SplitOpenThemeAnimation {
19518     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SplitOpenThemeAnimation";
19519 }
19520 impl ::std::convert::From<SplitOpenThemeAnimation> for ::windows::runtime::IUnknown {
19521     fn from(value: SplitOpenThemeAnimation) -> Self {
19522         unsafe { ::std::mem::transmute(value) }
19523     }
19524 }
19525 impl ::std::convert::From<&SplitOpenThemeAnimation> for ::windows::runtime::IUnknown {
19526     fn from(value: &SplitOpenThemeAnimation) -> Self {
19527         ::std::convert::From::from(::std::clone::Clone::clone(value))
19528     }
19529 }
19530 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SplitOpenThemeAnimation {
19531     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
19532         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
19533     }
19534 }
19535 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SplitOpenThemeAnimation {
19536     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
19537         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
19538     }
19539 }
19540 impl ::std::convert::From<SplitOpenThemeAnimation> for ::windows::runtime::IInspectable {
19541     fn from(value: SplitOpenThemeAnimation) -> Self {
19542         value.0
19543     }
19544 }
19545 impl ::std::convert::From<&SplitOpenThemeAnimation> for ::windows::runtime::IInspectable {
19546     fn from(value: &SplitOpenThemeAnimation) -> Self {
19547         value.0.clone()
19548     }
19549 }
19550 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SplitOpenThemeAnimation {
19551     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
19552         ::windows::runtime::Param::Owned(self.0)
19553     }
19554 }
19555 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SplitOpenThemeAnimation {
19556     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
19557         ::windows::runtime::Param::Borrowed(&self.0)
19558     }
19559 }
19560 impl ::std::convert::From<SplitOpenThemeAnimation> for Timeline {
19561     fn from(value: SplitOpenThemeAnimation) -> Self {
19562         ::std::convert::Into::<Timeline>::into(&value)
19563     }
19564 }
19565 impl ::std::convert::From<&SplitOpenThemeAnimation> for Timeline {
19566     fn from(value: &SplitOpenThemeAnimation) -> Self {
19567         ::windows::runtime::Interface::cast(value).unwrap()
19568     }
19569 }
19570 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for SplitOpenThemeAnimation {
19571     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
19572         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
19573     }
19574 }
19575 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &SplitOpenThemeAnimation {
19576     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
19577         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
19578     }
19579 }
19580 impl ::std::convert::From<SplitOpenThemeAnimation> for super::super::DependencyObject {
19581     fn from(value: SplitOpenThemeAnimation) -> Self {
19582         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
19583     }
19584 }
19585 impl ::std::convert::From<&SplitOpenThemeAnimation> for super::super::DependencyObject {
19586     fn from(value: &SplitOpenThemeAnimation) -> Self {
19587         ::windows::runtime::Interface::cast(value).unwrap()
19588     }
19589 }
19590 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SplitOpenThemeAnimation {
19591     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
19592         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
19593     }
19594 }
19595 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SplitOpenThemeAnimation {
19596     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
19597         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
19598     }
19599 }
19600 unsafe impl ::std::marker::Send for SplitOpenThemeAnimation {}
19601 unsafe impl ::std::marker::Sync for SplitOpenThemeAnimation {}
19602 #[repr(transparent)]
19603 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
19604 pub struct Storyboard(::windows::runtime::IInspectable);
19605 impl Storyboard {
19606     pub fn new() -> ::windows::runtime::Result<Self> {
19607         Self::IActivationFactory(|f| f.activate_instance::<Self>())
19608     }
19609     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
19610         static mut SHARED: ::windows::runtime::FactoryCache<Storyboard, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
19611         unsafe { SHARED.call(callback) }
19612     }
19613     #[cfg(feature = "Foundation_Collections")]
19614     pub fn Children(&self) -> ::windows::runtime::Result<TimelineCollection> {
19615         let this = self;
19616         unsafe {
19617             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19618             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<TimelineCollection>(result__)
19619         }
19620     }
19621     #[cfg(feature = "Foundation")]
19622     pub fn Seek<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::TimeSpan>>(&self, offset: Param0) -> ::windows::runtime::Result<()> {
19623         let this = self;
19624         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), offset.into_param().abi()).ok() }
19625     }
19626     pub fn Stop(&self) -> ::windows::runtime::Result<()> {
19627         let this = self;
19628         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this)).ok() }
19629     }
19630     pub fn Begin(&self) -> ::windows::runtime::Result<()> {
19631         let this = self;
19632         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this)).ok() }
19633     }
19634     pub fn Pause(&self) -> ::windows::runtime::Result<()> {
19635         let this = self;
19636         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this)).ok() }
19637     }
19638     pub fn Resume(&self) -> ::windows::runtime::Result<()> {
19639         let this = self;
19640         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this)).ok() }
19641     }
19642     pub fn GetCurrentState(&self) -> ::windows::runtime::Result<ClockState> {
19643         let this = self;
19644         unsafe {
19645             let mut result__: ClockState = ::std::mem::zeroed();
19646             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<ClockState>(result__)
19647         }
19648     }
19649     #[cfg(feature = "Foundation")]
19650     pub fn GetCurrentTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::TimeSpan> {
19651         let this = self;
19652         unsafe {
19653             let mut result__: super::super::super::super::Foundation::TimeSpan = ::std::mem::zeroed();
19654             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::TimeSpan>(result__)
19655         }
19656     }
19657     #[cfg(feature = "Foundation")]
19658     pub fn SeekAlignedToLastTick<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::TimeSpan>>(&self, offset: Param0) -> ::windows::runtime::Result<()> {
19659         let this = self;
19660         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), offset.into_param().abi()).ok() }
19661     }
19662     pub fn SkipToFill(&self) -> ::windows::runtime::Result<()> {
19663         let this = self;
19664         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this)).ok() }
19665     }
19666     pub fn TargetPropertyProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19667         Self::IStoryboardStatics(|this| unsafe {
19668             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19669             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19670         })
19671     }
19672     pub fn GetTargetProperty<'a, Param0: ::windows::runtime::IntoParam<'a, Timeline>>(element: Param0) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
19673         Self::IStoryboardStatics(|this| unsafe {
19674             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
19675             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), element.into_param().abi(), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
19676         })
19677     }
19678     pub fn SetTargetProperty<'a, Param0: ::windows::runtime::IntoParam<'a, Timeline>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(element: Param0, path: Param1) -> ::windows::runtime::Result<()> {
19679         Self::IStoryboardStatics(|this| unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), element.into_param().abi(), path.into_param().abi()).ok() })
19680     }
19681     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
19682         Self::IStoryboardStatics(|this| unsafe {
19683             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19684             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
19685         })
19686     }
19687     pub fn GetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, Timeline>>(element: Param0) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
19688         Self::IStoryboardStatics(|this| unsafe {
19689             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
19690             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), element.into_param().abi(), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
19691         })
19692     }
19693     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, Timeline>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(element: Param0, name: Param1) -> ::windows::runtime::Result<()> {
19694         Self::IStoryboardStatics(|this| unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), element.into_param().abi(), name.into_param().abi()).ok() })
19695     }
19696     pub fn SetTarget<'a, Param0: ::windows::runtime::IntoParam<'a, Timeline>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyObject>>(timeline: Param0, target: Param1) -> ::windows::runtime::Result<()> {
19697         Self::IStoryboardStatics(|this| unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), timeline.into_param().abi(), target.into_param().abi()).ok() })
19698     }
19699     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
19700         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19701         unsafe {
19702             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19703             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
19704         }
19705     }
19706     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
19707         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19708         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
19709     }
19710     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
19711         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19712         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
19713     }
19714     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
19715         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19716         unsafe {
19717             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19718             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
19719         }
19720     }
19721     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
19722         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19723         unsafe {
19724             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19725             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
19726         }
19727     }
19728     #[cfg(feature = "UI_Core")]
19729     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
19730         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19731         unsafe {
19732             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19733             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
19734         }
19735     }
19736     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
19737         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
19738         unsafe {
19739             let mut result__: i64 = ::std::mem::zeroed();
19740             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
19741         }
19742     }
19743     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
19744         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
19745         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
19746     }
19747     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
19748         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19749         unsafe {
19750             let mut result__: bool = ::std::mem::zeroed();
19751             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
19752         }
19753     }
19754     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
19755         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19756         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
19757     }
19758     #[cfg(feature = "Foundation")]
19759     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
19760         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19761         unsafe {
19762             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19763             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
19764         }
19765     }
19766     #[cfg(feature = "Foundation")]
19767     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19768         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19769         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19770     }
19771     #[cfg(feature = "Foundation")]
19772     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
19773         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19774         unsafe {
19775             let mut result__: super::super::Duration = ::std::mem::zeroed();
19776             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
19777         }
19778     }
19779     #[cfg(feature = "Foundation")]
19780     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19781         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19782         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19783     }
19784     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
19785         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19786         unsafe {
19787             let mut result__: f64 = ::std::mem::zeroed();
19788             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
19789         }
19790     }
19791     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
19792         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19793         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
19794     }
19795     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
19796         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19797         unsafe {
19798             let mut result__: FillBehavior = ::std::mem::zeroed();
19799             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
19800         }
19801     }
19802     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
19803         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19804         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
19805     }
19806     #[cfg(feature = "Foundation")]
19807     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
19808         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19809         unsafe {
19810             let mut result__: RepeatBehavior = ::std::mem::zeroed();
19811             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
19812         }
19813     }
19814     #[cfg(feature = "Foundation")]
19815     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
19816         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19817         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
19818     }
19819     #[cfg(feature = "Foundation")]
19820     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
19821         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19822         unsafe {
19823             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
19824             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
19825         }
19826     }
19827     #[cfg(feature = "Foundation")]
19828     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
19829         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
19830         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
19831     }
19832     pub fn IStoryboardStatics<R, F: FnOnce(&IStoryboardStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
19833         static mut SHARED: ::windows::runtime::FactoryCache<Storyboard, IStoryboardStatics> = ::windows::runtime::FactoryCache::new();
19834         unsafe { SHARED.call(callback) }
19835     }
19836 }
19837 unsafe impl ::windows::runtime::RuntimeType for Storyboard {
19838     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.Storyboard;{d45c1e6e-3594-460e-981a-32271bd3aa06})");
19839 }
19840 unsafe impl ::windows::runtime::Interface for Storyboard {
19841     type Vtable = IStoryboard_abi;
19842     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3562806894, 13716, 17934, [152, 26, 50, 39, 27, 211, 170, 6]);
19843 }
19844 impl ::windows::runtime::RuntimeName for Storyboard {
19845     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.Storyboard";
19846 }
19847 impl ::std::convert::From<Storyboard> for ::windows::runtime::IUnknown {
19848     fn from(value: Storyboard) -> Self {
19849         unsafe { ::std::mem::transmute(value) }
19850     }
19851 }
19852 impl ::std::convert::From<&Storyboard> for ::windows::runtime::IUnknown {
19853     fn from(value: &Storyboard) -> Self {
19854         ::std::convert::From::from(::std::clone::Clone::clone(value))
19855     }
19856 }
19857 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for Storyboard {
19858     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
19859         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
19860     }
19861 }
19862 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &Storyboard {
19863     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
19864         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
19865     }
19866 }
19867 impl ::std::convert::From<Storyboard> for ::windows::runtime::IInspectable {
19868     fn from(value: Storyboard) -> Self {
19869         value.0
19870     }
19871 }
19872 impl ::std::convert::From<&Storyboard> for ::windows::runtime::IInspectable {
19873     fn from(value: &Storyboard) -> Self {
19874         value.0.clone()
19875     }
19876 }
19877 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for Storyboard {
19878     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
19879         ::windows::runtime::Param::Owned(self.0)
19880     }
19881 }
19882 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a Storyboard {
19883     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
19884         ::windows::runtime::Param::Borrowed(&self.0)
19885     }
19886 }
19887 impl ::std::convert::From<Storyboard> for Timeline {
19888     fn from(value: Storyboard) -> Self {
19889         ::std::convert::Into::<Timeline>::into(&value)
19890     }
19891 }
19892 impl ::std::convert::From<&Storyboard> for Timeline {
19893     fn from(value: &Storyboard) -> Self {
19894         ::windows::runtime::Interface::cast(value).unwrap()
19895     }
19896 }
19897 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for Storyboard {
19898     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
19899         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
19900     }
19901 }
19902 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &Storyboard {
19903     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
19904         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
19905     }
19906 }
19907 impl ::std::convert::From<Storyboard> for super::super::DependencyObject {
19908     fn from(value: Storyboard) -> Self {
19909         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
19910     }
19911 }
19912 impl ::std::convert::From<&Storyboard> for super::super::DependencyObject {
19913     fn from(value: &Storyboard) -> Self {
19914         ::windows::runtime::Interface::cast(value).unwrap()
19915     }
19916 }
19917 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for Storyboard {
19918     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
19919         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
19920     }
19921 }
19922 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &Storyboard {
19923     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
19924         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
19925     }
19926 }
19927 unsafe impl ::std::marker::Send for Storyboard {}
19928 unsafe impl ::std::marker::Sync for Storyboard {}
19929 #[repr(transparent)]
19930 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
19931 pub struct SuppressNavigationTransitionInfo(::windows::runtime::IInspectable);
19932 impl SuppressNavigationTransitionInfo {
19933     pub fn new() -> ::windows::runtime::Result<Self> {
19934         Self::IActivationFactory(|f| f.activate_instance::<Self>())
19935     }
19936     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
19937         static mut SHARED: ::windows::runtime::FactoryCache<SuppressNavigationTransitionInfo, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
19938         unsafe { SHARED.call(callback) }
19939     }
19940     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
19941         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19942         unsafe {
19943             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19944             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
19945         }
19946     }
19947     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
19948         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19949         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
19950     }
19951     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
19952         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19953         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
19954     }
19955     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
19956         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19957         unsafe {
19958             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19959             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
19960         }
19961     }
19962     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
19963         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19964         unsafe {
19965             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19966             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
19967         }
19968     }
19969     #[cfg(feature = "UI_Core")]
19970     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
19971         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
19972         unsafe {
19973             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
19974             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
19975         }
19976     }
19977     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
19978         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
19979         unsafe {
19980             let mut result__: i64 = ::std::mem::zeroed();
19981             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
19982         }
19983     }
19984     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
19985         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
19986         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
19987     }
19988     pub fn GetNavigationStateCore(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
19989         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
19990         unsafe {
19991             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
19992             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
19993         }
19994     }
19995     pub fn SetNavigationStateCore<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, navigationstate: Param0) -> ::windows::runtime::Result<()> {
19996         let this = &::windows::runtime::Interface::cast::<INavigationTransitionInfoOverrides>(self)?;
19997         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), navigationstate.into_param().abi()).ok() }
19998     }
19999 }
20000 unsafe impl ::windows::runtime::RuntimeType for SuppressNavigationTransitionInfo {
20001     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SuppressNavigationTransitionInfo;{244d7b0c-b1b7-4871-9d3e-d56203a3a5b4})");
20002 }
20003 unsafe impl ::windows::runtime::Interface for SuppressNavigationTransitionInfo {
20004     type Vtable = ISuppressNavigationTransitionInfo_abi;
20005     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(609057548, 45495, 18545, [157, 62, 213, 98, 3, 163, 165, 180]);
20006 }
20007 impl ::windows::runtime::RuntimeName for SuppressNavigationTransitionInfo {
20008     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SuppressNavigationTransitionInfo";
20009 }
20010 impl ::std::convert::From<SuppressNavigationTransitionInfo> for ::windows::runtime::IUnknown {
20011     fn from(value: SuppressNavigationTransitionInfo) -> Self {
20012         unsafe { ::std::mem::transmute(value) }
20013     }
20014 }
20015 impl ::std::convert::From<&SuppressNavigationTransitionInfo> for ::windows::runtime::IUnknown {
20016     fn from(value: &SuppressNavigationTransitionInfo) -> Self {
20017         ::std::convert::From::from(::std::clone::Clone::clone(value))
20018     }
20019 }
20020 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SuppressNavigationTransitionInfo {
20021     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
20022         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
20023     }
20024 }
20025 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SuppressNavigationTransitionInfo {
20026     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
20027         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
20028     }
20029 }
20030 impl ::std::convert::From<SuppressNavigationTransitionInfo> for ::windows::runtime::IInspectable {
20031     fn from(value: SuppressNavigationTransitionInfo) -> Self {
20032         value.0
20033     }
20034 }
20035 impl ::std::convert::From<&SuppressNavigationTransitionInfo> for ::windows::runtime::IInspectable {
20036     fn from(value: &SuppressNavigationTransitionInfo) -> Self {
20037         value.0.clone()
20038     }
20039 }
20040 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SuppressNavigationTransitionInfo {
20041     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
20042         ::windows::runtime::Param::Owned(self.0)
20043     }
20044 }
20045 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SuppressNavigationTransitionInfo {
20046     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
20047         ::windows::runtime::Param::Borrowed(&self.0)
20048     }
20049 }
20050 impl ::std::convert::From<SuppressNavigationTransitionInfo> for NavigationTransitionInfo {
20051     fn from(value: SuppressNavigationTransitionInfo) -> Self {
20052         ::std::convert::Into::<NavigationTransitionInfo>::into(&value)
20053     }
20054 }
20055 impl ::std::convert::From<&SuppressNavigationTransitionInfo> for NavigationTransitionInfo {
20056     fn from(value: &SuppressNavigationTransitionInfo) -> Self {
20057         ::windows::runtime::Interface::cast(value).unwrap()
20058     }
20059 }
20060 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for SuppressNavigationTransitionInfo {
20061     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
20062         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(self))
20063     }
20064 }
20065 impl<'a> ::windows::runtime::IntoParam<'a, NavigationTransitionInfo> for &SuppressNavigationTransitionInfo {
20066     fn into_param(self) -> ::windows::runtime::Param<'a, NavigationTransitionInfo> {
20067         ::windows::runtime::Param::Owned(::std::convert::Into::<NavigationTransitionInfo>::into(::std::clone::Clone::clone(self)))
20068     }
20069 }
20070 impl ::std::convert::From<SuppressNavigationTransitionInfo> for super::super::DependencyObject {
20071     fn from(value: SuppressNavigationTransitionInfo) -> Self {
20072         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
20073     }
20074 }
20075 impl ::std::convert::From<&SuppressNavigationTransitionInfo> for super::super::DependencyObject {
20076     fn from(value: &SuppressNavigationTransitionInfo) -> Self {
20077         ::windows::runtime::Interface::cast(value).unwrap()
20078     }
20079 }
20080 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SuppressNavigationTransitionInfo {
20081     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
20082         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
20083     }
20084 }
20085 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SuppressNavigationTransitionInfo {
20086     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
20087         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
20088     }
20089 }
20090 unsafe impl ::std::marker::Send for SuppressNavigationTransitionInfo {}
20091 unsafe impl ::std::marker::Sync for SuppressNavigationTransitionInfo {}
20092 #[repr(transparent)]
20093 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
20094 pub struct SwipeBackThemeAnimation(::windows::runtime::IInspectable);
20095 impl SwipeBackThemeAnimation {
20096     pub fn new() -> ::windows::runtime::Result<Self> {
20097         Self::IActivationFactory(|f| f.activate_instance::<Self>())
20098     }
20099     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
20100         static mut SHARED: ::windows::runtime::FactoryCache<SwipeBackThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
20101         unsafe { SHARED.call(callback) }
20102     }
20103     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
20104         let this = self;
20105         unsafe {
20106             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
20107             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
20108         }
20109     }
20110     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20111         let this = self;
20112         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20113     }
20114     pub fn FromHorizontalOffset(&self) -> ::windows::runtime::Result<f64> {
20115         let this = self;
20116         unsafe {
20117             let mut result__: f64 = ::std::mem::zeroed();
20118             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
20119         }
20120     }
20121     pub fn SetFromHorizontalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
20122         let this = self;
20123         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
20124     }
20125     pub fn FromVerticalOffset(&self) -> ::windows::runtime::Result<f64> {
20126         let this = self;
20127         unsafe {
20128             let mut result__: f64 = ::std::mem::zeroed();
20129             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
20130         }
20131     }
20132     pub fn SetFromVerticalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
20133         let this = self;
20134         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
20135     }
20136     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20137         Self::ISwipeBackThemeAnimationStatics(|this| unsafe {
20138             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20139             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20140         })
20141     }
20142     pub fn FromHorizontalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20143         Self::ISwipeBackThemeAnimationStatics(|this| unsafe {
20144             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20145             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20146         })
20147     }
20148     pub fn FromVerticalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20149         Self::ISwipeBackThemeAnimationStatics(|this| unsafe {
20150             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20151             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20152         })
20153     }
20154     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
20155         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20156         unsafe {
20157             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20158             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
20159         }
20160     }
20161     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
20162         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20163         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
20164     }
20165     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
20166         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20167         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
20168     }
20169     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
20170         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20171         unsafe {
20172             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20173             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
20174         }
20175     }
20176     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
20177         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20178         unsafe {
20179             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20180             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
20181         }
20182     }
20183     #[cfg(feature = "UI_Core")]
20184     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
20185         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20186         unsafe {
20187             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20188             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
20189         }
20190     }
20191     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
20192         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
20193         unsafe {
20194             let mut result__: i64 = ::std::mem::zeroed();
20195             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
20196         }
20197     }
20198     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
20199         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
20200         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
20201     }
20202     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
20203         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20204         unsafe {
20205             let mut result__: bool = ::std::mem::zeroed();
20206             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
20207         }
20208     }
20209     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
20210         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20211         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
20212     }
20213     #[cfg(feature = "Foundation")]
20214     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
20215         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20216         unsafe {
20217             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20218             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
20219         }
20220     }
20221     #[cfg(feature = "Foundation")]
20222     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20223         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20224         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20225     }
20226     #[cfg(feature = "Foundation")]
20227     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
20228         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20229         unsafe {
20230             let mut result__: super::super::Duration = ::std::mem::zeroed();
20231             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
20232         }
20233     }
20234     #[cfg(feature = "Foundation")]
20235     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20236         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20237         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20238     }
20239     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
20240         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20241         unsafe {
20242             let mut result__: f64 = ::std::mem::zeroed();
20243             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
20244         }
20245     }
20246     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
20247         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20248         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
20249     }
20250     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
20251         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20252         unsafe {
20253             let mut result__: FillBehavior = ::std::mem::zeroed();
20254             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
20255         }
20256     }
20257     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
20258         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20259         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
20260     }
20261     #[cfg(feature = "Foundation")]
20262     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
20263         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20264         unsafe {
20265             let mut result__: RepeatBehavior = ::std::mem::zeroed();
20266             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
20267         }
20268     }
20269     #[cfg(feature = "Foundation")]
20270     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20271         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20272         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20273     }
20274     #[cfg(feature = "Foundation")]
20275     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
20276         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20277         unsafe {
20278             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
20279             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
20280         }
20281     }
20282     #[cfg(feature = "Foundation")]
20283     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
20284         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20285         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
20286     }
20287     pub fn ISwipeBackThemeAnimationStatics<R, F: FnOnce(&ISwipeBackThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
20288         static mut SHARED: ::windows::runtime::FactoryCache<SwipeBackThemeAnimation, ISwipeBackThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
20289         unsafe { SHARED.call(callback) }
20290     }
20291 }
20292 unsafe impl ::windows::runtime::RuntimeType for SwipeBackThemeAnimation {
20293     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SwipeBackThemeAnimation;{a38a4214-0bca-4d2d-95f7-ceba57fbaf60})");
20294 }
20295 unsafe impl ::windows::runtime::Interface for SwipeBackThemeAnimation {
20296     type Vtable = ISwipeBackThemeAnimation_abi;
20297     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2743747092, 3018, 19757, [149, 247, 206, 186, 87, 251, 175, 96]);
20298 }
20299 impl ::windows::runtime::RuntimeName for SwipeBackThemeAnimation {
20300     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SwipeBackThemeAnimation";
20301 }
20302 impl ::std::convert::From<SwipeBackThemeAnimation> for ::windows::runtime::IUnknown {
20303     fn from(value: SwipeBackThemeAnimation) -> Self {
20304         unsafe { ::std::mem::transmute(value) }
20305     }
20306 }
20307 impl ::std::convert::From<&SwipeBackThemeAnimation> for ::windows::runtime::IUnknown {
20308     fn from(value: &SwipeBackThemeAnimation) -> Self {
20309         ::std::convert::From::from(::std::clone::Clone::clone(value))
20310     }
20311 }
20312 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SwipeBackThemeAnimation {
20313     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
20314         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
20315     }
20316 }
20317 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SwipeBackThemeAnimation {
20318     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
20319         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
20320     }
20321 }
20322 impl ::std::convert::From<SwipeBackThemeAnimation> for ::windows::runtime::IInspectable {
20323     fn from(value: SwipeBackThemeAnimation) -> Self {
20324         value.0
20325     }
20326 }
20327 impl ::std::convert::From<&SwipeBackThemeAnimation> for ::windows::runtime::IInspectable {
20328     fn from(value: &SwipeBackThemeAnimation) -> Self {
20329         value.0.clone()
20330     }
20331 }
20332 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SwipeBackThemeAnimation {
20333     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
20334         ::windows::runtime::Param::Owned(self.0)
20335     }
20336 }
20337 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SwipeBackThemeAnimation {
20338     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
20339         ::windows::runtime::Param::Borrowed(&self.0)
20340     }
20341 }
20342 impl ::std::convert::From<SwipeBackThemeAnimation> for Timeline {
20343     fn from(value: SwipeBackThemeAnimation) -> Self {
20344         ::std::convert::Into::<Timeline>::into(&value)
20345     }
20346 }
20347 impl ::std::convert::From<&SwipeBackThemeAnimation> for Timeline {
20348     fn from(value: &SwipeBackThemeAnimation) -> Self {
20349         ::windows::runtime::Interface::cast(value).unwrap()
20350     }
20351 }
20352 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for SwipeBackThemeAnimation {
20353     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
20354         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
20355     }
20356 }
20357 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &SwipeBackThemeAnimation {
20358     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
20359         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
20360     }
20361 }
20362 impl ::std::convert::From<SwipeBackThemeAnimation> for super::super::DependencyObject {
20363     fn from(value: SwipeBackThemeAnimation) -> Self {
20364         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
20365     }
20366 }
20367 impl ::std::convert::From<&SwipeBackThemeAnimation> for super::super::DependencyObject {
20368     fn from(value: &SwipeBackThemeAnimation) -> Self {
20369         ::windows::runtime::Interface::cast(value).unwrap()
20370     }
20371 }
20372 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SwipeBackThemeAnimation {
20373     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
20374         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
20375     }
20376 }
20377 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SwipeBackThemeAnimation {
20378     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
20379         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
20380     }
20381 }
20382 unsafe impl ::std::marker::Send for SwipeBackThemeAnimation {}
20383 unsafe impl ::std::marker::Sync for SwipeBackThemeAnimation {}
20384 #[repr(transparent)]
20385 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
20386 pub struct SwipeHintThemeAnimation(::windows::runtime::IInspectable);
20387 impl SwipeHintThemeAnimation {
20388     pub fn new() -> ::windows::runtime::Result<Self> {
20389         Self::IActivationFactory(|f| f.activate_instance::<Self>())
20390     }
20391     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
20392         static mut SHARED: ::windows::runtime::FactoryCache<SwipeHintThemeAnimation, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
20393         unsafe { SHARED.call(callback) }
20394     }
20395     pub fn TargetName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
20396         let this = self;
20397         unsafe {
20398             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
20399             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
20400         }
20401     }
20402     pub fn SetTargetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20403         let this = self;
20404         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20405     }
20406     pub fn ToHorizontalOffset(&self) -> ::windows::runtime::Result<f64> {
20407         let this = self;
20408         unsafe {
20409             let mut result__: f64 = ::std::mem::zeroed();
20410             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
20411         }
20412     }
20413     pub fn SetToHorizontalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
20414         let this = self;
20415         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
20416     }
20417     pub fn ToVerticalOffset(&self) -> ::windows::runtime::Result<f64> {
20418         let this = self;
20419         unsafe {
20420             let mut result__: f64 = ::std::mem::zeroed();
20421             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
20422         }
20423     }
20424     pub fn SetToVerticalOffset(&self, value: f64) -> ::windows::runtime::Result<()> {
20425         let this = self;
20426         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
20427     }
20428     pub fn TargetNameProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20429         Self::ISwipeHintThemeAnimationStatics(|this| unsafe {
20430             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20431             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20432         })
20433     }
20434     pub fn ToHorizontalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20435         Self::ISwipeHintThemeAnimationStatics(|this| unsafe {
20436             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20437             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20438         })
20439     }
20440     pub fn ToVerticalOffsetProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20441         Self::ISwipeHintThemeAnimationStatics(|this| unsafe {
20442             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20443             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20444         })
20445     }
20446     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
20447         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20448         unsafe {
20449             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20450             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
20451         }
20452     }
20453     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
20454         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20455         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
20456     }
20457     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
20458         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20459         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
20460     }
20461     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
20462         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20463         unsafe {
20464             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20465             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
20466         }
20467     }
20468     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
20469         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20470         unsafe {
20471             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20472             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
20473         }
20474     }
20475     #[cfg(feature = "UI_Core")]
20476     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
20477         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20478         unsafe {
20479             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20480             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
20481         }
20482     }
20483     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
20484         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
20485         unsafe {
20486             let mut result__: i64 = ::std::mem::zeroed();
20487             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
20488         }
20489     }
20490     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
20491         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
20492         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
20493     }
20494     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
20495         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20496         unsafe {
20497             let mut result__: bool = ::std::mem::zeroed();
20498             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
20499         }
20500     }
20501     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
20502         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20503         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
20504     }
20505     #[cfg(feature = "Foundation")]
20506     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
20507         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20508         unsafe {
20509             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20510             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
20511         }
20512     }
20513     #[cfg(feature = "Foundation")]
20514     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20515         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20516         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20517     }
20518     #[cfg(feature = "Foundation")]
20519     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
20520         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20521         unsafe {
20522             let mut result__: super::super::Duration = ::std::mem::zeroed();
20523             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
20524         }
20525     }
20526     #[cfg(feature = "Foundation")]
20527     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20528         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20529         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20530     }
20531     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
20532         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20533         unsafe {
20534             let mut result__: f64 = ::std::mem::zeroed();
20535             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
20536         }
20537     }
20538     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
20539         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20540         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
20541     }
20542     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
20543         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20544         unsafe {
20545             let mut result__: FillBehavior = ::std::mem::zeroed();
20546             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
20547         }
20548     }
20549     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
20550         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20551         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
20552     }
20553     #[cfg(feature = "Foundation")]
20554     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
20555         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20556         unsafe {
20557             let mut result__: RepeatBehavior = ::std::mem::zeroed();
20558             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
20559         }
20560     }
20561     #[cfg(feature = "Foundation")]
20562     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20563         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20564         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20565     }
20566     #[cfg(feature = "Foundation")]
20567     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
20568         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20569         unsafe {
20570             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
20571             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
20572         }
20573     }
20574     #[cfg(feature = "Foundation")]
20575     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
20576         let this = &::windows::runtime::Interface::cast::<ITimeline>(self)?;
20577         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
20578     }
20579     pub fn ISwipeHintThemeAnimationStatics<R, F: FnOnce(&ISwipeHintThemeAnimationStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
20580         static mut SHARED: ::windows::runtime::FactoryCache<SwipeHintThemeAnimation, ISwipeHintThemeAnimationStatics> = ::windows::runtime::FactoryCache::new();
20581         unsafe { SHARED.call(callback) }
20582     }
20583 }
20584 unsafe impl ::windows::runtime::RuntimeType for SwipeHintThemeAnimation {
20585     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.SwipeHintThemeAnimation;{cdd067c0-580e-4e40-be98-f202d3d84365})");
20586 }
20587 unsafe impl ::windows::runtime::Interface for SwipeHintThemeAnimation {
20588     type Vtable = ISwipeHintThemeAnimation_abi;
20589     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3452987328, 22542, 20032, [190, 152, 242, 2, 211, 216, 67, 101]);
20590 }
20591 impl ::windows::runtime::RuntimeName for SwipeHintThemeAnimation {
20592     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.SwipeHintThemeAnimation";
20593 }
20594 impl ::std::convert::From<SwipeHintThemeAnimation> for ::windows::runtime::IUnknown {
20595     fn from(value: SwipeHintThemeAnimation) -> Self {
20596         unsafe { ::std::mem::transmute(value) }
20597     }
20598 }
20599 impl ::std::convert::From<&SwipeHintThemeAnimation> for ::windows::runtime::IUnknown {
20600     fn from(value: &SwipeHintThemeAnimation) -> Self {
20601         ::std::convert::From::from(::std::clone::Clone::clone(value))
20602     }
20603 }
20604 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SwipeHintThemeAnimation {
20605     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
20606         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
20607     }
20608 }
20609 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SwipeHintThemeAnimation {
20610     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
20611         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
20612     }
20613 }
20614 impl ::std::convert::From<SwipeHintThemeAnimation> for ::windows::runtime::IInspectable {
20615     fn from(value: SwipeHintThemeAnimation) -> Self {
20616         value.0
20617     }
20618 }
20619 impl ::std::convert::From<&SwipeHintThemeAnimation> for ::windows::runtime::IInspectable {
20620     fn from(value: &SwipeHintThemeAnimation) -> Self {
20621         value.0.clone()
20622     }
20623 }
20624 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SwipeHintThemeAnimation {
20625     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
20626         ::windows::runtime::Param::Owned(self.0)
20627     }
20628 }
20629 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SwipeHintThemeAnimation {
20630     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
20631         ::windows::runtime::Param::Borrowed(&self.0)
20632     }
20633 }
20634 impl ::std::convert::From<SwipeHintThemeAnimation> for Timeline {
20635     fn from(value: SwipeHintThemeAnimation) -> Self {
20636         ::std::convert::Into::<Timeline>::into(&value)
20637     }
20638 }
20639 impl ::std::convert::From<&SwipeHintThemeAnimation> for Timeline {
20640     fn from(value: &SwipeHintThemeAnimation) -> Self {
20641         ::windows::runtime::Interface::cast(value).unwrap()
20642     }
20643 }
20644 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for SwipeHintThemeAnimation {
20645     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
20646         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(self))
20647     }
20648 }
20649 impl<'a> ::windows::runtime::IntoParam<'a, Timeline> for &SwipeHintThemeAnimation {
20650     fn into_param(self) -> ::windows::runtime::Param<'a, Timeline> {
20651         ::windows::runtime::Param::Owned(::std::convert::Into::<Timeline>::into(::std::clone::Clone::clone(self)))
20652     }
20653 }
20654 impl ::std::convert::From<SwipeHintThemeAnimation> for super::super::DependencyObject {
20655     fn from(value: SwipeHintThemeAnimation) -> Self {
20656         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
20657     }
20658 }
20659 impl ::std::convert::From<&SwipeHintThemeAnimation> for super::super::DependencyObject {
20660     fn from(value: &SwipeHintThemeAnimation) -> Self {
20661         ::windows::runtime::Interface::cast(value).unwrap()
20662     }
20663 }
20664 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for SwipeHintThemeAnimation {
20665     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
20666         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
20667     }
20668 }
20669 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &SwipeHintThemeAnimation {
20670     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
20671         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
20672     }
20673 }
20674 unsafe impl ::std::marker::Send for SwipeHintThemeAnimation {}
20675 unsafe impl ::std::marker::Sync for SwipeHintThemeAnimation {}
20676 #[repr(transparent)]
20677 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
20678 pub struct Timeline(::windows::runtime::IInspectable);
20679 impl Timeline {
20680     pub fn AutoReverse(&self) -> ::windows::runtime::Result<bool> {
20681         let this = self;
20682         unsafe {
20683             let mut result__: bool = ::std::mem::zeroed();
20684             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
20685         }
20686     }
20687     pub fn SetAutoReverse(&self, value: bool) -> ::windows::runtime::Result<()> {
20688         let this = self;
20689         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
20690     }
20691     #[cfg(feature = "Foundation")]
20692     pub fn BeginTime(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>> {
20693         let this = self;
20694         unsafe {
20695             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20696             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>(result__)
20697         }
20698     }
20699     #[cfg(feature = "Foundation")]
20700     pub fn SetBeginTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::IReference<super::super::super::super::Foundation::TimeSpan>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20701         let this = self;
20702         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20703     }
20704     #[cfg(feature = "Foundation")]
20705     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Duration> {
20706         let this = self;
20707         unsafe {
20708             let mut result__: super::super::Duration = ::std::mem::zeroed();
20709             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Duration>(result__)
20710         }
20711     }
20712     #[cfg(feature = "Foundation")]
20713     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Duration>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20714         let this = self;
20715         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20716     }
20717     pub fn SpeedRatio(&self) -> ::windows::runtime::Result<f64> {
20718         let this = self;
20719         unsafe {
20720             let mut result__: f64 = ::std::mem::zeroed();
20721             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<f64>(result__)
20722         }
20723     }
20724     pub fn SetSpeedRatio(&self, value: f64) -> ::windows::runtime::Result<()> {
20725         let this = self;
20726         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
20727     }
20728     pub fn FillBehavior(&self) -> ::windows::runtime::Result<FillBehavior> {
20729         let this = self;
20730         unsafe {
20731             let mut result__: FillBehavior = ::std::mem::zeroed();
20732             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<FillBehavior>(result__)
20733         }
20734     }
20735     pub fn SetFillBehavior(&self, value: FillBehavior) -> ::windows::runtime::Result<()> {
20736         let this = self;
20737         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
20738     }
20739     #[cfg(feature = "Foundation")]
20740     pub fn RepeatBehavior(&self) -> ::windows::runtime::Result<RepeatBehavior> {
20741         let this = self;
20742         unsafe {
20743             let mut result__: RepeatBehavior = ::std::mem::zeroed();
20744             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<RepeatBehavior>(result__)
20745         }
20746     }
20747     #[cfg(feature = "Foundation")]
20748     pub fn SetRepeatBehavior<'a, Param0: ::windows::runtime::IntoParam<'a, RepeatBehavior>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20749         let this = self;
20750         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20751     }
20752     #[cfg(feature = "Foundation")]
20753     pub fn Completed<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventHandler<::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::super::super::Foundation::EventRegistrationToken> {
20754         let this = self;
20755         unsafe {
20756             let mut result__: super::super::super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
20757             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::super::super::Foundation::EventRegistrationToken>(result__)
20758         }
20759     }
20760     #[cfg(feature = "Foundation")]
20761     pub fn RemoveCompleted<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
20762         let this = self;
20763         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
20764     }
20765     pub fn AllowDependentAnimations() -> ::windows::runtime::Result<bool> {
20766         Self::ITimelineStatics(|this| unsafe {
20767             let mut result__: bool = ::std::mem::zeroed();
20768             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
20769         })
20770     }
20771     pub fn SetAllowDependentAnimations(value: bool) -> ::windows::runtime::Result<()> {
20772         Self::ITimelineStatics(|this| unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() })
20773     }
20774     pub fn AutoReverseProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20775         Self::ITimelineStatics(|this| unsafe {
20776             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20777             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20778         })
20779     }
20780     pub fn BeginTimeProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20781         Self::ITimelineStatics(|this| unsafe {
20782             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20783             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20784         })
20785     }
20786     pub fn DurationProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20787         Self::ITimelineStatics(|this| unsafe {
20788             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20789             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20790         })
20791     }
20792     pub fn SpeedRatioProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20793         Self::ITimelineStatics(|this| unsafe {
20794             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20795             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20796         })
20797     }
20798     pub fn FillBehaviorProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20799         Self::ITimelineStatics(|this| unsafe {
20800             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20801             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20802         })
20803     }
20804     pub fn RepeatBehaviorProperty() -> ::windows::runtime::Result<super::super::DependencyProperty> {
20805         Self::ITimelineStatics(|this| unsafe {
20806             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20807             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::DependencyProperty>(result__)
20808         })
20809     }
20810     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
20811         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20812         unsafe {
20813             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20814             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
20815         }
20816     }
20817     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
20818         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20819         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
20820     }
20821     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
20822         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20823         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
20824     }
20825     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
20826         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20827         unsafe {
20828             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20829             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
20830         }
20831     }
20832     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
20833         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20834         unsafe {
20835             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20836             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
20837         }
20838     }
20839     #[cfg(feature = "UI_Core")]
20840     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
20841         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
20842         unsafe {
20843             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20844             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
20845         }
20846     }
20847     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
20848         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
20849         unsafe {
20850             let mut result__: i64 = ::std::mem::zeroed();
20851             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
20852         }
20853     }
20854     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
20855         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
20856         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
20857     }
20858     pub fn ITimelineStatics<R, F: FnOnce(&ITimelineStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
20859         static mut SHARED: ::windows::runtime::FactoryCache<Timeline, ITimelineStatics> = ::windows::runtime::FactoryCache::new();
20860         unsafe { SHARED.call(callback) }
20861     }
20862 }
20863 unsafe impl ::windows::runtime::RuntimeType for Timeline {
20864     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.Timeline;{0bc465dc-be4d-4d0d-9549-2208b715f40d})");
20865 }
20866 unsafe impl ::windows::runtime::Interface for Timeline {
20867     type Vtable = ITimeline_abi;
20868     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(197420508, 48717, 19725, [149, 73, 34, 8, 183, 21, 244, 13]);
20869 }
20870 impl ::windows::runtime::RuntimeName for Timeline {
20871     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.Timeline";
20872 }
20873 impl ::std::convert::From<Timeline> for ::windows::runtime::IUnknown {
20874     fn from(value: Timeline) -> Self {
20875         unsafe { ::std::mem::transmute(value) }
20876     }
20877 }
20878 impl ::std::convert::From<&Timeline> for ::windows::runtime::IUnknown {
20879     fn from(value: &Timeline) -> Self {
20880         ::std::convert::From::from(::std::clone::Clone::clone(value))
20881     }
20882 }
20883 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for Timeline {
20884     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
20885         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
20886     }
20887 }
20888 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &Timeline {
20889     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
20890         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
20891     }
20892 }
20893 impl ::std::convert::From<Timeline> for ::windows::runtime::IInspectable {
20894     fn from(value: Timeline) -> Self {
20895         value.0
20896     }
20897 }
20898 impl ::std::convert::From<&Timeline> for ::windows::runtime::IInspectable {
20899     fn from(value: &Timeline) -> Self {
20900         value.0.clone()
20901     }
20902 }
20903 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for Timeline {
20904     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
20905         ::windows::runtime::Param::Owned(self.0)
20906     }
20907 }
20908 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a Timeline {
20909     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
20910         ::windows::runtime::Param::Borrowed(&self.0)
20911     }
20912 }
20913 impl ::std::convert::From<Timeline> for super::super::DependencyObject {
20914     fn from(value: Timeline) -> Self {
20915         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
20916     }
20917 }
20918 impl ::std::convert::From<&Timeline> for super::super::DependencyObject {
20919     fn from(value: &Timeline) -> Self {
20920         ::windows::runtime::Interface::cast(value).unwrap()
20921     }
20922 }
20923 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for Timeline {
20924     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
20925         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
20926     }
20927 }
20928 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &Timeline {
20929     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
20930         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
20931     }
20932 }
20933 unsafe impl ::std::marker::Send for Timeline {}
20934 unsafe impl ::std::marker::Sync for Timeline {}
20935 #[cfg(feature = "Foundation_Collections")]
20936 #[repr(transparent)]
20937 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
20938 pub struct TimelineCollection(::windows::runtime::IInspectable);
20939 #[cfg(feature = "Foundation_Collections")]
20940 impl TimelineCollection {
20941     pub fn new() -> ::windows::runtime::Result<Self> {
20942         Self::IActivationFactory(|f| f.activate_instance::<Self>())
20943     }
20944     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
20945         static mut SHARED: ::windows::runtime::FactoryCache<TimelineCollection, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
20946         unsafe { SHARED.call(callback) }
20947     }
20948     #[cfg(feature = "Foundation_Collections")]
20949     pub fn GetAt(&self, index: u32) -> ::windows::runtime::Result<Timeline> {
20950         let this = self;
20951         unsafe {
20952             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20953             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), index, &mut result__).from_abi::<Timeline>(result__)
20954         }
20955     }
20956     #[cfg(feature = "Foundation_Collections")]
20957     pub fn Size(&self) -> ::windows::runtime::Result<u32> {
20958         let this = self;
20959         unsafe {
20960             let mut result__: u32 = ::std::mem::zeroed();
20961             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
20962         }
20963     }
20964     #[cfg(feature = "Foundation_Collections")]
20965     pub fn GetView(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IVectorView<Timeline>> {
20966         let this = self;
20967         unsafe {
20968             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
20969             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IVectorView<Timeline>>(result__)
20970         }
20971     }
20972     #[cfg(feature = "Foundation_Collections")]
20973     pub fn IndexOf<'a, Param0: ::windows::runtime::IntoParam<'a, Timeline>>(&self, value: Param0, index: &mut u32) -> ::windows::runtime::Result<bool> {
20974         let this = self;
20975         unsafe {
20976             let mut result__: bool = ::std::mem::zeroed();
20977             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi(), index, &mut result__).from_abi::<bool>(result__)
20978         }
20979     }
20980     #[cfg(feature = "Foundation_Collections")]
20981     pub fn SetAt<'a, Param1: ::windows::runtime::IntoParam<'a, Timeline>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
20982         let this = self;
20983         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
20984     }
20985     #[cfg(feature = "Foundation_Collections")]
20986     pub fn InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, Timeline>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
20987         let this = self;
20988         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
20989     }
20990     #[cfg(feature = "Foundation_Collections")]
20991     pub fn RemoveAt(&self, index: u32) -> ::windows::runtime::Result<()> {
20992         let this = self;
20993         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), index).ok() }
20994     }
20995     #[cfg(feature = "Foundation_Collections")]
20996     pub fn Append<'a, Param0: ::windows::runtime::IntoParam<'a, Timeline>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
20997         let this = self;
20998         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
20999     }
21000     #[cfg(feature = "Foundation_Collections")]
21001     pub fn RemoveAtEnd(&self) -> ::windows::runtime::Result<()> {
21002         let this = self;
21003         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
21004     }
21005     #[cfg(feature = "Foundation_Collections")]
21006     pub fn Clear(&self) -> ::windows::runtime::Result<()> {
21007         let this = self;
21008         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this)).ok() }
21009     }
21010     #[cfg(feature = "Foundation_Collections")]
21011     pub fn GetMany(&self, startindex: u32, items: &mut [<Timeline as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<u32> {
21012         let this = self;
21013         unsafe {
21014             let mut result__: u32 = ::std::mem::zeroed();
21015             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), startindex, items.len() as u32, ::std::mem::transmute_copy(&items), &mut result__).from_abi::<u32>(result__)
21016         }
21017     }
21018     #[cfg(feature = "Foundation_Collections")]
21019     pub fn ReplaceAll(&self, items: &[<Timeline as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<()> {
21020         let this = self;
21021         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), items.len() as u32, ::std::mem::transmute(items.as_ptr())).ok() }
21022     }
21023     #[cfg(feature = "Foundation_Collections")]
21024     pub fn First(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IIterator<Timeline>> {
21025         let this = &::windows::runtime::Interface::cast::<super::super::super::super::Foundation::Collections::IIterable<Timeline>>(self)?;
21026         unsafe {
21027             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
21028             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IIterator<Timeline>>(result__)
21029         }
21030     }
21031 }
21032 #[cfg(feature = "Foundation_Collections")]
21033 unsafe impl ::windows::runtime::RuntimeType for TimelineCollection {
21034     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.TimelineCollection;pinterface({913337e9-11a1-4345-a3a2-4e7f956e222d};rc(Windows.UI.Xaml.Media.Animation.Timeline;{0bc465dc-be4d-4d0d-9549-2208b715f40d})))");
21035 }
21036 #[cfg(feature = "Foundation_Collections")]
21037 unsafe impl ::windows::runtime::Interface for TimelineCollection {
21038     type Vtable = super::super::super::super::Foundation::Collections::IVector_abi<Timeline>;
21039     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_signature(<super::super::super::super::Foundation::Collections::IVector<Timeline> as ::windows::runtime::RuntimeType>::SIGNATURE);
21040 }
21041 #[cfg(feature = "Foundation_Collections")]
21042 impl ::windows::runtime::RuntimeName for TimelineCollection {
21043     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.TimelineCollection";
21044 }
21045 #[cfg(feature = "Foundation_Collections")]
21046 impl ::std::convert::From<TimelineCollection> for ::windows::runtime::IUnknown {
21047     fn from(value: TimelineCollection) -> Self {
21048         unsafe { ::std::mem::transmute(value) }
21049     }
21050 }
21051 #[cfg(feature = "Foundation_Collections")]
21052 impl ::std::convert::From<&TimelineCollection> for ::windows::runtime::IUnknown {
21053     fn from(value: &TimelineCollection) -> Self {
21054         ::std::convert::From::from(::std::clone::Clone::clone(value))
21055     }
21056 }
21057 #[cfg(feature = "Foundation_Collections")]
21058 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for TimelineCollection {
21059     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
21060         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
21061     }
21062 }
21063 #[cfg(feature = "Foundation_Collections")]
21064 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &TimelineCollection {
21065     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
21066         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
21067     }
21068 }
21069 #[cfg(feature = "Foundation_Collections")]
21070 impl ::std::convert::From<TimelineCollection> for ::windows::runtime::IInspectable {
21071     fn from(value: TimelineCollection) -> Self {
21072         value.0
21073     }
21074 }
21075 #[cfg(feature = "Foundation_Collections")]
21076 impl ::std::convert::From<&TimelineCollection> for ::windows::runtime::IInspectable {
21077     fn from(value: &TimelineCollection) -> Self {
21078         value.0.clone()
21079     }
21080 }
21081 #[cfg(feature = "Foundation_Collections")]
21082 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for TimelineCollection {
21083     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
21084         ::windows::runtime::Param::Owned(self.0)
21085     }
21086 }
21087 #[cfg(feature = "Foundation_Collections")]
21088 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a TimelineCollection {
21089     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
21090         ::windows::runtime::Param::Borrowed(&self.0)
21091     }
21092 }
21093 #[cfg(feature = "Foundation_Collections")]
21094 impl ::std::convert::From<TimelineCollection> for super::super::super::super::Foundation::Collections::IVector<Timeline> {
21095     fn from(value: TimelineCollection) -> Self {
21096         unsafe { ::std::mem::transmute(value) }
21097     }
21098 }
21099 #[cfg(feature = "Foundation_Collections")]
21100 impl ::std::convert::From<&TimelineCollection> for super::super::super::super::Foundation::Collections::IVector<Timeline> {
21101     fn from(value: &TimelineCollection) -> Self {
21102         ::std::convert::From::from(::std::clone::Clone::clone(value))
21103     }
21104 }
21105 #[cfg(feature = "Foundation_Collections")]
21106 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<Timeline>> for TimelineCollection {
21107     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<Timeline>> {
21108         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<Timeline>>::into(self))
21109     }
21110 }
21111 #[cfg(feature = "Foundation_Collections")]
21112 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<Timeline>> for &TimelineCollection {
21113     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<Timeline>> {
21114         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<Timeline>>::into(::std::clone::Clone::clone(self)))
21115     }
21116 }
21117 #[cfg(feature = "Foundation_Collections")]
21118 impl ::std::convert::TryFrom<TimelineCollection> for super::super::super::super::Foundation::Collections::IIterable<Timeline> {
21119     type Error = ::windows::runtime::Error;
21120     fn try_from(value: TimelineCollection) -> ::windows::runtime::Result<Self> {
21121         ::std::convert::TryFrom::try_from(&value)
21122     }
21123 }
21124 #[cfg(feature = "Foundation_Collections")]
21125 impl ::std::convert::TryFrom<&TimelineCollection> for super::super::super::super::Foundation::Collections::IIterable<Timeline> {
21126     type Error = ::windows::runtime::Error;
21127     fn try_from(value: &TimelineCollection) -> ::windows::runtime::Result<Self> {
21128         ::windows::runtime::Interface::cast(value)
21129     }
21130 }
21131 #[cfg(feature = "Foundation_Collections")]
21132 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<Timeline>> for TimelineCollection {
21133     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<Timeline>> {
21134         ::windows::runtime::IntoParam::into_param(&self)
21135     }
21136 }
21137 #[cfg(feature = "Foundation_Collections")]
21138 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<Timeline>> for &TimelineCollection {
21139     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<Timeline>> {
21140         ::std::convert::TryInto::<super::super::super::super::Foundation::Collections::IIterable<Timeline>>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
21141     }
21142 }
21143 #[cfg(feature = "Foundation_Collections")]
21144 unsafe impl ::std::marker::Send for TimelineCollection {}
21145 #[cfg(feature = "Foundation_Collections")]
21146 unsafe impl ::std::marker::Sync for TimelineCollection {}
21147 #[cfg(all(feature = "Foundation_Collections"))]
21148 impl ::std::iter::IntoIterator for TimelineCollection {
21149     type Item = Timeline;
21150     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
21151     fn into_iter(self) -> Self::IntoIter {
21152         ::std::iter::IntoIterator::into_iter(&self)
21153     }
21154 }
21155 #[cfg(all(feature = "Foundation_Collections"))]
21156 impl ::std::iter::IntoIterator for &TimelineCollection {
21157     type Item = Timeline;
21158     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
21159     fn into_iter(self) -> Self::IntoIter {
21160         super::super::super::super::Foundation::Collections::VectorIterator::new(::std::convert::TryInto::try_into(self).ok())
21161     }
21162 }
21163 #[repr(transparent)]
21164 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
21165 pub struct Transition(::windows::runtime::IInspectable);
21166 impl Transition {
21167     pub fn GetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
21168         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
21169         unsafe {
21170             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
21171             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
21172         }
21173     }
21174     pub fn SetValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable>>(&self, dp: Param0, value: Param1) -> ::windows::runtime::Result<()> {
21175         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
21176         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), value.into_param().abi()).ok() }
21177     }
21178     pub fn ClearValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<()> {
21179         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
21180         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), dp.into_param().abi()).ok() }
21181     }
21182     pub fn ReadLocalValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
21183         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
21184         unsafe {
21185             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
21186             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
21187         }
21188     }
21189     pub fn GetAnimationBaseValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0) -> ::windows::runtime::Result<::windows::runtime::IInspectable> {
21190         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
21191         unsafe {
21192             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
21193             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), dp.into_param().abi(), &mut result__).from_abi::<::windows::runtime::IInspectable>(result__)
21194         }
21195     }
21196     #[cfg(feature = "UI_Core")]
21197     pub fn Dispatcher(&self) -> ::windows::runtime::Result<super::super::super::Core::CoreDispatcher> {
21198         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject>(self)?;
21199         unsafe {
21200             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
21201             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::Core::CoreDispatcher>(result__)
21202         }
21203     }
21204     pub fn RegisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>, Param1: ::windows::runtime::IntoParam<'a, super::super::DependencyPropertyChangedCallback>>(&self, dp: Param0, callback: Param1) -> ::windows::runtime::Result<i64> {
21205         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
21206         unsafe {
21207             let mut result__: i64 = ::std::mem::zeroed();
21208             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), dp.into_param().abi(), callback.into_param().abi(), &mut result__).from_abi::<i64>(result__)
21209         }
21210     }
21211     pub fn UnregisterPropertyChangedCallback<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::DependencyProperty>>(&self, dp: Param0, token: i64) -> ::windows::runtime::Result<()> {
21212         let this = &::windows::runtime::Interface::cast::<super::super::IDependencyObject2>(self)?;
21213         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), dp.into_param().abi(), token).ok() }
21214     }
21215 }
21216 unsafe impl ::windows::runtime::RuntimeType for Transition {
21217     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.Transition;{3c677c7c-01d0-4dce-b333-976f93312b08})");
21218 }
21219 unsafe impl ::windows::runtime::Interface for Transition {
21220     type Vtable = ITransition_abi;
21221     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1013415036, 464, 19918, [179, 51, 151, 111, 147, 49, 43, 8]);
21222 }
21223 impl ::windows::runtime::RuntimeName for Transition {
21224     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.Transition";
21225 }
21226 impl ::std::convert::From<Transition> for ::windows::runtime::IUnknown {
21227     fn from(value: Transition) -> Self {
21228         unsafe { ::std::mem::transmute(value) }
21229     }
21230 }
21231 impl ::std::convert::From<&Transition> for ::windows::runtime::IUnknown {
21232     fn from(value: &Transition) -> Self {
21233         ::std::convert::From::from(::std::clone::Clone::clone(value))
21234     }
21235 }
21236 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for Transition {
21237     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
21238         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
21239     }
21240 }
21241 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &Transition {
21242     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
21243         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
21244     }
21245 }
21246 impl ::std::convert::From<Transition> for ::windows::runtime::IInspectable {
21247     fn from(value: Transition) -> Self {
21248         value.0
21249     }
21250 }
21251 impl ::std::convert::From<&Transition> for ::windows::runtime::IInspectable {
21252     fn from(value: &Transition) -> Self {
21253         value.0.clone()
21254     }
21255 }
21256 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for Transition {
21257     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
21258         ::windows::runtime::Param::Owned(self.0)
21259     }
21260 }
21261 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a Transition {
21262     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
21263         ::windows::runtime::Param::Borrowed(&self.0)
21264     }
21265 }
21266 impl ::std::convert::From<Transition> for super::super::DependencyObject {
21267     fn from(value: Transition) -> Self {
21268         ::std::convert::Into::<super::super::DependencyObject>::into(&value)
21269     }
21270 }
21271 impl ::std::convert::From<&Transition> for super::super::DependencyObject {
21272     fn from(value: &Transition) -> Self {
21273         ::windows::runtime::Interface::cast(value).unwrap()
21274     }
21275 }
21276 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for Transition {
21277     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
21278         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(self))
21279     }
21280 }
21281 impl<'a> ::windows::runtime::IntoParam<'a, super::super::DependencyObject> for &Transition {
21282     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::DependencyObject> {
21283         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::DependencyObject>::into(::std::clone::Clone::clone(self)))
21284     }
21285 }
21286 unsafe impl ::std::marker::Send for Transition {}
21287 unsafe impl ::std::marker::Sync for Transition {}
21288 #[cfg(feature = "Foundation_Collections")]
21289 #[repr(transparent)]
21290 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
21291 pub struct TransitionCollection(::windows::runtime::IInspectable);
21292 #[cfg(feature = "Foundation_Collections")]
21293 impl TransitionCollection {
21294     pub fn new() -> ::windows::runtime::Result<Self> {
21295         Self::IActivationFactory(|f| f.activate_instance::<Self>())
21296     }
21297     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
21298         static mut SHARED: ::windows::runtime::FactoryCache<TransitionCollection, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
21299         unsafe { SHARED.call(callback) }
21300     }
21301     #[cfg(feature = "Foundation_Collections")]
21302     pub fn GetAt(&self, index: u32) -> ::windows::runtime::Result<Transition> {
21303         let this = self;
21304         unsafe {
21305             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
21306             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), index, &mut result__).from_abi::<Transition>(result__)
21307         }
21308     }
21309     #[cfg(feature = "Foundation_Collections")]
21310     pub fn Size(&self) -> ::windows::runtime::Result<u32> {
21311         let this = self;
21312         unsafe {
21313             let mut result__: u32 = ::std::mem::zeroed();
21314             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
21315         }
21316     }
21317     #[cfg(feature = "Foundation_Collections")]
21318     pub fn GetView(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IVectorView<Transition>> {
21319         let this = self;
21320         unsafe {
21321             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
21322             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IVectorView<Transition>>(result__)
21323         }
21324     }
21325     #[cfg(feature = "Foundation_Collections")]
21326     pub fn IndexOf<'a, Param0: ::windows::runtime::IntoParam<'a, Transition>>(&self, value: Param0, index: &mut u32) -> ::windows::runtime::Result<bool> {
21327         let this = self;
21328         unsafe {
21329             let mut result__: bool = ::std::mem::zeroed();
21330             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi(), index, &mut result__).from_abi::<bool>(result__)
21331         }
21332     }
21333     #[cfg(feature = "Foundation_Collections")]
21334     pub fn SetAt<'a, Param1: ::windows::runtime::IntoParam<'a, Transition>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
21335         let this = self;
21336         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
21337     }
21338     #[cfg(feature = "Foundation_Collections")]
21339     pub fn InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, Transition>>(&self, index: u32, value: Param1) -> ::windows::runtime::Result<()> {
21340         let this = self;
21341         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), index, value.into_param().abi()).ok() }
21342     }
21343     #[cfg(feature = "Foundation_Collections")]
21344     pub fn RemoveAt(&self, index: u32) -> ::windows::runtime::Result<()> {
21345         let this = self;
21346         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), index).ok() }
21347     }
21348     #[cfg(feature = "Foundation_Collections")]
21349     pub fn Append<'a, Param0: ::windows::runtime::IntoParam<'a, Transition>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
21350         let this = self;
21351         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
21352     }
21353     #[cfg(feature = "Foundation_Collections")]
21354     pub fn RemoveAtEnd(&self) -> ::windows::runtime::Result<()> {
21355         let this = self;
21356         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this)).ok() }
21357     }
21358     #[cfg(feature = "Foundation_Collections")]
21359     pub fn Clear(&self) -> ::windows::runtime::Result<()> {
21360         let this = self;
21361         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this)).ok() }
21362     }
21363     #[cfg(feature = "Foundation_Collections")]
21364     pub fn GetMany(&self, startindex: u32, items: &mut [<Transition as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<u32> {
21365         let this = self;
21366         unsafe {
21367             let mut result__: u32 = ::std::mem::zeroed();
21368             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), startindex, items.len() as u32, ::std::mem::transmute_copy(&items), &mut result__).from_abi::<u32>(result__)
21369         }
21370     }
21371     #[cfg(feature = "Foundation_Collections")]
21372     pub fn ReplaceAll(&self, items: &[<Transition as ::windows::runtime::Abi>::DefaultType]) -> ::windows::runtime::Result<()> {
21373         let this = self;
21374         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), items.len() as u32, ::std::mem::transmute(items.as_ptr())).ok() }
21375     }
21376     #[cfg(feature = "Foundation_Collections")]
21377     pub fn First(&self) -> ::windows::runtime::Result<super::super::super::super::Foundation::Collections::IIterator<Transition>> {
21378         let this = &::windows::runtime::Interface::cast::<super::super::super::super::Foundation::Collections::IIterable<Transition>>(self)?;
21379         unsafe {
21380             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
21381             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::super::super::Foundation::Collections::IIterator<Transition>>(result__)
21382         }
21383     }
21384 }
21385 #[cfg(feature = "Foundation_Collections")]
21386 unsafe impl ::windows::runtime::RuntimeType for TransitionCollection {
21387     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.UI.Xaml.Media.Animation.TransitionCollection;pinterface({913337e9-11a1-4345-a3a2-4e7f956e222d};rc(Windows.UI.Xaml.Media.Animation.Transition;{3c677c7c-01d0-4dce-b333-976f93312b08})))");
21388 }
21389 #[cfg(feature = "Foundation_Collections")]
21390 unsafe impl ::windows::runtime::Interface for TransitionCollection {
21391     type Vtable = super::super::super::super::Foundation::Collections::IVector_abi<Transition>;
21392     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_signature(<super::super::super::super::Foundation::Collections::IVector<Transition> as ::windows::runtime::RuntimeType>::SIGNATURE);
21393 }
21394 #[cfg(feature = "Foundation_Collections")]
21395 impl ::windows::runtime::RuntimeName for TransitionCollection {
21396     const NAME: &'static str = "Windows.UI.Xaml.Media.Animation.TransitionCollection";
21397 }
21398 #[cfg(feature = "Foundation_Collections")]
21399 impl ::std::convert::From<TransitionCollection> for ::windows::runtime::IUnknown {
21400     fn from(value: TransitionCollection) -> Self {
21401         unsafe { ::std::mem::transmute(value) }
21402     }
21403 }
21404 #[cfg(feature = "Foundation_Collections")]
21405 impl ::std::convert::From<&TransitionCollection> for ::windows::runtime::IUnknown {
21406     fn from(value: &TransitionCollection) -> Self {
21407         ::std::convert::From::from(::std::clone::Clone::clone(value))
21408     }
21409 }
21410 #[cfg(feature = "Foundation_Collections")]
21411 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for TransitionCollection {
21412     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
21413         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
21414     }
21415 }
21416 #[cfg(feature = "Foundation_Collections")]
21417 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &TransitionCollection {
21418     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
21419         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
21420     }
21421 }
21422 #[cfg(feature = "Foundation_Collections")]
21423 impl ::std::convert::From<TransitionCollection> for ::windows::runtime::IInspectable {
21424     fn from(value: TransitionCollection) -> Self {
21425         value.0
21426     }
21427 }
21428 #[cfg(feature = "Foundation_Collections")]
21429 impl ::std::convert::From<&TransitionCollection> for ::windows::runtime::IInspectable {
21430     fn from(value: &TransitionCollection) -> Self {
21431         value.0.clone()
21432     }
21433 }
21434 #[cfg(feature = "Foundation_Collections")]
21435 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for TransitionCollection {
21436     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
21437         ::windows::runtime::Param::Owned(self.0)
21438     }
21439 }
21440 #[cfg(feature = "Foundation_Collections")]
21441 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a TransitionCollection {
21442     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
21443         ::windows::runtime::Param::Borrowed(&self.0)
21444     }
21445 }
21446 #[cfg(feature = "Foundation_Collections")]
21447 impl ::std::convert::From<TransitionCollection> for super::super::super::super::Foundation::Collections::IVector<Transition> {
21448     fn from(value: TransitionCollection) -> Self {
21449         unsafe { ::std::mem::transmute(value) }
21450     }
21451 }
21452 #[cfg(feature = "Foundation_Collections")]
21453 impl ::std::convert::From<&TransitionCollection> for super::super::super::super::Foundation::Collections::IVector<Transition> {
21454     fn from(value: &TransitionCollection) -> Self {
21455         ::std::convert::From::from(::std::clone::Clone::clone(value))
21456     }
21457 }
21458 #[cfg(feature = "Foundation_Collections")]
21459 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<Transition>> for TransitionCollection {
21460     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<Transition>> {
21461         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<Transition>>::into(self))
21462     }
21463 }
21464 #[cfg(feature = "Foundation_Collections")]
21465 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IVector<Transition>> for &TransitionCollection {
21466     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IVector<Transition>> {
21467         ::windows::runtime::Param::Owned(::std::convert::Into::<super::super::super::super::Foundation::Collections::IVector<Transition>>::into(::std::clone::Clone::clone(self)))
21468     }
21469 }
21470 #[cfg(feature = "Foundation_Collections")]
21471 impl ::std::convert::TryFrom<TransitionCollection> for super::super::super::super::Foundation::Collections::IIterable<Transition> {
21472     type Error = ::windows::runtime::Error;
21473     fn try_from(value: TransitionCollection) -> ::windows::runtime::Result<Self> {
21474         ::std::convert::TryFrom::try_from(&value)
21475     }
21476 }
21477 #[cfg(feature = "Foundation_Collections")]
21478 impl ::std::convert::TryFrom<&TransitionCollection> for super::super::super::super::Foundation::Collections::IIterable<Transition> {
21479     type Error = ::windows::runtime::Error;
21480     fn try_from(value: &TransitionCollection) -> ::windows::runtime::Result<Self> {
21481         ::windows::runtime::Interface::cast(value)
21482     }
21483 }
21484 #[cfg(feature = "Foundation_Collections")]
21485 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<Transition>> for TransitionCollection {
21486     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<Transition>> {
21487         ::windows::runtime::IntoParam::into_param(&self)
21488     }
21489 }
21490 #[cfg(feature = "Foundation_Collections")]
21491 impl<'a> ::windows::runtime::IntoParam<'a, super::super::super::super::Foundation::Collections::IIterable<Transition>> for &TransitionCollection {
21492     fn into_param(self) -> ::windows::runtime::Param<'a, super::super::super::super::Foundation::Collections::IIterable<Transition>> {
21493         ::std::convert::TryInto::<super::super::super::super::Foundation::Collections::IIterable<Transition>>::try_into(self).map(::windows::runtime::Param::Owned).unwrap_or(::windows::runtime::Param::None)
21494     }
21495 }
21496 #[cfg(feature = "Foundation_Collections")]
21497 unsafe impl ::std::marker::Send for TransitionCollection {}
21498 #[cfg(feature = "Foundation_Collections")]
21499 unsafe impl ::std::marker::Sync for TransitionCollection {}
21500 #[cfg(all(feature = "Foundation_Collections"))]
21501 impl ::std::iter::IntoIterator for TransitionCollection {
21502     type Item = Transition;
21503     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
21504     fn into_iter(self) -> Self::IntoIter {
21505         ::std::iter::IntoIterator::into_iter(&self)
21506     }
21507 }
21508 #[cfg(all(feature = "Foundation_Collections"))]
21509 impl ::std::iter::IntoIterator for &TransitionCollection {
21510     type Item = Transition;
21511     type IntoIter = super::super::super::super::Foundation::Collections::VectorIterator<Self::Item>;
21512     fn into_iter(self) -> Self::IntoIter {
21513         super::super::super::super::Foundation::Collections::VectorIterator::new(::std::convert::TryInto::try_into(self).ok())
21514     }
21515 }
21516