This file is indexed.

/usr/include/diodon/diodon.h is in diodon-dev 1.0.3-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
/* diodon.h generated by valac 0.20.1, the Vala compiler, do not modify */


#ifndef __DIODON_H__
#define __DIODON_H__

#include <glib.h>
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <gtk/gtk.h>
#include <gio/gio.h>
#include <gee.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk/gdk.h>

G_BEGIN_DECLS


#define DIODON_TYPE_ICLIPBOARD_ITEM (diodon_iclipboard_item_get_type ())
#define DIODON_ICLIPBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIODON_TYPE_ICLIPBOARD_ITEM, DiodonIClipboardItem))
#define DIODON_IS_ICLIPBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIODON_TYPE_ICLIPBOARD_ITEM))
#define DIODON_ICLIPBOARD_ITEM_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), DIODON_TYPE_ICLIPBOARD_ITEM, DiodonIClipboardItemIface))

typedef struct _DiodonIClipboardItem DiodonIClipboardItem;
typedef struct _DiodonIClipboardItemIface DiodonIClipboardItemIface;

#define DIODON_TYPE_CLIPBOARD_TYPE (diodon_clipboard_type_get_type ())

#define DIODON_TYPE_CLIPBOARD_CATEGORY (diodon_clipboard_category_get_type ())

#define DIODON_TYPE_CLIPBOARD_ITEM_TYPE (diodon_clipboard_item_type_get_type ())

#define DIODON_TYPE_CONFIGURATION_MODEL (diodon_configuration_model_get_type ())
#define DIODON_CONFIGURATION_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIODON_TYPE_CONFIGURATION_MODEL, DiodonConfigurationModel))
#define DIODON_CONFIGURATION_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIODON_TYPE_CONFIGURATION_MODEL, DiodonConfigurationModelClass))
#define DIODON_IS_CONFIGURATION_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIODON_TYPE_CONFIGURATION_MODEL))
#define DIODON_IS_CONFIGURATION_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIODON_TYPE_CONFIGURATION_MODEL))
#define DIODON_CONFIGURATION_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIODON_TYPE_CONFIGURATION_MODEL, DiodonConfigurationModelClass))

typedef struct _DiodonConfigurationModel DiodonConfigurationModel;
typedef struct _DiodonConfigurationModelClass DiodonConfigurationModelClass;
typedef struct _DiodonConfigurationModelPrivate DiodonConfigurationModelPrivate;

#define DIODON_TYPE_CONTROLLER (diodon_controller_get_type ())
#define DIODON_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIODON_TYPE_CONTROLLER, DiodonController))
#define DIODON_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIODON_TYPE_CONTROLLER, DiodonControllerClass))
#define DIODON_IS_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIODON_TYPE_CONTROLLER))
#define DIODON_IS_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIODON_TYPE_CONTROLLER))
#define DIODON_CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIODON_TYPE_CONTROLLER, DiodonControllerClass))

typedef struct _DiodonController DiodonController;
typedef struct _DiodonControllerClass DiodonControllerClass;
typedef struct _DiodonControllerPrivate DiodonControllerPrivate;

#define DIODON_TYPE_KEYBINDING_MANAGER (diodon_keybinding_manager_get_type ())
#define DIODON_KEYBINDING_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIODON_TYPE_KEYBINDING_MANAGER, DiodonKeybindingManager))
#define DIODON_KEYBINDING_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIODON_TYPE_KEYBINDING_MANAGER, DiodonKeybindingManagerClass))
#define DIODON_IS_KEYBINDING_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIODON_TYPE_KEYBINDING_MANAGER))
#define DIODON_IS_KEYBINDING_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIODON_TYPE_KEYBINDING_MANAGER))
#define DIODON_KEYBINDING_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIODON_TYPE_KEYBINDING_MANAGER, DiodonKeybindingManagerClass))

typedef struct _DiodonKeybindingManager DiodonKeybindingManager;
typedef struct _DiodonKeybindingManagerClass DiodonKeybindingManagerClass;

