Ubuntu Download Manager: /build/ubuntu-download-manager-git/src/ubuntu-download-manager/src/downloads/client/ubuntu-download-manager-client_autogen/KVAQPNROTY/moc_error.cpp Source File

Ubuntu Download Manager 1.2.0 A session-wide downloading service |

moc_error.cpp
Go to the documentation of this file.
1 /****************************************************************************
2 ** Meta object code from reading C++ file 'error.h'
3 **
4 ** Created by: The Qt Meta Object Compiler version 67 (Qt 5.15.2)
5 **
6 ** WARNING! All changes made in this file will be lost!
7 *****************************************************************************/
8
9 #include <memory>
10 #include "../../ubuntu/download_manager/error.h"
11 #include <QtCore/qbytearray.h>
12 #include <QtCore/qmetatype.h>
13 #if !defined(Q_MOC_OUTPUT_REVISION)
14 #error "The header file 'error.h' doesn't include <QObject>."
15 #elif Q_MOC_OUTPUT_REVISION != 67
16 #error "This file was generated using the moc from 5.15.2. It"
17 #error "cannot be used with the include files from this version of Qt."
18 #error "(The moc has changed too much.)"
19 #endif
20
21 QT_BEGIN_MOC_NAMESPACE
22 QT_WARNING_PUSH
23 QT_WARNING_DISABLE_DEPRECATED
24 struct qt_meta_stringdata_Ubuntu__DownloadManager__Error_t {
25 QByteArrayData data[1];
26 char stringdata0[31];
27 };
28 #define QT_MOC_LITERAL(idx, ofs, len) \
29 Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
30 qptrdiff(offsetof(qt_meta_stringdata_Ubuntu__DownloadManager__Error_t, stringdata0) + ofs \
31 - idx * sizeof(QByteArrayData)) \
32 )
33 static const qt_meta_stringdata_Ubuntu__DownloadManager__Error_t qt_meta_stringdata_Ubuntu__DownloadManager__Error = {
34 {
35 QT_MOC_LITERAL(0, 0, 30) // "Ubuntu::DownloadManager::Error"
36
37 },
38 "Ubuntu::DownloadManager::Error"
39 };
40 #undef QT_MOC_LITERAL
41
42 static const uint qt_meta_data_Ubuntu__DownloadManager__Error[] = {
43
44 // content:
45 8, // revision
46 0, // classname
47 0, 0, // classinfo
48 0, 0, // methods
49 0, 0, // properties
50 0, 0, // enums/sets
51 0, 0, // constructors
52 0, // flags
53 0, // signalCount
54
55 0 // eod
56 };
57
58 void Ubuntu::DownloadManager::Error::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
59 {
60 Q_UNUSED(_o);
61 Q_UNUSED(_id);
62 Q_UNUSED(_c);
63 Q_UNUSED(_a);
64 }
65
66 QT_INIT_METAOBJECT const QMetaObject Ubuntu::DownloadManager::Error::staticMetaObject = { {
67 QMetaObject::SuperData::link<QObject::staticMetaObject>(),
68 qt_meta_stringdata_Ubuntu__DownloadManager__Error.data,
69 qt_meta_data_Ubuntu__DownloadManager__Error,
70 qt_static_metacall,
71 nullptr,
72 nullptr
73 } };
74
75
76 const QMetaObject *Ubuntu::DownloadManager::Error::metaObject() const
77 {
78 return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
79 }
80
81 void *Ubuntu::DownloadManager::Error::qt_metacast(const char *_clname)
82 {
83 if (!_clname) return nullptr;
84 if (!strcmp(_clname, qt_meta_stringdata_Ubuntu__DownloadManager__Error.stringdata0))
85 return static_cast<void*>(this);
86 return QObject::qt_metacast(_clname);
87 }
88
89 int Ubuntu::DownloadManager::Error::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
90 {
91 _id = QObject::qt_metacall(_c, _id, _a);
92 return _id;
93 }
94 struct qt_meta_stringdata_Ubuntu__DownloadManager__DBusError_t {
95 QByteArrayData data[1];
96 char stringdata0[35];
97 };
98 #define QT_MOC_LITERAL(idx, ofs, len) \
99 Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
100 qptrdiff(offsetof(qt_meta_stringdata_Ubuntu__DownloadManager__DBusError_t, stringdata0) + ofs \
101 - idx * sizeof(QByteArrayData)) \
102 )
103 static const qt_meta_stringdata_Ubuntu__DownloadManager__DBusError_t qt_meta_stringdata_Ubuntu__DownloadManager__DBusError = {
104 {
105 QT_MOC_LITERAL(0, 0, 34) // "Ubuntu::DownloadManager::DBus..."
106
107 },
108 "Ubuntu::DownloadManager::DBusError"
109 };
110 #undef QT_MOC_LITERAL
111
112 static const uint qt_meta_data_Ubuntu__DownloadManager__DBusError[] = {
113
114 // content:
115 8, // revision
116 0, // classname
117 0, 0, // classinfo
118 0, 0, // methods
119 0, 0, // properties
120 0, 0, // enums/sets
121 0, 0, // constructors
122 0, // flags
123 0, // signalCount
124
125 0 // eod
126 };
127
128 void Ubuntu::DownloadManager::DBusError::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
129 {
130 Q_UNUSED(_o);
131 Q_UNUSED(_id);
132 Q_UNUSED(_c);
133 Q_UNUSED(_a);
134 }
135
136 QT_INIT_METAOBJECT const QMetaObject Ubuntu::DownloadManager::DBusError::staticMetaObject = { {
137 QMetaObject::SuperData::link<Error::staticMetaObject>(),
138 qt_meta_stringdata_Ubuntu__DownloadManager__DBusError.data,
139 qt_meta_data_Ubuntu__DownloadManager__DBusError,
140 qt_static_metacall,
141 nullptr,
142 nullptr
143 } };
144
145
146 const QMetaObject *Ubuntu::DownloadManager::DBusError::metaObject() const
147 {
148 return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
149 }
150
151 void *Ubuntu::DownloadManager::DBusError::qt_metacast(const char *_clname)
152 {
153 if (!_clname) return nullptr;
154 if (!strcmp(_clname, qt_meta_stringdata_Ubuntu__DownloadManager__DBusError.stringdata0))
155 return static_cast<void*>(this);
156 return Error::qt_metacast(_clname);
157 }
158
159 int Ubuntu::DownloadManager::DBusError::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
160 {
161 _id = Error::qt_metacall(_c, _id, _a);
162 return _id;
163 }
164 struct qt_meta_stringdata_Ubuntu__DownloadManager__AuthError_t {
165 QByteArrayData data[1];
166 char stringdata0[35];
167 };
168 #define QT_MOC_LITERAL(idx, ofs, len) \
169 Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
170 qptrdiff(offsetof(qt_meta_stringdata_Ubuntu__DownloadManager__AuthError_t, stringdata0) + ofs \
171 - idx * sizeof(QByteArrayData)) \
172 )
173 static const qt_meta_stringdata_Ubuntu__DownloadManager__AuthError_t qt_meta_stringdata_Ubuntu__DownloadManager__AuthError = {
174 {
175 QT_MOC_LITERAL(0, 0, 34) // "Ubuntu::DownloadManager::Auth..."
176
177 },
178 "Ubuntu::DownloadManager::AuthError"
179 };
180 #undef QT_MOC_LITERAL
181
182 static const uint qt_meta_data_Ubuntu__DownloadManager__AuthError[] = {
183
184 // content:
185 8, // revision
186 0, // classname
187 0, 0, // classinfo
188 0, 0, // methods
189 0, 0, // properties
190 0, 0, // enums/sets
191 0, 0, // constructors
192 0, // flags
193 0, // signalCount
194
195 0 // eod
196 };
197
198 void Ubuntu::DownloadManager::AuthError::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
199 {
200 Q_UNUSED(_o);
201 Q_UNUSED(_id);
202 Q_UNUSED(_c);
203 Q_UNUSED(_a);
204 }
205
206 QT_INIT_METAOBJECT const QMetaObject Ubuntu::DownloadManager::AuthError::staticMetaObject = { {
207 QMetaObject::SuperData::link<Error::staticMetaObject>(),
208 qt_meta_stringdata_Ubuntu__DownloadManager__AuthError.data,
209 qt_meta_data_Ubuntu__DownloadManager__AuthError,
210 qt_static_metacall,
211 nullptr,
212 nullptr
213 } };
214
215
216 const QMetaObject *Ubuntu::DownloadManager::AuthError::metaObject() const
217 {
218 return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
219 }
220
221 void *Ubuntu::DownloadManager::AuthError::qt_metacast(const char *_clname)
222 {
223 if (!_clname) return nullptr;
224 if (!strcmp(_clname, qt_meta_stringdata_Ubuntu__DownloadManager__AuthError.stringdata0))
225 return static_cast<void*>(this);
226 return Error::qt_metacast(_clname);
227 }
228
229 int Ubuntu::DownloadManager::AuthError::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
230 {
231 _id = Error::qt_metacall(_c, _id, _a);
232 return _id;
233 }
234 struct qt_meta_stringdata_Ubuntu__DownloadManager__HttpError_t {
235 QByteArrayData data[1];
236 char stringdata0[35];
237 };
238 #define QT_MOC_LITERAL(idx, ofs, len) \
239 Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
240 qptrdiff(offsetof(qt_meta_stringdata_Ubuntu__DownloadManager__HttpError_t, stringdata0) + ofs \
241 - idx * sizeof(QByteArrayData)) \
242 )
243 static const qt_meta_stringdata_Ubuntu__DownloadManager__HttpError_t qt_meta_stringdata_Ubuntu__DownloadManager__HttpError = {
244 {
245 QT_MOC_LITERAL(0, 0, 34) // "Ubuntu::DownloadManager::Http..."
246
247 },
248 "Ubuntu::DownloadManager::HttpError"
249 };
250 #undef QT_MOC_LITERAL
251
252 static const uint qt_meta_data_Ubuntu__DownloadManager__HttpError[] = {
253
254 // content:
255 8, // revision
256 0, // classname
257 0, 0, // classinfo
258 0, 0, // methods
259 0, 0, // properties
260 0, 0, // enums/sets
261 0, 0, // constructors
262 0, // flags
263 0, // signalCount
264
265 0 // eod
266 };
267
268 void Ubuntu::DownloadManager::HttpError::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
269 {
270 Q_UNUSED(_o);
271 Q_UNUSED(_id);
272 Q_UNUSED(_c);
273 Q_UNUSED(_a);
274 }
275
276 QT_INIT_METAOBJECT const QMetaObject Ubuntu::DownloadManager::HttpError::staticMetaObject = { {
277 QMetaObject::SuperData::link<Error::staticMetaObject>(),
278 qt_meta_stringdata_Ubuntu__DownloadManager__HttpError.data,
279 qt_meta_data_Ubuntu__DownloadManager__HttpError,
280 qt_static_metacall,
281 nullptr,
282 nullptr
283 } };
284
285
286 const QMetaObject *Ubuntu::DownloadManager::HttpError::metaObject() const
287 {
288 return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
289 }
290
291 void *Ubuntu::DownloadManager::HttpError::qt_metacast(const char *_clname)
292 {
293 if (!_clname) return nullptr;
294 if (!strcmp(_clname, qt_meta_stringdata_Ubuntu__DownloadManager__HttpError.stringdata0))
295 return static_cast<void*>(this);
296 return Error::qt_metacast(_clname);
297 }
298
299 int Ubuntu::DownloadManager::HttpError::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
300 {
301 _id = Error::qt_metacall(_c, _id, _a);
302 return _id;
303 }
304 struct qt_meta_stringdata_Ubuntu__DownloadManager__NetworkError_t {
305 QByteArrayData data[1];
306 char stringdata0[38];
307 };
308 #define QT_MOC_LITERAL(idx, ofs, len) \
309 Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
310 qptrdiff(offsetof(qt_meta_stringdata_Ubuntu__DownloadManager__NetworkError_t, stringdata0) + ofs \
311 - idx * sizeof(QByteArrayData)) \
312 )
313 static const qt_meta_stringdata_Ubuntu__DownloadManager__NetworkError_t qt_meta_stringdata_Ubuntu__DownloadManager__NetworkError = {
314 {
315 QT_MOC_LITERAL(0, 0, 37) // "Ubuntu::DownloadManager::Netw..."
316
317 },
318 "Ubuntu::DownloadManager::NetworkError"
319 };
320 #undef QT_MOC_LITERAL
321
322 static const uint qt_meta_data_Ubuntu__DownloadManager__NetworkError[] = {
323
324 // content:
325 8, // revision
326 0, // classname
327 0, 0, // classinfo
328 0, 0, // methods
329 0, 0, // properties
330 0, 0, // enums/sets
331 0, 0, // constructors
332 0, // flags
333 0, // signalCount
334
335 0 // eod
336 };
337
338 void Ubuntu::DownloadManager::NetworkError::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
339 {
340 Q_UNUSED(_o);
341 Q_UNUSED(_id);
342 Q_UNUSED(_c);
343 Q_UNUSED(_a);
344 }
345
346 QT_INIT_METAOBJECT const QMetaObject Ubuntu::DownloadManager::NetworkError::staticMetaObject = { {
347 QMetaObject::SuperData::link<Error::staticMetaObject>(),
348 qt_meta_stringdata_Ubuntu__DownloadManager__NetworkError.data,
349 qt_meta_data_Ubuntu__DownloadManager__NetworkError,
350 qt_static_metacall,
351 nullptr,
352 nullptr
353 } };
354
355
356 const QMetaObject *Ubuntu::DownloadManager::NetworkError::metaObject() const
357 {
358 return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
359 }
360
361 void *Ubuntu::DownloadManager::NetworkError::qt_metacast(const char *_clname)
362 {
363 if (!_clname) return nullptr;
364 if (!strcmp(_clname, qt_meta_stringdata_Ubuntu__DownloadManager__NetworkError.stringdata0))
365 return static_cast<void*>(this);
366 return Error::qt_metacast(_clname);
367 }
368
369 int Ubuntu::DownloadManager::NetworkError::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
370 {
371 _id = Error::qt_metacall(_c, _id, _a);
372 return _id;
373 }
374 struct qt_meta_stringdata_Ubuntu__DownloadManager__ProcessError_t {
375 QByteArrayData data[1];
376 char stringdata0[38];
377 };
378 #define QT_MOC_LITERAL(idx, ofs, len) \
379 Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
380 qptrdiff(offsetof(qt_meta_stringdata_Ubuntu__DownloadManager__ProcessError_t, stringdata0) + ofs \
381 - idx * sizeof(QByteArrayData)) \
382 )
383 static const qt_meta_stringdata_Ubuntu__DownloadManager__ProcessError_t qt_meta_stringdata_Ubuntu__DownloadManager__ProcessError = {
384 {
385 QT_MOC_LITERAL(0, 0, 37) // "Ubuntu::DownloadManager::Proc..."
386
387 },
388 "Ubuntu::DownloadManager::ProcessError"
389 };
390 #undef QT_MOC_LITERAL
391
392 static const uint qt_meta_data_Ubuntu__DownloadManager__ProcessError[] = {
393
394 // content:
395 8, // revision
396 0, // classname
397 0, 0, // classinfo
398 0, 0, // methods
399 0, 0, // properties
400 0, 0, // enums/sets
401 0, 0, // constructors
402 0, // flags
403 0, // signalCount
404
405 0 // eod
406 };
407
408 void Ubuntu::DownloadManager::ProcessError::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
409 {
410 Q_UNUSED(_o);
411 Q_UNUSED(_id);
412 Q_UNUSED(_c);
413 Q_UNUSED(_a);
414 }
415
416 QT_INIT_METAOBJECT const QMetaObject Ubuntu::DownloadManager::ProcessError::staticMetaObject = { {
417 QMetaObject::SuperData::link<Error::staticMetaObject>(),
418 qt_meta_stringdata_Ubuntu__DownloadManager__ProcessError.data,
419 qt_meta_data_Ubuntu__DownloadManager__ProcessError,
420 qt_static_metacall,
421 nullptr,
422 nullptr
423 } };
424
425
426 const QMetaObject *Ubuntu::DownloadManager::ProcessError::metaObject() const
427 {
428 return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
429 }
430
431 void *Ubuntu::DownloadManager::ProcessError::qt_metacast(const char *_clname)
432 {
433 if (!_clname) return nullptr;
434 if (!strcmp(_clname, qt_meta_stringdata_Ubuntu__DownloadManager__ProcessError.stringdata0))
435 return static_cast<void*>(this);
436 return Error::qt_metacast(_clname);
437 }
438
439 int Ubuntu::DownloadManager::ProcessError::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
440 {
441 _id = Error::qt_metacall(_c, _id, _a);
442 return _id;
443 }
444 struct qt_meta_stringdata_Ubuntu__DownloadManager__HashError_t {
445 QByteArrayData data[1];
446 char stringdata0[35];
447 };
448 #define QT_MOC_LITERAL(idx, ofs, len) \
449 Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
450 qptrdiff(offsetof(qt_meta_stringdata_Ubuntu__DownloadManager__HashError_t, stringdata0) + ofs \
451 - idx * sizeof(QByteArrayData)) \
452 )
453 static const qt_meta_stringdata_Ubuntu__DownloadManager__HashError_t qt_meta_stringdata_Ubuntu__DownloadManager__HashError = {
454 {
455 QT_MOC_LITERAL(0, 0, 34) // "Ubuntu::DownloadManager::Hash..."
456
457 },
458 "Ubuntu::DownloadManager::HashError"
459 };
460 #undef QT_MOC_LITERAL
461
462 static const uint qt_meta_data_Ubuntu__DownloadManager__HashError[] = {
463
464 // content:
465 8, // revision
466 0, // classname
467 0, 0, // classinfo
468 0, 0, // methods
469 0, 0, // properties
470 0, 0, // enums/sets
471 0, 0, // constructors
472 0, // flags
473 0, // signalCount
474
475 0 // eod
476 };
477
478 void Ubuntu::DownloadManager::HashError::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
479 {
480 Q_UNUSED(_o);
481 Q_UNUSED(_id);
482 Q_UNUSED(_c);
483 Q_UNUSED(_a);
484 }
485
486 QT_INIT_METAOBJECT const QMetaObject Ubuntu::DownloadManager::HashError::staticMetaObject = { {
487 QMetaObject::SuperData::link<Error::staticMetaObject>(),
488 qt_meta_stringdata_Ubuntu__DownloadManager__HashError.data,
489 qt_meta_data_Ubuntu__DownloadManager__HashError,
490 qt_static_metacall,
491 nullptr,
492 nullptr
493 } };
494
495
496 const QMetaObject *Ubuntu::DownloadManager::HashError::metaObject() const
497 {
498 return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
499 }
500
501 void *Ubuntu::DownloadManager::HashError::qt_metacast(const char *_clname)
502 {
503 if (!_clname) return nullptr;
504 if (!strcmp(_clname, qt_meta_stringdata_Ubuntu__DownloadManager__HashError.stringdata0))
505 return static_cast<void*>(this);
506 return Error::qt_metacast(_clname);
507 }
508
509 int Ubuntu::DownloadManager::HashError::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
510 {
511 _id = Error::qt_metacall(_c, _id, _a);
512 return _id;
513 }
514 QT_WARNING_POP
515 QT_END_MOC_NAMESPACE
qt_meta_stringdata_Ubuntu__DownloadManager__DBusError_t::data
QByteArrayData data[1]
Definition: moc_error.cpp:95
QObject
qt_meta_stringdata_Ubuntu__DownloadManager__HashError_t::stringdata0
char stringdata0[35]
Definition: moc_error.cpp:446
QT_MOC_LITERAL
#define QT_MOC_LITERAL(idx, ofs, len)
Definition: moc_error.cpp:448
qt_meta_stringdata_Ubuntu__DownloadManager__DBusError_t::stringdata0
char stringdata0[35]
Definition: moc_error.cpp:96
qt_meta_stringdata_Ubuntu__DownloadManager__ProcessError_t::stringdata0
char stringdata0[38]
Definition: moc_error.cpp:376
qt_meta_stringdata_Ubuntu__DownloadManager__Error_t::stringdata0
char stringdata0[31]
Definition: moc_error.cpp:26
qt_meta_stringdata_Ubuntu__DownloadManager__ProcessError_t::data
QByteArrayData data[1]
Definition: moc_error.cpp:375
qt_meta_stringdata_Ubuntu__DownloadManager__DBusError_t
Definition: moc_error.cpp:94
qt_meta_stringdata_Ubuntu__DownloadManager__HashError_t
Definition: moc_error.cpp:444
qt_meta_stringdata_Ubuntu__DownloadManager__NetworkError_t::stringdata0
char stringdata0[38]
Definition: moc_error.cpp:306
qt_meta_stringdata_Ubuntu__DownloadManager__AuthError_t
Definition: moc_error.cpp:164
qt_meta_stringdata_Ubuntu__DownloadManager__HashError_t::data
QByteArrayData data[1]
Definition: moc_error.cpp:445
qt_meta_stringdata_Ubuntu__DownloadManager__NetworkError_t
Definition: moc_error.cpp:304
qt_meta_stringdata_Ubuntu__DownloadManager__HttpError_t::data
QByteArrayData data[1]
Definition: moc_error.cpp:235
qt_meta_stringdata_Ubuntu__DownloadManager__Error_t::data
QByteArrayData data[1]
Definition: moc_error.cpp:25
qt_meta_stringdata_Ubuntu__DownloadManager__NetworkError_t::data
QByteArrayData data[1]
Definition: moc_error.cpp:305
qt_meta_stringdata_Ubuntu__DownloadManager__AuthError_t::stringdata0
char stringdata0[35]
Definition: moc_error.cpp:166
qt_meta_stringdata_Ubuntu__DownloadManager__ProcessError_t
Definition: moc_error.cpp:374
qt_meta_stringdata_Ubuntu__DownloadManager__HttpError_t
Definition: moc_error.cpp:234
qt_meta_stringdata_Ubuntu__DownloadManager__AuthError_t::data
QByteArrayData data[1]
Definition: moc_error.cpp:165
qt_meta_stringdata_Ubuntu__DownloadManager__HttpError_t::stringdata0
char stringdata0[35]
Definition: moc_error.cpp:236
qt_meta_stringdata_Ubuntu__DownloadManager__Error_t
Definition: moc_error.cpp:24