summaryrefslogtreecommitdiff
path: root/noncore/securityplugins
Unidiff
Diffstat (limited to 'noncore/securityplugins') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/securityplugins/blueping/bluepingplugin.cpp3
-rw-r--r--noncore/securityplugins/blueping/bluepingplugin.h4
-rw-r--r--noncore/securityplugins/blueping/bluepingpluginimpl.cpp3
-rw-r--r--noncore/securityplugins/blueping/bluepingpluginimpl.h5
-rw-r--r--noncore/securityplugins/dummy/dummyplugin.cpp11
-rw-r--r--noncore/securityplugins/dummy/dummyplugin.h4
-rw-r--r--noncore/securityplugins/dummy/dummypluginimpl.cpp3
-rw-r--r--noncore/securityplugins/dummy/dummypluginimpl.h5
-rw-r--r--noncore/securityplugins/notice/noticeConfigWidget.cpp4
-rw-r--r--noncore/securityplugins/notice/noticeConfigWidget.h15
-rw-r--r--noncore/securityplugins/notice/noticeplugin.cpp6
-rw-r--r--noncore/securityplugins/notice/noticeplugin.h4
-rw-r--r--noncore/securityplugins/notice/noticepluginimpl.cpp3
-rw-r--r--noncore/securityplugins/notice/noticepluginimpl.h5
-rw-r--r--noncore/securityplugins/pin/pin.cpp17
-rw-r--r--noncore/securityplugins/pin/pin.h4
-rw-r--r--noncore/securityplugins/pin/pinConfigWidget.cpp6
-rw-r--r--noncore/securityplugins/pin/pinConfigWidget.h16
-rw-r--r--noncore/securityplugins/pin/pinpluginimpl.cpp3
-rw-r--r--noncore/securityplugins/pin/pinpluginimpl.h5
20 files changed, 75 insertions, 51 deletions
diff --git a/noncore/securityplugins/blueping/bluepingplugin.cpp b/noncore/securityplugins/blueping/bluepingplugin.cpp
index af0448b..f4c5e95 100644
--- a/noncore/securityplugins/blueping/bluepingplugin.cpp
+++ b/noncore/securityplugins/blueping/bluepingplugin.cpp
@@ -14,2 +14,5 @@
14using namespace Opie::Core; 14using namespace Opie::Core;
15using Opie::Security::MultiauthPluginObject;
16using Opie::Security::MultiauthConfigWidget;
17
15 18
diff --git a/noncore/securityplugins/blueping/bluepingplugin.h b/noncore/securityplugins/blueping/bluepingplugin.h
index c122471..0df3f78 100644
--- a/noncore/securityplugins/blueping/bluepingplugin.h
+++ b/noncore/securityplugins/blueping/bluepingplugin.h
@@ -48,3 +48,3 @@
48 */ 48 */
49class BluepingPlugin : public QObject, public MultiauthPluginObject { 49class BluepingPlugin : public QObject, public Opie::Security::MultiauthPluginObject {
50 50
@@ -56,3 +56,3 @@ class BluepingPlugin : public QObject, public MultiauthPluginObject {
56 int authenticate(); 56 int authenticate();
57 MultiauthConfigWidget * configWidget(QWidget * parent); 57 Opie::Security::MultiauthConfigWidget * configWidget(QWidget * parent);
58 QString pixmapNameConfig() const; 58 QString pixmapNameConfig() const;
diff --git a/noncore/securityplugins/blueping/bluepingpluginimpl.cpp b/noncore/securityplugins/blueping/bluepingpluginimpl.cpp
index f7b1bfc..dbca91f 100644
--- a/noncore/securityplugins/blueping/bluepingpluginimpl.cpp
+++ b/noncore/securityplugins/blueping/bluepingpluginimpl.cpp
@@ -2,2 +2,5 @@
2 2
3using Opie::Security::MultiauthPluginInterface;
4using Opie::Security::MultiauthPluginObject;
5
3BluepingPluginImpl::BluepingPluginImpl() { 6BluepingPluginImpl::BluepingPluginImpl() {
diff --git a/noncore/securityplugins/blueping/bluepingpluginimpl.h b/noncore/securityplugins/blueping/bluepingpluginimpl.h
index 2fd023a..4663602 100644
--- a/noncore/securityplugins/blueping/bluepingpluginimpl.h
+++ b/noncore/securityplugins/blueping/bluepingpluginimpl.h
@@ -39,3 +39,3 @@
39/// Standard multiauth plugin class 39/// Standard multiauth plugin class
40class BluepingPluginImpl : public MultiauthPluginInterface{ 40class BluepingPluginImpl : public Opie::Security::MultiauthPluginInterface{
41 41
@@ -49,3 +49,3 @@ class BluepingPluginImpl : public MultiauthPluginInterface{
49 49
50 virtual MultiauthPluginObject *plugin(); 50 virtual Opie::Security::MultiauthPluginObject *plugin();
51 51
@@ -54,3 +54,2 @@ class BluepingPluginImpl : public MultiauthPluginInterface{
54 BluepingPlugin *bluepingPlugin; 54 BluepingPlugin *bluepingPlugin;
55 ulong ref;
56}; 55};
diff --git a/noncore/securityplugins/dummy/dummyplugin.cpp b/noncore/securityplugins/dummy/dummyplugin.cpp
index 0d19e43..594825e 100644
--- a/noncore/securityplugins/dummy/dummyplugin.cpp
+++ b/noncore/securityplugins/dummy/dummyplugin.cpp
@@ -9,2 +9,5 @@
9 9
10using Opie::Security::MultiauthConfigWidget;
11using Opie::Security::MultiauthPluginObject;
12
10/// Simply return its name (Dummy plugin) 13/// Simply return its name (Dummy plugin)
@@ -56,3 +59,3 @@ int DummyPlugin::authenticate() {
56 dummyDialog.setGeometry( 0, 0, desk.width(), desk.height() ); 59 dummyDialog.setGeometry( 0, 0, desk.width(), desk.height() );
57 60
58 /* Creation of the particular widgets of our Dummy user interface 61 /* Creation of the particular widgets of our Dummy user interface
@@ -65,3 +68,3 @@ int DummyPlugin::authenticate() {
65 layout.setAlignment( Qt::AlignTop ); 68 layout.setAlignment( Qt::AlignTop );
66 69
67 QLabel title("<center><h1>" + tr("\"Dummy\" <br />demonstration plugin") + "</h1></center>", &dummyDialog); 70 QLabel title("<center><h1>" + tr("\"Dummy\" <br />demonstration plugin") + "</h1></center>", &dummyDialog);
@@ -78,3 +81,3 @@ int DummyPlugin::authenticate() {
78 hl.addWidget(&pbFailure, 0, Qt::AlignHCenter); 81 hl.addWidget(&pbFailure, 0, Qt::AlignHCenter);
79 82
80 /* Linking our pushbuttons to exit functions 83 /* Linking our pushbuttons to exit functions
@@ -85,3 +88,3 @@ int DummyPlugin::authenticate() {
85 QObject::connect(&pbSkip, SIGNAL(clicked()), this, SLOT(skip())); 88 QObject::connect(&pbSkip, SIGNAL(clicked()), this, SLOT(skip()));
86 89
87 /* The value of the signal these three slots will emit corresponds to 90 /* The value of the signal these three slots will emit corresponds to
diff --git a/noncore/securityplugins/dummy/dummyplugin.h b/noncore/securityplugins/dummy/dummyplugin.h
index 9680dff..3bfca98 100644
--- a/noncore/securityplugins/dummy/dummyplugin.h
+++ b/noncore/securityplugins/dummy/dummyplugin.h
@@ -44,3 +44,3 @@
44 */ 44 */
45class DummyPlugin : public QObject, public MultiauthPluginObject { 45class DummyPlugin : public QObject, public Opie::Security::MultiauthPluginObject {
46 46
@@ -50,3 +50,3 @@ class DummyPlugin : public QObject, public MultiauthPluginObject {
50 int authenticate(); 50 int authenticate();
51 MultiauthConfigWidget * configWidget(QWidget * parent); 51 Opie::Security::MultiauthConfigWidget * configWidget(QWidget * parent);
52 QString pixmapNameConfig() const; 52 QString pixmapNameConfig() const;
diff --git a/noncore/securityplugins/dummy/dummypluginimpl.cpp b/noncore/securityplugins/dummy/dummypluginimpl.cpp
index 518996c..54dbdd1 100644
--- a/noncore/securityplugins/dummy/dummypluginimpl.cpp
+++ b/noncore/securityplugins/dummy/dummypluginimpl.cpp
@@ -2,2 +2,5 @@
2 2
3using Opie::Security::MultiauthPluginInterface;
4using Opie::Security::MultiauthPluginObject;
5
3DummyPluginImpl::DummyPluginImpl() { 6DummyPluginImpl::DummyPluginImpl() {
diff --git a/noncore/securityplugins/dummy/dummypluginimpl.h b/noncore/securityplugins/dummy/dummypluginimpl.h
index 49a18cd..ce8620d 100644
--- a/noncore/securityplugins/dummy/dummypluginimpl.h
+++ b/noncore/securityplugins/dummy/dummypluginimpl.h
@@ -39,3 +39,3 @@
39/// Standard multiauth plugin class 39/// Standard multiauth plugin class
40class DummyPluginImpl : public MultiauthPluginInterface{ 40class DummyPluginImpl : public Opie::Security::MultiauthPluginInterface{
41 41
@@ -49,3 +49,3 @@ class DummyPluginImpl : public MultiauthPluginInterface{
49 49
50 virtual MultiauthPluginObject *plugin(); 50 virtual Opie::Security::MultiauthPluginObject *plugin();
51 51
@@ -54,3 +54,2 @@ class DummyPluginImpl : public MultiauthPluginInterface{
54 DummyPlugin *dummyPlugin; 54 DummyPlugin *dummyPlugin;
55 ulong ref;
56}; 55};
diff --git a/noncore/securityplugins/notice/noticeConfigWidget.cpp b/noncore/securityplugins/notice/noticeConfigWidget.cpp
index e2c2d83..e532232 100644
--- a/noncore/securityplugins/notice/noticeConfigWidget.cpp
+++ b/noncore/securityplugins/notice/noticeConfigWidget.cpp
@@ -10,2 +10,4 @@
10 10
11using Opie::Security::MultiauthConfigWidget;
12
11/// constructs the widget, filling the noticeMLE QMultiLineEdit with the "noticeText" entry 13/// constructs the widget, filling the noticeMLE QMultiLineEdit with the "noticeText" entry
@@ -48,3 +50,3 @@ void NoticeConfigWidget::writeConfig()
48{ 50{
49 if ( noticeMLE->edited() ) { 51 if ( noticeMLE->edited() ) {
50 odebug << "writing new notice text in Security.conf" << oendl; 52 odebug << "writing new notice text in Security.conf" << oendl;
diff --git a/noncore/securityplugins/notice/noticeConfigWidget.h b/noncore/securityplugins/notice/noticeConfigWidget.h
index 69f15bf..c90484c 100644
--- a/noncore/securityplugins/notice/noticeConfigWidget.h
+++ b/noncore/securityplugins/notice/noticeConfigWidget.h
@@ -9,3 +9,3 @@
9 .>+-= 9 .>+-=
10 _;:, .> :=|. This library is free software; you can 10 _;:, .> :=|. This library is free software; you can
11.> <`_, > . <= redistribute it and/or modify it under 11.> <`_, > . <= redistribute it and/or modify it under
@@ -15,4 +15,4 @@
15 ._= =} : or (at your option) any later version. 15 ._= =} : or (at your option) any later version.
16 .%`+i> _;_. 16 .%`+i> _;_.
17 .i_,=:_. -<s. This library is distributed in the hope that 17 .i_,=:_. -<s. This library is distributed in the hope that
18 + . -:. = it will be useful, but WITHOUT ANY WARRANTY; 18 + . -:. = it will be useful, but WITHOUT ANY WARRANTY;
@@ -23,6 +23,6 @@
23++= -. .` .: details. 23++= -. .` .: details.
24 : = ...= . :.=- 24 : = ...= . :.=-
25 -. .:....=;==+<; You should have received a copy of the GNU 25 -. .:....=;==+<; You should have received a copy of the GNU
26 -_. . . )=. = Library General Public License along with 26 -_. . . )=. = Library General Public License along with
27 -- :-=` this library; see the file COPYING.LIB. 27 -- :-=` this library; see the file COPYING.LIB.
28 If not, write to the Free Software Foundation, 28 If not, write to the Free Software Foundation,
@@ -50,4 +50,4 @@ static char defaultNoticeText [] = "<h2>NOTICE TO USERS</h2>\n"
50 "terms. LOG OFF IMMEDIATELY if you do not agree to them.</em></strong></p>"; 50 "terms. LOG OFF IMMEDIATELY if you do not agree to them.</em></strong></p>";
51 51
52class NoticeConfigWidget : public MultiauthConfigWidget { 52class NoticeConfigWidget : public Opie::Security::MultiauthConfigWidget {
53 53
@@ -71 +71,2 @@ private:
71#endif // NOTICECONFIGWIDGET_H 71#endif // NOTICECONFIGWIDGET_H
72
diff --git a/noncore/securityplugins/notice/noticeplugin.cpp b/noncore/securityplugins/notice/noticeplugin.cpp
index bacc439..25a452a 100644
--- a/noncore/securityplugins/notice/noticeplugin.cpp
+++ b/noncore/securityplugins/notice/noticeplugin.cpp
@@ -7,2 +7,4 @@
7 7
8using Opie::Security::MultiauthPluginObject;
9using Opie::Security::MultiauthConfigWidget;
8 10
@@ -63,6 +65,6 @@ int NoticePlugin::authenticate() {
63 noticeDialog.setButtonText(QMessageBox::Yes, tr("I accept")); 65 noticeDialog.setButtonText(QMessageBox::Yes, tr("I accept"));
64 66
65 QRect desk = oApp->desktop()->geometry(); 67 QRect desk = oApp->desktop()->geometry();
66 noticeDialog.setGeometry( 0, 0, desk.width(), desk.height() ); 68 noticeDialog.setGeometry( 0, 0, desk.width(), desk.height() );
67 69
68 switch (noticeDialog.exec()) 70 switch (noticeDialog.exec())
diff --git a/noncore/securityplugins/notice/noticeplugin.h b/noncore/securityplugins/notice/noticeplugin.h
index 842d47b..4aa6f02 100644
--- a/noncore/securityplugins/notice/noticeplugin.h
+++ b/noncore/securityplugins/notice/noticeplugin.h
@@ -45,3 +45,3 @@
45 */ 45 */
46class NoticePlugin : public QObject, public MultiauthPluginObject { 46class NoticePlugin : public QObject, public Opie::Security::MultiauthPluginObject {
47 47
@@ -53,3 +53,3 @@ public:
53 int authenticate(); 53 int authenticate();
54 MultiauthConfigWidget * configWidget(QWidget * parent); 54 Opie::Security::MultiauthConfigWidget * configWidget(QWidget * parent);
55 QString pixmapNameConfig() const; 55 QString pixmapNameConfig() const;
diff --git a/noncore/securityplugins/notice/noticepluginimpl.cpp b/noncore/securityplugins/notice/noticepluginimpl.cpp
index 34e3cfc..7524512 100644
--- a/noncore/securityplugins/notice/noticepluginimpl.cpp
+++ b/noncore/securityplugins/notice/noticepluginimpl.cpp
@@ -2,2 +2,5 @@
2 2
3using Opie::Security::MultiauthPluginObject;
4using Opie::Security::MultiauthPluginInterface;
5
3NoticePluginImpl::NoticePluginImpl() { 6NoticePluginImpl::NoticePluginImpl() {
diff --git a/noncore/securityplugins/notice/noticepluginimpl.h b/noncore/securityplugins/notice/noticepluginimpl.h
index b2a1140..1b1e22f 100644
--- a/noncore/securityplugins/notice/noticepluginimpl.h
+++ b/noncore/securityplugins/notice/noticepluginimpl.h
@@ -41,3 +41,3 @@
41 */ 41 */
42class NoticePluginImpl : public MultiauthPluginInterface{ 42class NoticePluginImpl : public Opie::Security::MultiauthPluginInterface{
43 43
@@ -51,3 +51,3 @@ class NoticePluginImpl : public MultiauthPluginInterface{
51 51
52 virtual MultiauthPluginObject *plugin(); 52 virtual Opie::Security::MultiauthPluginObject *plugin();
53 53
@@ -56,3 +56,2 @@ class NoticePluginImpl : public MultiauthPluginInterface{
56 NoticePlugin *noticePlugin; 56 NoticePlugin *noticePlugin;
57 ulong ref;
58}; 57};
diff --git a/noncore/securityplugins/pin/pin.cpp b/noncore/securityplugins/pin/pin.cpp
index 37dc5be..c21ffcd 100644
--- a/noncore/securityplugins/pin/pin.cpp
+++ b/noncore/securityplugins/pin/pin.cpp
@@ -43,4 +43,7 @@ extern "C" char *crypt(const char *key, const char *salt);
43 43
44using Opie::Security::MultiauthConfigWidget;
45using Opie::Security::MultiauthPluginObject;
46
44/// set to TRUE when we press the 'Skip' button 47/// set to TRUE when we press the 'Skip' button
45bool isSkip = FALSE; 48static bool isSkip = FALSE;
46 49
@@ -234,6 +237,6 @@ QString PinPlugin::getPIN( const QString& prompt )
234 pd.pinD->setPrompt( prompt ); 237 pd.pinD->setPrompt( prompt );
235 238
236 pd.showMaximized(); 239 pd.showMaximized();
237 int r = pd.exec(); 240 int r = pd.exec();
238 241
239 if ( r == QDialog::Accepted ) { 242 if ( r == QDialog::Accepted ) {
@@ -304,3 +307,3 @@ int PinPlugin::authenticate()
304 pd.exec(); 307 pd.exec();
305 308
306 // analyse the result 309 // analyse the result
@@ -310,3 +313,3 @@ int PinPlugin::authenticate()
310 return MultiauthPluginObject::Success; 313 return MultiauthPluginObject::Success;
311 else 314 else
312 return MultiauthPluginObject::Failure; 315 return MultiauthPluginObject::Failure;
@@ -333,6 +336,6 @@ MultiauthConfigWidget * PinPlugin::configWidget(QWidget * parent) {
333 PinConfigWidget * pinw = new PinConfigWidget(parent, "PIN configuration widget"); 336 PinConfigWidget * pinw = new PinConfigWidget(parent, "PIN configuration widget");
334 337
335 connect(pinw->changePIN, SIGNAL( clicked() ), this, SLOT( changePIN() )); 338 connect(pinw->changePIN, SIGNAL( clicked() ), this, SLOT( changePIN() ));
336 connect(pinw->clearPIN, SIGNAL( clicked() ), this, SLOT( clearPIN() )); 339 connect(pinw->clearPIN, SIGNAL( clicked() ), this, SLOT( clearPIN() ));
337 340
338 return pinw; 341 return pinw;
diff --git a/noncore/securityplugins/pin/pin.h b/noncore/securityplugins/pin/pin.h
index 6cd328a..1832210 100644
--- a/noncore/securityplugins/pin/pin.h
+++ b/noncore/securityplugins/pin/pin.h
@@ -45,3 +45,3 @@
45 */ 45 */
46class PinPlugin : public QObject, public MultiauthPluginObject { 46class PinPlugin : public QObject, public Opie::Security::MultiauthPluginObject {
47 47
@@ -51,3 +51,3 @@ public:
51 int authenticate(); 51 int authenticate();
52 MultiauthConfigWidget * configWidget(QWidget * parent); 52 Opie::Security::MultiauthConfigWidget * configWidget(QWidget * parent);
53 QString pixmapNameConfig() const; 53 QString pixmapNameConfig() const;
diff --git a/noncore/securityplugins/pin/pinConfigWidget.cpp b/noncore/securityplugins/pin/pinConfigWidget.cpp
index 53e1a20..b34db8b 100644
--- a/noncore/securityplugins/pin/pinConfigWidget.cpp
+++ b/noncore/securityplugins/pin/pinConfigWidget.cpp
@@ -7,2 +7,4 @@
7 7
8using Opie::Security::MultiauthConfigWidget;
9
8PinConfigWidget::PinConfigWidget(QWidget* parent = 0, const char* name = "PIN configuration widget") 10PinConfigWidget::PinConfigWidget(QWidget* parent = 0, const char* name = "PIN configuration widget")
@@ -14,3 +16,3 @@ PinConfigWidget::PinConfigWidget(QWidget* parent = 0, const char* name = "PIN co
14 baseLayout->setAlignment( Qt::AlignTop ); 16 baseLayout->setAlignment( Qt::AlignTop );
15 17
16 QGroupBox * configBox = new QGroupBox(0, Qt::Vertical, tr("Configure your PIN here"), this); 18 QGroupBox * configBox = new QGroupBox(0, Qt::Vertical, tr("Configure your PIN here"), this);
@@ -29,3 +31,3 @@ PinConfigWidget::PinConfigWidget(QWidget* parent = 0, const char* name = "PIN co
29 boxLayout->addLayout(buttonLayout); 31 boxLayout->addLayout(buttonLayout);
30 32
31} 33}
diff --git a/noncore/securityplugins/pin/pinConfigWidget.h b/noncore/securityplugins/pin/pinConfigWidget.h
index 3242ad0..6d5edff 100644
--- a/noncore/securityplugins/pin/pinConfigWidget.h
+++ b/noncore/securityplugins/pin/pinConfigWidget.h
@@ -9,3 +9,3 @@
9 .>+-= 9 .>+-=
10 _;:, .> :=|. This library is free software; you can 10 _;:, .> :=|. This library is free software; you can
11.> <`_, > . <= redistribute it and/or modify it under 11.> <`_, > . <= redistribute it and/or modify it under
@@ -15,4 +15,4 @@
15 ._= =} : or (at your option) any later version. 15 ._= =} : or (at your option) any later version.
16 .%`+i> _;_. 16 .%`+i> _;_.
17 .i_,=:_. -<s. This library is distributed in the hope that 17 .i_,=:_. -<s. This library is distributed in the hope that
18 + . -:. = it will be useful, but WITHOUT ANY WARRANTY; 18 + . -:. = it will be useful, but WITHOUT ANY WARRANTY;
@@ -23,6 +23,6 @@
23++= -. .` .: details. 23++= -. .` .: details.
24 : = ...= . :.=- 24 : = ...= . :.=-
25 -. .:....=;==+<; You should have received a copy of the GNU 25 -. .:....=;==+<; You should have received a copy of the GNU
26 -_. . . )=. = Library General Public License along with 26 -_. . . )=. = Library General Public License along with
27 -- :-=` this library; see the file COPYING.LIB. 27 -- :-=` this library; see the file COPYING.LIB.
28 If not, write to the Free Software Foundation, 28 If not, write to the Free Software Foundation,
@@ -39,3 +39,3 @@
39 39
40class PinConfigWidget : public MultiauthConfigWidget { 40class PinConfigWidget : public Opie::Security::MultiauthConfigWidget {
41public: 41public:
@@ -46,4 +46,4 @@ public:
46 QPushButton *changePIN; 46 QPushButton *changePIN;
47 QPushButton *clearPIN; 47 QPushButton *clearPIN;
48 48
49}; 49};
diff --git a/noncore/securityplugins/pin/pinpluginimpl.cpp b/noncore/securityplugins/pin/pinpluginimpl.cpp
index 1c32f81..6cd2467 100644
--- a/noncore/securityplugins/pin/pinpluginimpl.cpp
+++ b/noncore/securityplugins/pin/pinpluginimpl.cpp
@@ -2,2 +2,5 @@
2 2
3using Opie::Security::MultiauthPluginObject;
4using Opie::Security::MultiauthPluginInterface;
5
3PinPluginImpl::PinPluginImpl() { 6PinPluginImpl::PinPluginImpl() {
diff --git a/noncore/securityplugins/pin/pinpluginimpl.h b/noncore/securityplugins/pin/pinpluginimpl.h
index e604b64..cbb9ef0 100644
--- a/noncore/securityplugins/pin/pinpluginimpl.h
+++ b/noncore/securityplugins/pin/pinpluginimpl.h
@@ -39,3 +39,3 @@
39/// Standard multiauth plugin class 39/// Standard multiauth plugin class
40class PinPluginImpl : public MultiauthPluginInterface{ 40class PinPluginImpl : public Opie::Security::MultiauthPluginInterface{
41 41
@@ -49,3 +49,3 @@ class PinPluginImpl : public MultiauthPluginInterface{
49 49
50 virtual MultiauthPluginObject *plugin(); 50 virtual Opie::Security::MultiauthPluginObject *plugin();
51 51
@@ -54,3 +54,2 @@ class PinPluginImpl : public MultiauthPluginInterface{
54 PinPlugin *pinPlugin; 54 PinPlugin *pinPlugin;
55 ulong ref;
56}; 55};