#define DIODON_TYPE_FILE_CLIPBOARD_ITEM (diodon_file_clipboard_item_get_type ())
#define DIODON_FILE_CLIPBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIODON_TYPE_FILE_CLIPBOARD_ITEM, DiodonFileClipboardItem))
#define DIODON_FILE_CLIPBOARD_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIODON_TYPE_FILE_CLIPBOARD_ITEM, DiodonFileClipboardItemClass))
#define DIODON_IS_FILE_CLIPBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIODON_TYPE_FILE_CLIPBOARD_ITEM))
#define DIODON_IS_FILE_CLIPBOARD_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIODON_TYPE_FILE_CLIPBOARD_ITEM))
#define DIODON_FILE_CLIPBOARD_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIODON_TYPE_FILE_CLIPBOARD_ITEM, DiodonFileClipboardItemClass))

typedef struct _DiodonFileClipboardItem DiodonFileClipboardItem;
typedef struct _DiodonFileClipboardItemClass DiodonFileClipboardItemClass;
typedef struct _DiodonFileClipboardItemPrivate DiodonFileClipboardItemPrivate;

#define DIODON_TYPE_IMAGE_CLIPBOARD_ITEM (diodon_image_clipboard_item_get_type ())
#define DIODON_IMAGE_CLIPBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIODON_TYPE_IMAGE_CLIPBOARD_ITEM, DiodonImageClipboardItem))
#define DIODON_IMAGE_CLIPBOARD_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIODON_TYPE_IMAGE_CLIPBOARD_ITEM, DiodonImageClipboardItemClass))
#define DIODON_IS_IMAGE_CLIPBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIODON_TYPE_IMAGE_CLIPBOARD_ITEM))
#define DIODON_IS_IMAGE_CLIPBOARD_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIODON_TYPE_IMAGE_CLIPBOARD_ITEM))
#define DIODON_IMAGE_CLIPBOARD_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIODON_TYPE_IMAGE_CLIPBOARD_ITEM, DiodonImageClipboardItemClass))

typedef struct _DiodonImageClipboardItem DiodonImageClipboardItem;
typedef struct _DiodonImageClipboardItemClass DiodonImageClipboardItemClass;
typedef struct _DiodonImageClipboardItemPrivate DiodonImageClipboardItemPrivate;
typedef struct _DiodonKeybindingManagerPrivate DiodonKeybindingManagerPrivate;

#define DIODON_TYPE_TEXT_CLIPBOARD_ITEM (diodon_text_clipboard_item_get_type ())
#define DIODON_TEXT_CLIPBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIODON_TYPE_TEXT_CLIPBOARD_ITEM, DiodonTextClipboardItem))
#define DIODON_TEXT_CLIPBOARD_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIODON_TYPE_TEXT_CLIPBOARD_ITEM, DiodonTextClipboardItemClass))
#define DIODON_IS_TEXT_CLIPBOARD_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIODON_TYPE_TEXT_CLIPBOARD_ITEM))
#define DIODON_IS_TEXT_CLIPBOARD_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIODON_TYPE_TEXT_CLIPBOARD_ITEM))
#define DIODON_TEXT_CLIPBOARD_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIODON_TYPE_TEXT_CLIPBOARD_ITEM, DiodonTextClipboardItemClass))

typedef struct _DiodonTextClipboardItem DiodonTextClipboardItem;
typedef struct _DiodonTextClipboardItemClass DiodonTextClipboardItemClass;
typedef struct _DiodonTextClipboardItemPrivate DiodonTextClipboardItemPrivate;

#define DIODON_TYPE_UTILITY (diodon_utility_get_type ())
#define DIODON_UTILITY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DIODON_TYPE_UTILITY, DiodonUtility))
#define DIODON_UTILITY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DIODON_TYPE_UTILITY, DiodonUtilityClass))
#define DIODON_IS_UTILITY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DIODON_TYPE_UTILITY))
#define DIODON_IS_UTILITY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DIODON_TYPE_UTILITY))
#define DIODON_UTILITY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DIODON_TYPE_UTILITY, DiodonUtilityClass))

typedef struct _DiodonUtility DiodonUtility;
typedef struct _DiodonUtilityClass DiodonUtilityClass;
typedef struct _DiodonUtilityPrivate DiodonUtilityPrivate;

typedef enum  {
	DIODON_CLIPBOARD_TYPE_NONE,
	DIODON_CLIPBOARD_TYPE_CLIPBOARD,
	DIODON_CLIPBOARD_TYPE_PRIMARY
} DiodonClipboardType;

typedef enum  {
	DIODON_CLIPBOARD_CATEGORY_TEXT,
	DIODON_CLIPBOARD_CATEGORY_FILES,
	DIODON_CLIPBOARD_CATEGORY_IMAGES
} DiodonClipboardCategory;

typedef enum  {
	DIODON_CLIPBOARD_ITEM_TYPE_ALL = 0,
	DIODON_CLIPBOARD_ITEM_TYPE_TEXT,
	DIODON_CLIPBOARD_ITEM_TYPE_FILES,
	DIODON_CLIPBOARD_ITEM_TYPE_IMAGES
} DiodonClipboardItemType;

struct _DiodonIClipboardItemIface {
	GTypeInterface parent_iface;
	DiodonClipboardType (*get_clipboard_type) (DiodonIClipboardItem* self);
	gchar* (*get_label) (DiodonIClipboardItem* self);
	gchar* (*get_mime_type) (DiodonIClipboardItem* self);
	DiodonClipboardCategory (*get_category) (DiodonIClipboardItem* self);
	GtkImage* (*get_image) (DiodonIClipboardItem* self);
	GIcon* (*get_icon) (DiodonIClipboardItem* self);
	gchar* (*get_clipboard_data) (DiodonIClipboardItem* self);
	gchar* (*get_checksum) (DiodonIClipboardItem* self);
	void (*to_clipboard) (DiodonIClipboardItem* self, GtkClipboard* clipboard);
	void (*remove) (DiodonIClipboardItem* self);
	gboolean (*matches) (DiodonIClipboardItem* self, const gchar* search, DiodonClipboardItemType type);
	gboolean (*equals) (DiodonIClipboardItem* self, DiodonIClipboardItem* item);
	guint (*hash) (DiodonIClipboardItem* self);
};

struct _DiodonConfigurationModel {
	GObject parent_instance;
	DiodonConfigurationModelPrivate * priv;
};

struct _DiodonConfigurationModelClass {
	GObjectClass parent_class;
};

struct _DiodonController {
	GObject parent_instance;
	DiodonControllerPrivate * priv;
};

struct _DiodonControllerClass {
	GObjectClass parent_class;
};

struct _DiodonFileClipboardItem {
	GObject parent_instance;
	DiodonFileClipboardItemPrivate * priv;
};

struct _DiodonFileClipboardItemClass {
	GObjectClass parent_class;
};

struct _DiodonImageClipboardItem {
	GObject parent_instance;
	DiodonImageClipboardItemPrivate * priv;
};

struct _DiodonImageClipboardItemClass {
	GObjectClass parent_class;
};

struct _DiodonKeybindingManager {
	GObject parent_instance;
	DiodonKeybindingManagerPrivate * priv;
};

struct _DiodonKeybindingManagerClass {
	GObjectClass parent_class;
};

typedef void (*DiodonKeybindingManagerKeybindingHandlerFunc) (GdkEvent* event, void* user_data);
struct _DiodonTextClipboardItem {
	GObject parent_instance;
	DiodonTextClipboardItemPrivate * priv;
};

struct _DiodonTextClipboardItemClass {
	GObjectClass parent_class;
};

struct _DiodonUtility {
	GObject parent_instance;
	DiodonUtilityPrivate * priv;
};

struct _DiodonUtilityClass {
	GObjectClass parent_class;
};


GType diodon_clipboard_type_get_type (void) G_GNUC_CONST;
GType diodon_clipboard_category_get_type (void) G_GNUC_CONST;
GType diodon_clipboard_item_type_get_type (void) G_GNUC_CONST;
GType diodon_iclipboard_item_get_type (void) G_GNUC_CONST;
DiodonClipboardType diodon_iclipboard_item_get_clipboard_type (DiodonIClipboardItem* self);
gchar* diodon_iclipboard_item_get_label (DiodonIClipboardItem* self);
gchar* diodon_iclipboard_item_get_mime_type (DiodonIClipboardItem* self);
DiodonClipboardCategory diodon_iclipboard_item_get_category (DiodonIClipboardItem* self);
GtkImage* diodon_iclipboard_item_get_image (DiodonIClipboardItem* self);
GIcon* diodon_iclipboard_item_get_icon (DiodonIClipboardItem* self);
gchar* diodon_iclipboard_item_get_clipboard_data (DiodonIClipboardItem* self);
gchar* diodon_iclipboard_item_get_checksum (DiodonIClipboardItem* self);
void diodon_iclipboard_item_to_clipboard (DiodonIClipboardItem* self, GtkClipboard* clipboard);
void diodon_iclipboard_item_remove (DiodonIClipboardItem* self);
gboolean diodon_iclipboard_item_matches (DiodonIClipboardItem* self, const gchar* search, DiodonClipboardItemType type);
gboolean diodon_iclipboard_item_equals (DiodonIClipboardItem* self, DiodonIClipboardItem* item);
guint diodon_iclipboard_item_hash (DiodonIClipboardItem* self);
gboolean diodon_iclipboard_item_equal_func (DiodonIClipboardItem* item_a, DiodonIClipboardItem* item_b);
guint diodon_iclipboard_item_hash_func (DiodonIClipboardItem* item);
gchar* diodon_clipboard_item_type_to_string (DiodonClipboardItemType self);
DiodonClipboardItemType diodon_clipboard_item_type_from_string (const gchar* type);
GType diodon_configuration_model_get_type (void) G_GNUC_CONST;
DiodonConfigurationModel* diodon_configuration_model_new (void);
DiodonConfigurationModel* diodon_configuration_model_construct (GType object_type);
gboolean diodon_configuration_model_get_use_primary (DiodonConfigurationModel* self);
void diodon_configuration_model_set_use_primary (DiodonConfigurationModel* self, gboolean value);
gboolean diodon_configuration_model_get_use_clipboard (DiodonConfigurationModel* self);
void diodon_configuration_model_set_use_clipboard (DiodonConfigurationModel* self, gboolean value);
gboolean diodon_configuration_model_get_synchronize_clipboards (DiodonConfigurationModel* self);
void diodon_configuration_model_set_synchronize_clipboards (DiodonConfigurationModel* self, gboolean value);
gboolean diodon_configuration_model_get_keep_clipboard_content (DiodonConfigurationModel* self);
void diodon_configuration_model_set_keep_clipboard_content (DiodonConfigurationModel* self, gboolean value);
gboolean diodon_configuration_model_get_instant_paste (DiodonConfigurationModel* self);
void diodon_configuration_model_set_instant_paste (DiodonConfigurationModel* self, gboolean value);
gint diodon_configuration_model_get_clipboard_size (DiodonConfigurationModel* self);
void diodon_configuration_model_set_clipboard_size (DiodonConfigurationModel* self, gint value);
const gchar* diodon_configuration_model_get_previous_history_accelerator (DiodonConfigurationModel* self);
void diodon_configuration_model_set_previous_history_accelerator (DiodonConfigurationModel* self, const gchar* value);
const gchar* diodon_configuration_model_get_history_accelerator (DiodonConfigurationModel* self);
void diodon_configuration_model_set_history_accelerator (DiodonConfigurationModel* self, const gchar* value);
GType diodon_controller_get_type (void) G_GNUC_CONST;
DiodonController* diodon_controller_new (void);
DiodonController* diodon_controller_construct (GType object_type);
void diodon_controller_init (DiodonController* self);
void diodon_controller_select_item (DiodonController* self, DiodonIClipboardItem* item);
void diodon_controller_execute_paste (DiodonController* self, DiodonIClipboardItem* item);
void diodon_controller_remove_item (DiodonController* self, DiodonIClipboardItem* item);
void diodon_controller_add_as_text_item (DiodonController* self, DiodonClipboardType type, const gchar* text);
void diodon_controller_add_item (DiodonController* self, DiodonIClipboardItem* item);
GeeList* diodon_controller_get_items (DiodonController* self);
DiodonIClipboardItem* diodon_controller_get_current_item (DiodonController* self, DiodonClipboardType type);
GeeList* diodon_controller_get_items_by_cateogry (DiodonController* self, DiodonClipboardCategory category);
DiodonIClipboardItem* diodon_controller_get_item_by_checksum (DiodonController* self, const gchar* checksum);
DiodonConfigurationModel* diodon_controller_get_configuration (DiodonController* self);
GType diodon_keybinding_manager_get_type (void) G_GNUC_CONST;
DiodonKeybindingManager* diodon_controller_get_keybinding_manager (DiodonController* self);
void diodon_controller_show_history (DiodonController* self);
void diodon_controller_show_preferences (DiodonController* self);
void diodon_controller_clear (DiodonController* self);
GtkMenu* diodon_controller_get_menu (DiodonController* self);
void diodon_controller_quit (DiodonController* self);
GType diodon_file_clipboard_item_get_type (void) G_GNUC_CONST;
DiodonFileClipboardItem* diodon_file_clipboard_item_new (DiodonClipboardType clipboard_type, const gchar* data, GError** error);
DiodonFileClipboardItem* diodon_file_clipboard_item_construct (GType object_type, DiodonClipboardType clipboard_type, const gchar* data, GError** error);
GType diodon_image_clipboard_item_get_type (void) G_GNUC_CONST;
DiodonImageClipboardItem* diodon_image_clipboard_item_new (DiodonClipboardType clipboard_type, const gchar* data, GError** error);
DiodonImageClipboardItem* diodon_image_clipboard_item_construct (GType object_type, DiodonClipboardType clipboard_type, const gchar* data, GError** error);
DiodonImageClipboardItem* diodon_image_clipboard_item_new_with_image (DiodonClipboardType clipboard_type, GdkPixbuf* pixbuf, GError** error);
DiodonImageClipboardItem* diodon_image_clipboard_item_construct_with_image (GType object_type, DiodonClipboardType clipboard_type, GdkPixbuf* pixbuf, GError** error);
void diodon_keybinding_manager_init (DiodonKeybindingManager* self);
void diodon_keybinding_manager_bind (DiodonKeybindingManager* self, const gchar* accelerator, DiodonKeybindingManagerKeybindingHandlerFunc handler, void* handler_target);
void diodon_keybinding_manager_unbind (DiodonKeybindingManager* self, const gchar* accelerator);
void diodon_keybinding_manager_press (DiodonKeybindingManager* self, const gchar* accelerator);
void diodon_keybinding_manager_release (DiodonKeybindingManager* self, const gchar* accelerator);
guint diodon_keybinding_manager_remove_lockmodifiers (guint state);
DiodonKeybindingManager* diodon_keybinding_manager_new (void);
DiodonKeybindingManager* diodon_keybinding_manager_construct (GType object_type);
GType diodon_text_clipboard_item_get_type (void) G_GNUC_CONST;
DiodonTextClipboardItem* diodon_text_clipboard_item_new (DiodonClipboardType clipboard_type, const gchar* data);
DiodonTextClipboardItem* diodon_text_clipboard_item_construct (GType object_type, DiodonClipboardType clipboard_type, const gchar* data);
GType diodon_utility_get_type (void) G_GNUC_CONST;
gchar* diodon_utility_get_user_data_dir (void);
gboolean diodon_utility_make_directory_with_parents (const gchar* directory);
DiodonUtility* diodon_utility_construct (GType object_type);


G_END_DECLS

#endif