/* Generated by Pyrex 0.9.5.1a on Mon Oct 22 21:59:51 2007 */

#include "Python.h"
#include "structmember.h"
#ifndef PY_LONG_LONG
  #define PY_LONG_LONG LONG_LONG
#endif
#ifdef __cplusplus
#define __PYX_EXTERN_C extern "C"
#else
#define __PYX_EXTERN_C extern
#endif
__PYX_EXTERN_C double pow(double, double);
#include "string.h"


typedef struct {PyObject **p; char *s;} __Pyx_InternTabEntry; /*proto*/
typedef struct {PyObject **p; char *s; long n;} __Pyx_StringTabEntry; /*proto*/

static PyObject *__pyx_m;
static PyObject *__pyx_b;
static int __pyx_lineno;
static char *__pyx_filename;
static char **__pyx_f;

static int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed, char *name); /*proto*/

static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/

static void __Pyx_WriteUnraisable(char *name); /*proto*/

static int __Pyx_InternStrings(__Pyx_InternTabEntry *t); /*proto*/

static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/

static void __Pyx_AddTraceback(char *funcname); /*proto*/

/* Declarations from compizconfig */

enum __pyx_t_12compizconfig_CCSSettingType {
  __pyx_e_12compizconfig_TypeBool,
  __pyx_e_12compizconfig_TypeInt,
  __pyx_e_12compizconfig_TypeFloat,
  __pyx_e_12compizconfig_TypeString,
  __pyx_e_12compizconfig_TypeAction,
  __pyx_e_12compizconfig_TypeColor,
  __pyx_e_12compizconfig_TypeMatch,
  __pyx_e_12compizconfig_TypeList,
  __pyx_e_12compizconfig_TypeNum
};

enum __pyx_t_12compizconfig_CCSPluginConflictType {
  __pyx_e_12compizconfig_ConflictRequiresPlugin,
  __pyx_e_12compizconfig_ConflictRequiresFeature,
  __pyx_e_12compizconfig_ConflictFeature,
  __pyx_e_12compizconfig_ConflictPlugin,
  __pyx_e_12compizconfig_ConflictFeatureNeeded,
  __pyx_e_12compizconfig_ConflictPluginNeeded,
  __pyx_e_12compizconfig_ConflictPluginError
};

struct __pyx_t_12compizconfig_CCSList {
  void (*data);
  struct __pyx_t_12compizconfig_CCSList (*next);
};

struct __pyx_t_12compizconfig_CCSBackendInfo {
  char (*name);
  char (*shortDesc);
  char (*longDesc);
  unsigned int integrationSupport;
  unsigned int profileSupport;
};

struct __pyx_t_12compizconfig_CCSSettingActionValue {
  int button;
  unsigned int buttonModMask;
  int keysym;
  unsigned int keyModMask;
  unsigned int onBell;
  int edgeMask;
  int edgeButton;
};

struct __pyx_t_12compizconfig_CCSSettingColorValueColor {
  unsigned short red;
  unsigned short green;
  unsigned short blue;
  unsigned short alpha;
};

union __pyx_t_12compizconfig_CCSSettingColorValue {
  struct __pyx_t_12compizconfig_CCSSettingColorValueColor color;
  unsigned short (array[4]);
};

union __pyx_t_12compizconfig_CCSSettingValueUnion {
  unsigned int asBool;
  int asInt;
  float asFloat;
  char (*asString);
  char (*asMatch);
  struct __pyx_t_12compizconfig_CCSSettingActionValue asAction;
  union __pyx_t_12compizconfig_CCSSettingColorValue asColor;
  struct __pyx_t_12compizconfig_CCSList (*asList);
};

struct __pyx_t_12compizconfig_CCSIntDesc {
  int value;
  char (*name);
};

struct __pyx_t_12compizconfig_CCSSettingIntInfo {
  int min;
  int max;
  struct __pyx_t_12compizconfig_CCSList (*desc);
};

struct __pyx_t_12compizconfig_CCSSettingFloatInfo {
  float min;
  float max;
  float precision;
};

struct __pyx_t_12compizconfig_CCSSettingActionInfo {
  unsigned int key;
  unsigned int button;
  unsigned int bell;
  unsigned int edge;
};

struct __pyx_t_12compizconfig_CCSSettingActionArrayInfo {
  unsigned int (array[4]);
};

struct __pyx_t_12compizconfig_CCSSettingListInfo {
  enum __pyx_t_12compizconfig_CCSSettingType listType;
  void (*listInfo);
};

union __pyx_t_12compizconfig_CCSSettingInfo {
  struct __pyx_t_12compizconfig_CCSSettingIntInfo forInt;
  struct __pyx_t_12compizconfig_CCSSettingFloatInfo forFloat;
  struct __pyx_t_12compizconfig_CCSSettingActionInfo forAction;
  struct __pyx_t_12compizconfig_CCSSettingActionArrayInfo forActionAsArray;
  struct __pyx_t_12compizconfig_CCSSettingListInfo forList;
};

struct __pyx_t_12compizconfig_CCSSettingValue {
  union __pyx_t_12compizconfig_CCSSettingValueUnion value;
  void (*parent);
  unsigned int isListChild;
};

struct __pyx_t_12compizconfig_CCSGroup {
  char (*name);
  struct __pyx_t_12compizconfig_CCSList (*subGroups);
};

struct __pyx_t_12compizconfig_CCSSubGroup {
  char (*name);
  struct __pyx_t_12compizconfig_CCSList (*settings);
};

struct __pyx_t_12compizconfig_CCSPluginCategory {
  char (*name);
  char (*shortDesc);
  char (*longDesc);
  struct __pyx_t_12compizconfig_CCSList (*plugins);
};

struct __pyx_t_12compizconfig_CCSContext {
  struct __pyx_t_12compizconfig_CCSList (*plugins);
  struct __pyx_t_12compizconfig_CCSPluginCategory (*categories);
  void (*priv);
  void (*ccsPrivate);
  struct __pyx_t_12compizconfig_CCSList (*changedSettings);
  unsigned int (*screens);
  unsigned int numScreens;
};

struct __pyx_t_12compizconfig_CCSPlugin {
  char (*name);
  char (*shortDesc);
  char (*longDesc);
  char (*hints);
  char (*category);
  struct __pyx_t_12compizconfig_CCSList (*loadAfter);
  struct __pyx_t_12compizconfig_CCSList (*loadBefore);
  struct __pyx_t_12compizconfig_CCSList (*requiresPlugin);
  struct __pyx_t_12compizconfig_CCSList (*conflictPlugin);
  struct __pyx_t_12compizconfig_CCSList (*conflictFeature);
  struct __pyx_t_12compizconfig_CCSList (*providesFeature);
  struct __pyx_t_12compizconfig_CCSList (*requiresFeature);
  void (*priv);
  struct __pyx_t_12compizconfig_CCSContext (*context);
  void (*ccsPrivate);
};

struct __pyx_t_12compizconfig_CCSSetting {
  char (*name);
  char (*shortDesc);
  char (*longDesc);
  enum __pyx_t_12compizconfig_CCSSettingType type;
  unsigned int isScreen;
  unsigned int screenNum;
  union __pyx_t_12compizconfig_CCSSettingInfo info;
  char (*group);
  char (*subGroup);
  char (*hints);
  struct __pyx_t_12compizconfig_CCSSettingValue defaultValue;
  struct __pyx_t_12compizconfig_CCSSettingValue (*value);
  unsigned int isDefault;
  struct __pyx_t_12compizconfig_CCSPlugin (*parent);
  void (*priv);
};

struct __pyx_t_12compizconfig_CCSPluginConflict {
  char (*value);
  enum __pyx_t_12compizconfig_CCSPluginConflictType type;
  struct __pyx_t_12compizconfig_CCSList (*plugins);
};


struct __pyx_obj_12compizconfig_Context {
  PyObject_HEAD
  struct __pyx_t_12compizconfig_CCSContext (*ccsContext);
  PyObject *plugins;
  PyObject *categories;
  PyObject *profiles;
  PyObject *currentProfile;
  PyObject *backends;
  PyObject *currentBackend;
  int nScreens;
  unsigned int integration;
};


struct __pyx_obj_12compizconfig_Plugin {
  PyObject_HEAD
  struct __pyx_t_12compizconfig_CCSPlugin (*ccsPlugin);
  struct __pyx_obj_12compizconfig_Context *context;
  PyObject *screens;
  PyObject *display;
  PyObject *groups;
  PyObject *loaded;
  PyObject *ranking;
};


struct __pyx_obj_12compizconfig_Setting {
  PyObject_HEAD
  struct __pyx_t_12compizconfig_CCSSetting (*ccsSetting);
  PyObject *info;
  struct __pyx_obj_12compizconfig_Plugin *plugin;
};


struct __pyx_obj_12compizconfig_SSGroup {
  PyObject_HEAD
  PyObject *display;
  PyObject *screens;
};


struct __pyx_obj_12compizconfig_Profile {
  PyObject_HEAD
  struct __pyx_obj_12compizconfig_Context *context;
  char (*name);
};


struct __pyx_obj_12compizconfig_Backend {
  PyObject_HEAD
  struct __pyx_obj_12compizconfig_Context *context;
  char (*name);
  char (*shortDesc);
  char (*longDesc);
  unsigned int profileSupport;
  unsigned int integrationSupport;
};

static PyTypeObject *__pyx_ptype_12compizconfig_Context = 0;
static PyTypeObject *__pyx_ptype_12compizconfig_Plugin = 0;
static PyTypeObject *__pyx_ptype_12compizconfig_Setting = 0;
static PyTypeObject *__pyx_ptype_12compizconfig_SSGroup = 0;
static PyTypeObject *__pyx_ptype_12compizconfig_Profile = 0;
static PyTypeObject *__pyx_ptype_12compizconfig_Backend = 0;
static PyObject *__pyx_k17;
static PyObject *__pyx_k18;
static PyObject *__pyx_k19;
static PyObject *__pyx_k20;
static PyObject *__pyx_k21;
static PyObject *__pyx_k22;
__PYX_EXTERN_C void (ccsSetBasicMetadata(unsigned int )); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSContext (*(ccsContextNew(unsigned int (*),unsigned int ))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSContext (*(ccsEmptyContextNew(unsigned int (*),unsigned int ))); /*proto*/
__PYX_EXTERN_C void (ccsContextDestroy(struct __pyx_t_12compizconfig_CCSContext (*))); /*proto*/
__PYX_EXTERN_C unsigned int (ccsLoadPlugin(struct __pyx_t_12compizconfig_CCSContext (*),char (*))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSPlugin (*(ccsFindPlugin(struct __pyx_t_12compizconfig_CCSContext (*),char (*)))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSSetting (*(ccsFindSetting(struct __pyx_t_12compizconfig_CCSPlugin (*),char (*),unsigned int ,int ))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSList (*(ccsGetPluginSettings(struct __pyx_t_12compizconfig_CCSPlugin (*)))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSList (*(ccsGetPluginGroups(struct __pyx_t_12compizconfig_CCSPlugin (*)))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSList (*(ccsEdgesToStringList(struct __pyx_t_12compizconfig_CCSSettingActionValue (*)))); /*proto*/
__PYX_EXTERN_C char (*(ccsKeyBindingToString(struct __pyx_t_12compizconfig_CCSSettingActionValue (*)))); /*proto*/
__PYX_EXTERN_C char (*(ccsButtonBindingToString(struct __pyx_t_12compizconfig_CCSSettingActionValue (*)))); /*proto*/
__PYX_EXTERN_C unsigned int (ccsStringToKeyBinding(char (*),struct __pyx_t_12compizconfig_CCSSettingActionValue (*))); /*proto*/
__PYX_EXTERN_C unsigned int (ccsStringToButtonBinding(char (*),struct __pyx_t_12compizconfig_CCSSettingActionValue (*))); /*proto*/
__PYX_EXTERN_C void (ccsStringListToEdges(struct __pyx_t_12compizconfig_CCSList (*),struct __pyx_t_12compizconfig_CCSSettingActionValue (*))); /*proto*/
__PYX_EXTERN_C unsigned int (ccsSetValue(struct __pyx_t_12compizconfig_CCSSetting (*),struct __pyx_t_12compizconfig_CCSSettingValue (*))); /*proto*/
__PYX_EXTERN_C void (ccsFreeSettingValue(struct __pyx_t_12compizconfig_CCSSettingValue (*))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSList (*(ccsSettingValueListAppend(struct __pyx_t_12compizconfig_CCSList (*),struct __pyx_t_12compizconfig_CCSSettingValue (*)))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSList (*(ccsSettingListFree(struct __pyx_t_12compizconfig_CCSList (*),unsigned int ))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSList (*(ccsGetExistingProfiles(struct __pyx_t_12compizconfig_CCSContext (*)))); /*proto*/
__PYX_EXTERN_C void (ccsDeleteProfile(struct __pyx_t_12compizconfig_CCSContext (*),char (*))); /*proto*/
__PYX_EXTERN_C void (ccsSetProfile(struct __pyx_t_12compizconfig_CCSContext (*),char (*))); /*proto*/
__PYX_EXTERN_C char (*(ccsGetProfile(struct __pyx_t_12compizconfig_CCSContext (*)))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSList (*(ccsGetExistingBackends(void))); /*proto*/
__PYX_EXTERN_C unsigned int (ccsSetBackend(struct __pyx_t_12compizconfig_CCSContext (*),char (*))); /*proto*/
__PYX_EXTERN_C char (*(ccsGetBackend(struct __pyx_t_12compizconfig_CCSContext (*)))); /*proto*/
__PYX_EXTERN_C void (ccsSetPluginListAutoSort(struct __pyx_t_12compizconfig_CCSContext (*),unsigned int )); /*proto*/
__PYX_EXTERN_C unsigned int (ccsGetPluginListAutoSort(struct __pyx_t_12compizconfig_CCSContext (*))); /*proto*/
__PYX_EXTERN_C void (ccsSetIntegrationEnabled(struct __pyx_t_12compizconfig_CCSContext (*),unsigned int )); /*proto*/
__PYX_EXTERN_C unsigned int (ccsGetIntegrationEnabled(struct __pyx_t_12compizconfig_CCSContext (*))); /*proto*/
__PYX_EXTERN_C void (ccsReadSettings(struct __pyx_t_12compizconfig_CCSContext (*))); /*proto*/
__PYX_EXTERN_C void (ccsWriteSettings(struct __pyx_t_12compizconfig_CCSContext (*))); /*proto*/
__PYX_EXTERN_C void (ccsWriteChangedSettings(struct __pyx_t_12compizconfig_CCSContext (*))); /*proto*/
__PYX_EXTERN_C void (ccsResetToDefault(struct __pyx_t_12compizconfig_CCSSetting (*))); /*proto*/
__PYX_EXTERN_C void (ccsProcessEvents(struct __pyx_t_12compizconfig_CCSContext (*),unsigned int )); /*proto*/
__PYX_EXTERN_C unsigned int (ccsExportToFile(struct __pyx_t_12compizconfig_CCSContext (*),char (*))); /*proto*/
__PYX_EXTERN_C unsigned int (ccsImportFromFile(struct __pyx_t_12compizconfig_CCSContext (*),char (*),unsigned int )); /*proto*/
__PYX_EXTERN_C unsigned int (ccsSettingIsReadOnly(struct __pyx_t_12compizconfig_CCSSetting (*))); /*proto*/
__PYX_EXTERN_C unsigned int (ccsSettingIsIntegrated(struct __pyx_t_12compizconfig_CCSSetting (*))); /*proto*/
__PYX_EXTERN_C void (ccsPluginConflictListFree(struct __pyx_t_12compizconfig_CCSList (*),unsigned int )); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSList (*(ccsCanEnablePlugin(struct __pyx_t_12compizconfig_CCSContext (*),struct __pyx_t_12compizconfig_CCSPlugin (*)))); /*proto*/
__PYX_EXTERN_C struct __pyx_t_12compizconfig_CCSList (*(ccsCanDisablePlugin(struct __pyx_t_12compizconfig_CCSContext (*),struct __pyx_t_12compizconfig_CCSPlugin (*)))); /*proto*/
__PYX_EXTERN_C unsigned int (ccsPluginSetActive(struct __pyx_t_12compizconfig_CCSPlugin (*),unsigned int )); /*proto*/
__PYX_EXTERN_C unsigned int (ccsPluginIsActive(struct __pyx_t_12compizconfig_CCSContext (*),char (*))); /*proto*/
static enum __pyx_t_12compizconfig_CCSSettingType (__pyx_f_12compizconfig_GetType(struct __pyx_t_12compizconfig_CCSSettingValue (*))); /*proto*/
static struct __pyx_t_12compizconfig_CCSList (*(__pyx_f_12compizconfig_ListToStringList(PyObject *))); /*proto*/
static PyObject *(__pyx_f_12compizconfig_StringListToList(struct __pyx_t_12compizconfig_CCSList (*))); /*proto*/
static struct __pyx_t_12compizconfig_CCSList (*(__pyx_f_12compizconfig_ListToSettingList(PyObject *))); /*proto*/
static PyObject *(__pyx_f_12compizconfig_SettingListToList(struct __pyx_obj_12compizconfig_Context *,struct __pyx_t_12compizconfig_CCSList (*))); /*proto*/
static PyObject *(__pyx_f_12compizconfig_IntDescListToDict(struct __pyx_t_12compizconfig_CCSList (*))); /*proto*/
static struct __pyx_t_12compizconfig_CCSSettingValue (*(__pyx_f_12compizconfig_EncodeValue(PyObject *,struct __pyx_t_12compizconfig_CCSSetting (*),unsigned int ))); /*proto*/
static PyObject *(__pyx_f_12compizconfig_DecodeValue(struct __pyx_t_12compizconfig_CCSSettingValue (*))); /*proto*/


/* Implementation of compizconfig */


static PyObject *__pyx_n_SettingTypeString;
static PyObject *__pyx_n_ConflictTypeString;
static PyObject *__pyx_n_ProcessEventsNoGlibMainLoopMask;
static PyObject *__pyx_n_Bool;
static PyObject *__pyx_n_Int;
static PyObject *__pyx_n_Float;
static PyObject *__pyx_n_String;
static PyObject *__pyx_n_Action;
static PyObject *__pyx_n_Color;
static PyObject *__pyx_n_Match;
static PyObject *__pyx_n_List;
static PyObject *__pyx_n_Invalid;
static PyObject *__pyx_n_RequiresPlugin;
static PyObject *__pyx_n_RequiresFeature;
static PyObject *__pyx_n_ConflictFeature;
static PyObject *__pyx_n_ConflictPlugin;
static PyObject *__pyx_n_FeatureNeeded;
static PyObject *__pyx_n_PluginNeeded;
static PyObject *__pyx_n_PluginError;
static PyObject *__pyx_n_False;
static PyObject *__pyx_n_True;

static enum __pyx_t_12compizconfig_CCSSettingType __pyx_f_12compizconfig_GetType(struct __pyx_t_12compizconfig_CCSSettingValue (*__pyx_v_value)) {
  enum __pyx_t_12compizconfig_CCSSettingType __pyx_r;
  unsigned int __pyx_1;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":286 */
  __pyx_1 = __pyx_v_value->isListChild;
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":287 */
    __pyx_r = ((struct __pyx_t_12compizconfig_CCSSetting (*))__pyx_v_value->parent)->info.forList.listType;
    goto __pyx_L0;
    goto __pyx_L2;
  }
  /*else*/ {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":289 */
    __pyx_r = ((struct __pyx_t_12compizconfig_CCSSetting (*))__pyx_v_value->parent)->type;
    goto __pyx_L0;
  }
  __pyx_L2:;

  __pyx_L0:;
  return __pyx_r;
}

static PyObject *__pyx_n_len;

static struct __pyx_t_12compizconfig_CCSList (*__pyx_f_12compizconfig_ListToStringList(PyObject *__pyx_v_list)) {
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_listStart);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_stringList);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_prev);
  PyObject *__pyx_v_l;
  struct __pyx_t_12compizconfig_CCSList (*__pyx_r);
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  int __pyx_4;
  char (*__pyx_5);
  Py_INCREF(__pyx_v_list);
  __pyx_v_l = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":292 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_len); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; goto __pyx_L1;}
  __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; goto __pyx_L1;}
  Py_INCREF(__pyx_v_list);
  PyTuple_SET_ITEM(__pyx_2, 0, __pyx_v_list);
  __pyx_3 = PyObject_CallObject(__pyx_1, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  __pyx_1 = PyInt_FromLong(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; goto __pyx_L1;}
  if (PyObject_Cmp(__pyx_3, __pyx_1, &__pyx_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; goto __pyx_L1;}
  __pyx_4 = __pyx_4 <= 0;
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  if (__pyx_4) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":293 */
    __pyx_r = NULL;
    goto __pyx_L0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":298 */
  __pyx_v_listStart = ((struct __pyx_t_12compizconfig_CCSList (*))malloc((sizeof(struct __pyx_t_12compizconfig_CCSList ))));

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":299 */
  __pyx_2 = PyInt_FromLong(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; goto __pyx_L1;}
  __pyx_3 = PyObject_GetItem(__pyx_v_list, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  __pyx_5 = PyString_AsString(__pyx_3); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; goto __pyx_L1;}
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  __pyx_v_listStart->data = ((char (*))strdup(__pyx_5));

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":300 */
  __pyx_v_listStart->next = NULL;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":301 */
  __pyx_v_prev = __pyx_v_listStart;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":303 */
  __pyx_1 = PySequence_GetSlice(__pyx_v_list, 1, 0x7fffffff); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; goto __pyx_L1;}
  __pyx_2 = PyObject_GetIter(__pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  for (;;) {
    __pyx_3 = PyIter_Next(__pyx_2);
    if (!__pyx_3) {
      if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; goto __pyx_L1;}
      break;
    }
    Py_DECREF(__pyx_v_l);
    __pyx_v_l = __pyx_3;
    __pyx_3 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":304 */
    __pyx_v_stringList = ((struct __pyx_t_12compizconfig_CCSList (*))malloc((sizeof(struct __pyx_t_12compizconfig_CCSList ))));

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":305 */
    __pyx_5 = PyString_AsString(__pyx_v_l); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 305; goto __pyx_L1;}
    __pyx_v_stringList->data = ((char (*))strdup(__pyx_5));

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":306 */
    __pyx_v_stringList->next = NULL;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":307 */
    __pyx_v_prev->next = __pyx_v_stringList;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":308 */
    __pyx_v_prev = __pyx_v_stringList;
  }
  Py_DECREF(__pyx_2); __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":310 */
  __pyx_r = __pyx_v_listStart;
  goto __pyx_L0;

  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  __Pyx_WriteUnraisable("compizconfig.ListToStringList");
  __pyx_L0:;
  Py_DECREF(__pyx_v_l);
  Py_DECREF(__pyx_v_list);
  return __pyx_r;
}

static PyObject *__pyx_n_append;

static PyObject *__pyx_f_12compizconfig_StringListToList(struct __pyx_t_12compizconfig_CCSList (*__pyx_v_stringList)) {
  PyObject *__pyx_v_list;
  PyObject *__pyx_v_item;
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  int __pyx_2;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  __pyx_v_list = Py_None; Py_INCREF(Py_None);
  __pyx_v_item = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":313 */
  __pyx_1 = PyList_New(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; goto __pyx_L1;}
  Py_DECREF(__pyx_v_list);
  __pyx_v_list = __pyx_1;
  __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":314 */
  while (1) {
    __pyx_2 = (__pyx_v_stringList != 0);
    if (!__pyx_2) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":315 */
    __pyx_1 = PyString_FromString(((char (*))__pyx_v_stringList->data)); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; goto __pyx_L1;}
    Py_DECREF(__pyx_v_item);
    __pyx_v_item = __pyx_1;
    __pyx_1 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":316 */
    __pyx_1 = PyObject_GetAttr(__pyx_v_list, __pyx_n_append); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; goto __pyx_L1;}
    __pyx_3 = PyTuple_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; goto __pyx_L1;}
    Py_INCREF(__pyx_v_item);
    PyTuple_SET_ITEM(__pyx_3, 0, __pyx_v_item);
    __pyx_4 = PyObject_CallObject(__pyx_1, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; goto __pyx_L1;}
    Py_DECREF(__pyx_1); __pyx_1 = 0;
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":317 */
    __pyx_v_stringList = __pyx_v_stringList->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":318 */
  Py_INCREF(__pyx_v_list);
  __pyx_r = __pyx_v_list;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.StringListToList");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_list);
  Py_DECREF(__pyx_v_item);
  return __pyx_r;
}

static struct __pyx_t_12compizconfig_CCSList (*__pyx_f_12compizconfig_ListToSettingList(PyObject *__pyx_v_list)) {
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_listStart);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_settingList);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_prev);
  struct __pyx_obj_12compizconfig_Setting *__pyx_v_setting;
  PyObject *__pyx_v_l;
  struct __pyx_t_12compizconfig_CCSList (*__pyx_r);
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  int __pyx_4;
  Py_INCREF(__pyx_v_list);
  __pyx_v_setting = ((struct __pyx_obj_12compizconfig_Setting *)Py_None); Py_INCREF(Py_None);
  __pyx_v_l = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":321 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_len); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; goto __pyx_L1;}
  __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; goto __pyx_L1;}
  Py_INCREF(__pyx_v_list);
  PyTuple_SET_ITEM(__pyx_2, 0, __pyx_v_list);
  __pyx_3 = PyObject_CallObject(__pyx_1, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  __pyx_1 = PyInt_FromLong(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; goto __pyx_L1;}
  if (PyObject_Cmp(__pyx_3, __pyx_1, &__pyx_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; goto __pyx_L1;}
  __pyx_4 = __pyx_4 <= 0;
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  if (__pyx_4) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":322 */
    __pyx_r = NULL;
    goto __pyx_L0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":329 */
  __pyx_v_listStart = ((struct __pyx_t_12compizconfig_CCSList (*))malloc((sizeof(struct __pyx_t_12compizconfig_CCSList ))));

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":330 */
  __pyx_2 = PyInt_FromLong(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; goto __pyx_L1;}
  __pyx_3 = PyObject_GetItem(__pyx_v_list, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  Py_INCREF(((PyObject *)((struct __pyx_obj_12compizconfig_Setting *)__pyx_3)));
  Py_DECREF(((PyObject *)__pyx_v_setting));
  __pyx_v_setting = ((struct __pyx_obj_12compizconfig_Setting *)__pyx_3);
  Py_DECREF(__pyx_3); __pyx_3 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":331 */
  __pyx_v_listStart->data = ((struct __pyx_t_12compizconfig_CCSSetting (*))__pyx_v_setting->ccsSetting);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":332 */
  __pyx_v_listStart->next = NULL;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":333 */
  __pyx_v_prev = __pyx_v_listStart;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":335 */
  __pyx_1 = PySequence_GetSlice(__pyx_v_list, 1, 0x7fffffff); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; goto __pyx_L1;}
  __pyx_2 = PyObject_GetIter(__pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  for (;;) {
    __pyx_3 = PyIter_Next(__pyx_2);
    if (!__pyx_3) {
      if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; goto __pyx_L1;}
      break;
    }
    Py_DECREF(__pyx_v_l);
    __pyx_v_l = __pyx_3;
    __pyx_3 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":336 */
    __pyx_v_settingList = ((struct __pyx_t_12compizconfig_CCSList (*))malloc((sizeof(struct __pyx_t_12compizconfig_CCSList ))));

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":337 */
    Py_INCREF(((PyObject *)((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_l)));
    Py_DECREF(((PyObject *)__pyx_v_setting));
    __pyx_v_setting = ((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_l);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":338 */
    __pyx_v_settingList->data = ((struct __pyx_t_12compizconfig_CCSSetting (*))__pyx_v_setting->ccsSetting);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":339 */
    __pyx_v_settingList->next = NULL;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":340 */
    __pyx_v_prev->next = __pyx_v_settingList;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":341 */
    __pyx_v_prev = __pyx_v_settingList;
  }
  Py_DECREF(__pyx_2); __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":343 */
  __pyx_r = __pyx_v_listStart;
  goto __pyx_L0;

  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  __Pyx_WriteUnraisable("compizconfig.ListToSettingList");
  __pyx_L0:;
  Py_DECREF(__pyx_v_setting);
  Py_DECREF(__pyx_v_l);
  Py_DECREF(__pyx_v_list);
  return __pyx_r;
}

static PyObject *__pyx_n_Plugins;
static PyObject *__pyx_n_Screens;
static PyObject *__pyx_n_Display;

static PyObject *__pyx_f_12compizconfig_SettingListToList(struct __pyx_obj_12compizconfig_Context *__pyx_v_context,struct __pyx_t_12compizconfig_CCSList (*__pyx_v_settingList)) {
  struct __pyx_t_12compizconfig_CCSSetting (*__pyx_v_ccsSetting);
  PyObject *__pyx_v_list;
  PyObject *__pyx_v_setting;
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  int __pyx_2;
  unsigned int __pyx_3;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  Py_INCREF(__pyx_v_context);
  __pyx_v_list = Py_None; Py_INCREF(Py_None);
  __pyx_v_setting = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":347 */
  __pyx_1 = PyList_New(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; goto __pyx_L1;}
  Py_DECREF(__pyx_v_list);
  __pyx_v_list = __pyx_1;
  __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":349 */
  while (1) {
    __pyx_2 = (__pyx_v_settingList != 0);
    if (!__pyx_2) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":350 */
    __pyx_v_ccsSetting = ((struct __pyx_t_12compizconfig_CCSSetting (*))__pyx_v_settingList->data);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":351 */
    Py_INCREF(Py_None);
    Py_DECREF(__pyx_v_setting);
    __pyx_v_setting = Py_None;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":352 */
    __pyx_3 = __pyx_v_ccsSetting->isScreen;
    if (__pyx_3) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":353 */
      __pyx_1 = PyObject_GetAttr(((PyObject *)__pyx_v_context), __pyx_n_Plugins); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; goto __pyx_L1;}
      __pyx_4 = PyString_FromString(__pyx_v_ccsSetting->parent->name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; goto __pyx_L1;}
      __pyx_5 = PyObject_GetItem(__pyx_1, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; goto __pyx_L1;}
      Py_DECREF(__pyx_1); __pyx_1 = 0;
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      __pyx_1 = PyObject_GetAttr(__pyx_5, __pyx_n_Screens); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      __pyx_4 = PyLong_FromUnsignedLong(__pyx_v_ccsSetting->screenNum); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; goto __pyx_L1;}
      __pyx_5 = PyObject_GetItem(__pyx_1, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; goto __pyx_L1;}
      Py_DECREF(__pyx_1); __pyx_1 = 0;
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      __pyx_1 = PyString_FromString(__pyx_v_ccsSetting->name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; goto __pyx_L1;}
      __pyx_4 = PyObject_GetItem(__pyx_5, __pyx_1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      Py_DECREF(__pyx_1); __pyx_1 = 0;
      Py_DECREF(__pyx_v_setting);
      __pyx_v_setting = __pyx_4;
      __pyx_4 = 0;
      goto __pyx_L4;
    }
    /*else*/ {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":355 */
      __pyx_5 = PyObject_GetAttr(((PyObject *)__pyx_v_context), __pyx_n_Plugins); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L1;}
      __pyx_1 = PyString_FromString(__pyx_v_ccsSetting->parent->name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L1;}
      __pyx_4 = PyObject_GetItem(__pyx_5, __pyx_1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      Py_DECREF(__pyx_1); __pyx_1 = 0;
      __pyx_5 = PyObject_GetAttr(__pyx_4, __pyx_n_Display); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L1;}
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      __pyx_1 = PyString_FromString(__pyx_v_ccsSetting->name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L1;}
      __pyx_4 = PyObject_GetItem(__pyx_5, __pyx_1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      Py_DECREF(__pyx_1); __pyx_1 = 0;
      Py_DECREF(__pyx_v_setting);
      __pyx_v_setting = __pyx_4;
      __pyx_4 = 0;
    }
    __pyx_L4:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":356 */
    __pyx_5 = PyObject_GetAttr(__pyx_v_list, __pyx_n_append); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; goto __pyx_L1;}
    __pyx_1 = PyTuple_New(1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; goto __pyx_L1;}
    Py_INCREF(__pyx_v_setting);
    PyTuple_SET_ITEM(__pyx_1, 0, __pyx_v_setting);
    __pyx_4 = PyObject_CallObject(__pyx_5, __pyx_1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    Py_DECREF(__pyx_1); __pyx_1 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":357 */
    __pyx_v_settingList = __pyx_v_settingList->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":359 */
  Py_INCREF(__pyx_v_list);
  __pyx_r = __pyx_v_list;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  __Pyx_AddTraceback("compizconfig.SettingListToList");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_list);
  Py_DECREF(__pyx_v_setting);
  Py_DECREF(__pyx_v_context);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_IntDescListToDict(struct __pyx_t_12compizconfig_CCSList (*__pyx_v_intDescList)) {
  struct __pyx_t_12compizconfig_CCSIntDesc (*__pyx_v_desc);
  PyObject *__pyx_v_dict;
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  int __pyx_2;
  PyObject *__pyx_3 = 0;
  __pyx_v_dict = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":363 */
  __pyx_1 = PyDict_New(); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; goto __pyx_L1;}
  Py_DECREF(__pyx_v_dict);
  __pyx_v_dict = __pyx_1;
  __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":364 */
  while (1) {
    __pyx_2 = (__pyx_v_intDescList != 0);
    if (!__pyx_2) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":365 */
    __pyx_v_desc = ((struct __pyx_t_12compizconfig_CCSIntDesc (*))__pyx_v_intDescList->data);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":366 */
    __pyx_1 = PyInt_FromLong(__pyx_v_desc->value); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; goto __pyx_L1;}
    __pyx_3 = PyString_FromString(__pyx_v_desc->name); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; goto __pyx_L1;}
    if (PyObject_SetItem(__pyx_v_dict, __pyx_3, __pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    Py_DECREF(__pyx_1); __pyx_1 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":367 */
    __pyx_v_intDescList = __pyx_v_intDescList->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":368 */
  Py_INCREF(__pyx_v_dict);
  __pyx_r = __pyx_v_dict;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_3);
  __Pyx_AddTraceback("compizconfig.IntDescListToDict");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_dict);
  return __pyx_r;
}

static struct __pyx_t_12compizconfig_CCSSettingValue (*__pyx_f_12compizconfig_EncodeValue(PyObject *__pyx_v_data,struct __pyx_t_12compizconfig_CCSSetting (*__pyx_v_setting),unsigned int __pyx_v_isListChild)) {
  struct __pyx_t_12compizconfig_CCSSettingValue (*__pyx_v_bv);
  enum __pyx_t_12compizconfig_CCSSettingType __pyx_v_t;
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_l);
  PyObject *__pyx_v_item;
  struct __pyx_t_12compizconfig_CCSSettingValue (*__pyx_r);
  unsigned int __pyx_1;
  int __pyx_2;
  char (*__pyx_3);
  float __pyx_4;
  PyObject *__pyx_5 = 0;
  PyObject *__pyx_6 = 0;
  unsigned short __pyx_7;
  Py_INCREF(__pyx_v_data);
  __pyx_v_item = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":374 */
  __pyx_v_bv = ((struct __pyx_t_12compizconfig_CCSSettingValue (*))malloc((sizeof(struct __pyx_t_12compizconfig_CCSSettingValue ))));

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":375 */
  memset(__pyx_v_bv,0,(sizeof(struct __pyx_t_12compizconfig_CCSSettingValue )));

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":376 */
  __pyx_v_bv->isListChild = __pyx_v_isListChild;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":377 */
  __pyx_v_bv->parent = __pyx_v_setting;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":378 */
  __pyx_1 = __pyx_v_isListChild;
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":379 */
    __pyx_v_t = __pyx_v_setting->info.forList.listType;
    goto __pyx_L2;
  }
  /*else*/ {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":381 */
    __pyx_v_t = __pyx_v_setting->type;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":382 */
  __pyx_2 = (__pyx_v_t == __pyx_e_12compizconfig_TypeString);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":383 */
    __pyx_3 = PyString_AsString(__pyx_v_data); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; goto __pyx_L1;}
    __pyx_v_bv->value.asString = strdup(__pyx_3);
    goto __pyx_L3;
  }
  __pyx_2 = (__pyx_v_t == __pyx_e_12compizconfig_TypeMatch);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":385 */
    __pyx_3 = PyString_AsString(__pyx_v_data); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 385; goto __pyx_L1;}
    __pyx_v_bv->value.asMatch = strdup(__pyx_3);
    goto __pyx_L3;
  }
  __pyx_2 = (__pyx_v_t == __pyx_e_12compizconfig_TypeInt);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":387 */
    __pyx_2 = PyInt_AsLong(__pyx_v_data); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 387; goto __pyx_L1;}
    __pyx_v_bv->value.asInt = __pyx_2;
    goto __pyx_L3;
  }
  __pyx_2 = (__pyx_v_t == __pyx_e_12compizconfig_TypeFloat);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":389 */
    __pyx_4 = PyFloat_AsDouble(__pyx_v_data); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 389; goto __pyx_L1;}
    __pyx_v_bv->value.asFloat = __pyx_4;
    goto __pyx_L3;
  }
  __pyx_2 = (__pyx_v_t == __pyx_e_12compizconfig_TypeBool);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":391 */
    __pyx_2 = PyObject_IsTrue(__pyx_v_data); if (__pyx_2 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 391; goto __pyx_L1;}
    if (__pyx_2) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":392 */
      __pyx_v_bv->value.asBool = 1;
      goto __pyx_L4;
    }
    /*else*/ {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":394 */
      __pyx_v_bv->value.asBool = 0;
    }
    __pyx_L4:;
    goto __pyx_L3;
  }
  __pyx_2 = (__pyx_v_t == __pyx_e_12compizconfig_TypeColor);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":396 */
    __pyx_5 = PyInt_FromLong(0); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 396; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_v_data, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 396; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_7 = PyInt_AsLong(__pyx_6); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 396; goto __pyx_L1;}
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    __pyx_v_bv->value.asColor.color.red = __pyx_7;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":397 */
    __pyx_5 = PyInt_FromLong(1); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_v_data, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_7 = PyInt_AsLong(__pyx_6); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; goto __pyx_L1;}
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    __pyx_v_bv->value.asColor.color.green = __pyx_7;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":398 */
    __pyx_5 = PyInt_FromLong(2); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_v_data, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_7 = PyInt_AsLong(__pyx_6); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; goto __pyx_L1;}
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    __pyx_v_bv->value.asColor.color.blue = __pyx_7;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":399 */
    __pyx_5 = PyInt_FromLong(3); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 399; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_v_data, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 399; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_7 = PyInt_AsLong(__pyx_6); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 399; goto __pyx_L1;}
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    __pyx_v_bv->value.asColor.color.alpha = __pyx_7;
    goto __pyx_L3;
  }
  __pyx_2 = (__pyx_v_t == __pyx_e_12compizconfig_TypeAction);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":401 */
    __pyx_5 = PyInt_FromLong(0); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 401; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_v_data, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 401; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_3 = PyString_AsString(__pyx_6); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 401; goto __pyx_L1;}
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    ccsStringToKeyBinding(__pyx_3,(&__pyx_v_bv->value.asAction));

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":402 */
    __pyx_5 = PyInt_FromLong(1); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_v_data, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_3 = PyString_AsString(__pyx_6); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; goto __pyx_L1;}
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    ccsStringToButtonBinding(__pyx_3,(&__pyx_v_bv->value.asAction));

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":403 */
    __pyx_5 = PyInt_FromLong(2); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_v_data, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_2 = PyObject_IsTrue(__pyx_6); if (__pyx_2 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; goto __pyx_L1;}
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    if (__pyx_2) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":404 */
      __pyx_v_bv->value.asAction.onBell = 1;
      goto __pyx_L5;
    }
    /*else*/ {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":406 */
      __pyx_v_bv->value.asAction.onBell = 0;
    }
    __pyx_L5:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":407 */
    __pyx_5 = PyInt_FromLong(3); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_v_data, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_v_l = __pyx_f_12compizconfig_ListToStringList(__pyx_6);
    Py_DECREF(__pyx_6); __pyx_6 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":408 */
    ccsStringListToEdges(__pyx_v_l,(&__pyx_v_bv->value.asAction));

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":409 */
    __pyx_5 = PyInt_FromLong(4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_v_data, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_2 = PyInt_AsLong(__pyx_6); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; goto __pyx_L1;}
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    __pyx_v_bv->value.asAction.edgeButton = __pyx_2;
    goto __pyx_L3;
  }
  __pyx_2 = (__pyx_v_t == __pyx_e_12compizconfig_TypeList);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":411 */
    __pyx_v_l = NULL;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":412 */
    __pyx_5 = PyObject_GetIter(__pyx_v_data); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 412; goto __pyx_L1;}
    for (;;) {
      __pyx_6 = PyIter_Next(__pyx_5);
      if (!__pyx_6) {
        if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 412; goto __pyx_L1;}
        break;
      }
      Py_DECREF(__pyx_v_item);
      __pyx_v_item = __pyx_6;
      __pyx_6 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":413 */
      __pyx_v_l = ccsSettingValueListAppend(__pyx_v_l,__pyx_f_12compizconfig_EncodeValue(__pyx_v_item,__pyx_v_setting,1));
    }
    Py_DECREF(__pyx_5); __pyx_5 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":415 */
    __pyx_v_bv->value.asList = __pyx_v_l;
    goto __pyx_L3;
  }
  __pyx_L3:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":416 */
  __pyx_r = __pyx_v_bv;
  goto __pyx_L0;

  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_5);
  Py_XDECREF(__pyx_6);
  __Pyx_WriteUnraisable("compizconfig.EncodeValue");
  __pyx_L0:;
  Py_DECREF(__pyx_v_item);
  Py_DECREF(__pyx_v_data);
  return __pyx_r;
}

static PyObject *__pyx_n_None;
static PyObject *__pyx_n_Button0;
static PyObject *__pyx_n_int;
static PyObject *__pyx_n_Unhandled;


static PyObject *__pyx_f_12compizconfig_DecodeValue(struct __pyx_t_12compizconfig_CCSSettingValue (*__pyx_v_value)) {
  enum __pyx_t_12compizconfig_CCSSettingType __pyx_v_t;
  char (*__pyx_v_s);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_l);
  PyObject *__pyx_v_ks;
  PyObject *__pyx_v_bs;
  PyObject *__pyx_v_es;
  PyObject *__pyx_v_eb;
  PyObject *__pyx_v_bb;
  PyObject *__pyx_v_lret;
  PyObject *__pyx_r;
  int __pyx_1;
  PyObject *__pyx_2 = 0;
  unsigned int __pyx_3;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  PyObject *__pyx_6 = 0;
  PyObject *__pyx_7 = 0;
  __pyx_v_ks = Py_None; Py_INCREF(Py_None);
  __pyx_v_bs = Py_None; Py_INCREF(Py_None);
  __pyx_v_es = Py_None; Py_INCREF(Py_None);
  __pyx_v_eb = Py_None; Py_INCREF(Py_None);
  __pyx_v_bb = Py_None; Py_INCREF(Py_None);
  __pyx_v_lret = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":427 */
  __pyx_v_t = __pyx_f_12compizconfig_GetType(__pyx_v_value);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":428 */
  __pyx_1 = (__pyx_v_t == __pyx_e_12compizconfig_TypeString);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":429 */
    __pyx_2 = PyString_FromString(__pyx_v_value->value.asString); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; goto __pyx_L1;}
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":430 */
  __pyx_1 = (__pyx_v_t == __pyx_e_12compizconfig_TypeMatch);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":431 */
    __pyx_2 = PyString_FromString(__pyx_v_value->value.asMatch); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 431; goto __pyx_L1;}
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
    goto __pyx_L3;
  }
  __pyx_L3:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":432 */
  __pyx_1 = (__pyx_v_t == __pyx_e_12compizconfig_TypeBool);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":433 */
    __pyx_3 = __pyx_v_value->value.asBool;
    if (__pyx_3) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":434 */
      __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; goto __pyx_L1;}
      __pyx_r = __pyx_2;
      __pyx_2 = 0;
      goto __pyx_L0;
      goto __pyx_L5;
    }
    __pyx_L5:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":435 */
    __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_False); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 435; goto __pyx_L1;}
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
    goto __pyx_L4;
  }
  __pyx_L4:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":436 */
  __pyx_1 = (__pyx_v_t == __pyx_e_12compizconfig_TypeInt);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":437 */
    __pyx_2 = PyInt_FromLong(__pyx_v_value->value.asInt); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; goto __pyx_L1;}
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
    goto __pyx_L6;
  }
  __pyx_L6:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":438 */
  __pyx_1 = (__pyx_v_t == __pyx_e_12compizconfig_TypeFloat);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":439 */
    __pyx_2 = PyFloat_FromDouble(__pyx_v_value->value.asFloat); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 439; goto __pyx_L1;}
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
    goto __pyx_L7;
  }
  __pyx_L7:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":440 */
  __pyx_1 = (__pyx_v_t == __pyx_e_12compizconfig_TypeColor);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":441 */
    __pyx_2 = PyInt_FromLong(__pyx_v_value->value.asColor.color.red); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 441; goto __pyx_L1;}
    __pyx_4 = PyInt_FromLong(__pyx_v_value->value.asColor.color.green); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; goto __pyx_L1;}
    __pyx_5 = PyInt_FromLong(__pyx_v_value->value.asColor.color.blue); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 443; goto __pyx_L1;}
    __pyx_6 = PyInt_FromLong(__pyx_v_value->value.asColor.color.alpha); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; goto __pyx_L1;}
    __pyx_7 = PyList_New(4); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 441; goto __pyx_L1;}
    PyList_SET_ITEM(__pyx_7, 0, __pyx_2);
    PyList_SET_ITEM(__pyx_7, 1, __pyx_4);
    PyList_SET_ITEM(__pyx_7, 2, __pyx_5);
    PyList_SET_ITEM(__pyx_7, 3, __pyx_6);
    __pyx_2 = 0;
    __pyx_4 = 0;
    __pyx_5 = 0;
    __pyx_6 = 0;
    __pyx_r = __pyx_7;
    __pyx_7 = 0;
    goto __pyx_L0;
    goto __pyx_L8;
  }
  __pyx_L8:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":445 */
  __pyx_1 = (__pyx_v_t == __pyx_e_12compizconfig_TypeAction);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":446 */
    __pyx_v_s = ccsKeyBindingToString((&__pyx_v_value->value.asAction));

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":447 */
    __pyx_1 = (__pyx_v_s != NULL);
    if (__pyx_1) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":448 */
      __pyx_2 = PyString_FromString(__pyx_v_s); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; goto __pyx_L1;}
      Py_DECREF(__pyx_v_ks);
      __pyx_v_ks = __pyx_2;
      __pyx_2 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":449 */
      free(__pyx_v_s);
      goto __pyx_L10;
    }
    /*else*/ {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":451 */
      Py_INCREF(__pyx_n_None);
      Py_DECREF(__pyx_v_ks);
      __pyx_v_ks = __pyx_n_None;
    }
    __pyx_L10:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":452 */
    __pyx_v_s = ccsButtonBindingToString((&__pyx_v_value->value.asAction));

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":453 */
    __pyx_1 = (__pyx_v_s != NULL);
    if (__pyx_1) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":454 */
      __pyx_4 = PyString_FromString(__pyx_v_s); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 454; goto __pyx_L1;}
      Py_DECREF(__pyx_v_bs);
      __pyx_v_bs = __pyx_4;
      __pyx_4 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":455 */
      free(__pyx_v_s);
      goto __pyx_L11;
    }
    /*else*/ {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":457 */
      Py_INCREF(__pyx_n_None);
      Py_DECREF(__pyx_v_bs);
      __pyx_v_bs = __pyx_n_None;
    }
    __pyx_L11:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":458 */
    if (PyObject_Cmp(__pyx_v_bs, __pyx_n_Button0, &__pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; goto __pyx_L1;}
    __pyx_1 = __pyx_1 == 0;
    if (__pyx_1) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":459 */
      Py_INCREF(__pyx_n_None);
      Py_DECREF(__pyx_v_bs);
      __pyx_v_bs = __pyx_n_None;
      goto __pyx_L12;
    }
    __pyx_L12:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":460 */
    __pyx_v_l = ccsEdgesToStringList((&__pyx_v_value->value.asAction));

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":461 */
    __pyx_1 = (__pyx_v_s != NULL);
    if (__pyx_1) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":462 */
      __pyx_5 = __pyx_f_12compizconfig_StringListToList(__pyx_v_l); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 462; goto __pyx_L1;}
      Py_DECREF(__pyx_v_es);
      __pyx_v_es = __pyx_5;
      __pyx_5 = 0;
      goto __pyx_L13;
    }
    /*else*/ {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":464 */
      __pyx_6 = PyList_New(1); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; goto __pyx_L1;}
      Py_INCREF(__pyx_n_None);
      PyList_SET_ITEM(__pyx_6, 0, __pyx_n_None);
      Py_DECREF(__pyx_v_es);
      __pyx_v_es = __pyx_6;
      __pyx_6 = 0;
    }
    __pyx_L13:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":465 */
    __pyx_7 = __Pyx_GetName(__pyx_b, __pyx_n_False); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 465; goto __pyx_L1;}
    Py_DECREF(__pyx_v_bb);
    __pyx_v_bb = __pyx_7;
    __pyx_7 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":466 */
    __pyx_3 = __pyx_v_value->value.asAction.onBell;
    if (__pyx_3) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":467 */
      __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; goto __pyx_L1;}
      Py_DECREF(__pyx_v_bb);
      __pyx_v_bb = __pyx_2;
      __pyx_2 = 0;
      goto __pyx_L14;
    }
    __pyx_L14:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":468 */
    __pyx_4 = __Pyx_GetName(__pyx_b, __pyx_n_int); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; goto __pyx_L1;}
    __pyx_5 = PyInt_FromLong(__pyx_v_value->value.asAction.edgeButton); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; goto __pyx_L1;}
    __pyx_6 = PyTuple_New(1); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_6, 0, __pyx_5);
    __pyx_5 = 0;
    __pyx_7 = PyObject_CallObject(__pyx_4, __pyx_6); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    Py_DECREF(__pyx_v_eb);
    __pyx_v_eb = __pyx_7;
    __pyx_7 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":469 */
    __pyx_2 = PyList_New(5); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 469; goto __pyx_L1;}
    Py_INCREF(__pyx_v_ks);
    PyList_SET_ITEM(__pyx_2, 0, __pyx_v_ks);
    Py_INCREF(__pyx_v_bs);
    PyList_SET_ITEM(__pyx_2, 1, __pyx_v_bs);
    Py_INCREF(__pyx_v_bb);
    PyList_SET_ITEM(__pyx_2, 2, __pyx_v_bb);
    Py_INCREF(__pyx_v_es);
    PyList_SET_ITEM(__pyx_2, 3, __pyx_v_es);
    Py_INCREF(__pyx_v_eb);
    PyList_SET_ITEM(__pyx_2, 4, __pyx_v_eb);
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
    goto __pyx_L9;
  }
  __pyx_L9:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":470 */
  __pyx_1 = (__pyx_v_t == __pyx_e_12compizconfig_TypeList);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":471 */
    __pyx_5 = PyList_New(0); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 471; goto __pyx_L1;}
    Py_DECREF(__pyx_v_lret);
    __pyx_v_lret = __pyx_5;
    __pyx_5 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":472 */
    __pyx_v_l = __pyx_v_value->value.asList;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":473 */
    while (1) {
      __pyx_1 = (__pyx_v_l != NULL);
      if (!__pyx_1) break;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":474 */
      __pyx_4 = PyObject_GetAttr(__pyx_v_lret, __pyx_n_append); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; goto __pyx_L1;}
      __pyx_6 = __pyx_f_12compizconfig_DecodeValue(((struct __pyx_t_12compizconfig_CCSSettingValue (*))__pyx_v_l->data)); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; goto __pyx_L1;}
      __pyx_7 = PyTuple_New(1); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; goto __pyx_L1;}
      PyTuple_SET_ITEM(__pyx_7, 0, __pyx_6);
      __pyx_6 = 0;
      __pyx_2 = PyObject_CallObject(__pyx_4, __pyx_7); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; goto __pyx_L1;}
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      Py_DECREF(__pyx_7); __pyx_7 = 0;
      Py_DECREF(__pyx_2); __pyx_2 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":475 */
      __pyx_v_l = __pyx_v_l->next;
    }

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":476 */
    Py_INCREF(__pyx_v_lret);
    __pyx_r = __pyx_v_lret;
    goto __pyx_L0;
    goto __pyx_L15;
  }
  __pyx_L15:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":477 */
  Py_INCREF(__pyx_n_Unhandled);
  __pyx_r = __pyx_n_Unhandled;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  Py_XDECREF(__pyx_6);
  Py_XDECREF(__pyx_7);
  __Pyx_AddTraceback("compizconfig.DecodeValue");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_ks);
  Py_DECREF(__pyx_v_bs);
  Py_DECREF(__pyx_v_es);
  Py_DECREF(__pyx_v_eb);
  Py_DECREF(__pyx_v_bb);
  Py_DECREF(__pyx_v_lret);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7Setting___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_f_12compizconfig_7Setting___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  struct __pyx_obj_12compizconfig_Plugin *__pyx_v_plugin = 0;
  PyObject *__pyx_v_name = 0;
  PyObject *__pyx_v_isScreen = 0;
  PyObject *__pyx_v_screenNum = 0;
  enum __pyx_t_12compizconfig_CCSSettingType __pyx_v_t;
  union __pyx_t_12compizconfig_CCSSettingInfo (*__pyx_v_i);
  PyObject *__pyx_v_info;
  PyObject *__pyx_v_desc;
  int __pyx_r;
  char (*__pyx_1);
  unsigned int __pyx_2;
  int __pyx_3;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  PyObject *__pyx_6 = 0;
  PyObject *__pyx_7 = 0;
  PyObject *__pyx_8 = 0;
  static char *__pyx_argnames[] = {"plugin","name","isScreen","screenNum",0};
  __pyx_v_screenNum = __pyx_k17;
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "OOO|O", __pyx_argnames, &__pyx_v_plugin, &__pyx_v_name, &__pyx_v_isScreen, &__pyx_v_screenNum)) return -1;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_plugin);
  Py_INCREF(__pyx_v_name);
  Py_INCREF(__pyx_v_isScreen);
  Py_INCREF(__pyx_v_screenNum);
  __pyx_v_info = Py_None; Py_INCREF(Py_None);
  __pyx_v_desc = Py_None; Py_INCREF(Py_None);
  if (!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_plugin), __pyx_ptype_12compizconfig_Plugin, 1, "plugin")) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; goto __pyx_L1;}

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":487 */
  __pyx_1 = PyString_AsString(__pyx_v_name); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 488; goto __pyx_L1;}
  __pyx_2 = PyInt_AsUnsignedLongMask(__pyx_v_isScreen); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 488; goto __pyx_L1;}
  __pyx_3 = PyInt_AsLong(__pyx_v_screenNum); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 488; goto __pyx_L1;}
  ((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting = ccsFindSetting(__pyx_v_plugin->ccsPlugin,__pyx_1,__pyx_2,__pyx_3);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":489 */
  Py_INCREF(((PyObject *)__pyx_v_plugin));
  Py_DECREF(((PyObject *)((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->plugin));
  ((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->plugin = __pyx_v_plugin;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":490 */
  __pyx_4 = PyTuple_New(0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 490; goto __pyx_L1;}
  Py_DECREF(__pyx_v_info);
  __pyx_v_info = __pyx_4;
  __pyx_4 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":491 */
  __pyx_v_t = ((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->type;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":492 */
  __pyx_v_i = (&((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->info);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":493 */
  __pyx_3 = (__pyx_v_t == __pyx_e_12compizconfig_TypeList);
  if (__pyx_3) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":494 */
    __pyx_v_t = ((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->info.forList.listType;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":495 */
    __pyx_v_i = ((union __pyx_t_12compizconfig_CCSSettingInfo (*))((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->info.forList.listInfo);
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":496 */
  __pyx_3 = (__pyx_v_t == __pyx_e_12compizconfig_TypeInt);
  if (__pyx_3) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":497 */
    __pyx_4 = __pyx_f_12compizconfig_IntDescListToDict(__pyx_v_i->forInt.desc); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; goto __pyx_L1;}
    Py_DECREF(__pyx_v_desc);
    __pyx_v_desc = __pyx_4;
    __pyx_4 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":498 */
    __pyx_4 = PyInt_FromLong(__pyx_v_i->forInt.min); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 498; goto __pyx_L1;}
    __pyx_5 = PyInt_FromLong(__pyx_v_i->forInt.max); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 498; goto __pyx_L1;}
    __pyx_6 = PyTuple_New(3); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 498; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_6, 0, __pyx_4);
    PyTuple_SET_ITEM(__pyx_6, 1, __pyx_5);
    Py_INCREF(__pyx_v_desc);
    PyTuple_SET_ITEM(__pyx_6, 2, __pyx_v_desc);
    __pyx_4 = 0;
    __pyx_5 = 0;
    Py_DECREF(__pyx_v_info);
    __pyx_v_info = __pyx_6;
    __pyx_6 = 0;
    goto __pyx_L3;
  }
  __pyx_3 = (__pyx_v_t == __pyx_e_12compizconfig_TypeFloat);
  if (__pyx_3) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":500 */
    __pyx_4 = PyFloat_FromDouble(__pyx_v_i->forFloat.min); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; goto __pyx_L1;}
    __pyx_5 = PyFloat_FromDouble(__pyx_v_i->forFloat.max); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; goto __pyx_L1;}
    __pyx_6 = PyFloat_FromDouble(__pyx_v_i->forFloat.precision); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 501; goto __pyx_L1;}
    __pyx_7 = PyTuple_New(3); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_7, 0, __pyx_4);
    PyTuple_SET_ITEM(__pyx_7, 1, __pyx_5);
    PyTuple_SET_ITEM(__pyx_7, 2, __pyx_6);
    __pyx_4 = 0;
    __pyx_5 = 0;
    __pyx_6 = 0;
    Py_DECREF(__pyx_v_info);
    __pyx_v_info = __pyx_7;
    __pyx_7 = 0;
    goto __pyx_L3;
  }
  __pyx_3 = (__pyx_v_t == __pyx_e_12compizconfig_TypeAction);
  if (__pyx_3) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":503 */
    __pyx_4 = PyLong_FromUnsignedLong(__pyx_v_i->forAction.key); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; goto __pyx_L1;}
    __pyx_5 = PyLong_FromUnsignedLong(__pyx_v_i->forAction.button); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; goto __pyx_L1;}
    __pyx_6 = PyLong_FromUnsignedLong(__pyx_v_i->forAction.bell); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; goto __pyx_L1;}
    __pyx_7 = PyLong_FromUnsignedLong(__pyx_v_i->forAction.edge); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; goto __pyx_L1;}
    __pyx_8 = PyTuple_New(4); if (!__pyx_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_8, 0, __pyx_4);
    PyTuple_SET_ITEM(__pyx_8, 1, __pyx_5);
    PyTuple_SET_ITEM(__pyx_8, 2, __pyx_6);
    PyTuple_SET_ITEM(__pyx_8, 3, __pyx_7);
    __pyx_4 = 0;
    __pyx_5 = 0;
    __pyx_6 = 0;
    __pyx_7 = 0;
    Py_DECREF(__pyx_v_info);
    __pyx_v_info = __pyx_8;
    __pyx_8 = 0;
    goto __pyx_L3;
  }
  __pyx_L3:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":505 */
  __pyx_3 = (((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->type == __pyx_e_12compizconfig_TypeList);
  if (__pyx_3) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":506 */
    __pyx_4 = __Pyx_GetName(__pyx_m, __pyx_n_SettingTypeString); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; goto __pyx_L1;}
    __pyx_5 = PyInt_FromLong(__pyx_v_t); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; goto __pyx_L1;}
    __pyx_6 = PyObject_GetItem(__pyx_4, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_7 = PyTuple_New(2); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_7, 0, __pyx_6);
    Py_INCREF(__pyx_v_info);
    PyTuple_SET_ITEM(__pyx_7, 1, __pyx_v_info);
    __pyx_6 = 0;
    Py_DECREF(__pyx_v_info);
    __pyx_v_info = __pyx_7;
    __pyx_7 = 0;
    goto __pyx_L4;
  }
  __pyx_L4:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":507 */
  Py_INCREF(__pyx_v_info);
  Py_DECREF(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->info);
  ((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->info = __pyx_v_info;

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  Py_XDECREF(__pyx_6);
  Py_XDECREF(__pyx_7);
  Py_XDECREF(__pyx_8);
  __Pyx_AddTraceback("compizconfig.Setting.__new__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_info);
  Py_DECREF(__pyx_v_desc);
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_plugin);
  Py_DECREF(__pyx_v_name);
  Py_DECREF(__pyx_v_isScreen);
  Py_DECREF(__pyx_v_screenNum);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_Reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_Reset(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_r;
  static char *__pyx_argnames[] = {0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "", __pyx_argnames)) return 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":510 */
  ccsResetToDefault(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting);

  __pyx_r = Py_None; Py_INCREF(Py_None);
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_6Plugin___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_6Plugin___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":514 */
  Py_INCREF(((PyObject *)((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->plugin));
  __pyx_r = ((PyObject *)((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->plugin);
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_4Name___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_4Name___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":517 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 517; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Setting.Name.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_9ShortDesc___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_9ShortDesc___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":520 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->shortDesc); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 520; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Setting.ShortDesc.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_8LongDesc___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_8LongDesc___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":523 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->longDesc); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 523; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Setting.LongDesc.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_5Group___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_5Group___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":526 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->group); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 526; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Setting.Group.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_8SubGroup___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_8SubGroup___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":529 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->subGroup); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Setting.SubGroup.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_4Type___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_4Type___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":532 */
  __pyx_1 = __Pyx_GetName(__pyx_m, __pyx_n_SettingTypeString); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; goto __pyx_L1;}
  __pyx_2 = PyInt_FromLong(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->type); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; goto __pyx_L1;}
  __pyx_3 = PyObject_GetItem(__pyx_1, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  __pyx_r = __pyx_3;
  __pyx_3 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  __Pyx_AddTraceback("compizconfig.Setting.Type.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_4Info___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_4Info___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":535 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->info);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->info;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_n_str;
static PyObject *__pyx_n_split;

static PyObject *__pyx_k30p;

static char (__pyx_k29[]) = "";
static char (__pyx_k30[]) = ";";

static PyObject *__pyx_f_12compizconfig_7Setting_5Hints___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_5Hints___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  int __pyx_1;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":538 */
  __pyx_1 = (((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->hints == __pyx_k29);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":539 */
    __pyx_2 = PyList_New(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 539; goto __pyx_L1;}
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
    goto __pyx_L2;
  }
  /*else*/ {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":541 */
    __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_str); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; goto __pyx_L1;}
    __pyx_3 = PyString_FromString(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->hints); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; goto __pyx_L1;}
    __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_4, 0, __pyx_3);
    __pyx_3 = 0;
    __pyx_3 = PyObject_CallObject(__pyx_2, __pyx_4); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; goto __pyx_L1;}
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    __pyx_2 = PyObject_GetAttr(__pyx_3, __pyx_n_split); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; goto __pyx_L1;}
    Py_INCREF(__pyx_k30p);
    PyTuple_SET_ITEM(__pyx_4, 0, __pyx_k30p);
    __pyx_3 = PyObject_CallObject(__pyx_2, __pyx_4); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; goto __pyx_L1;}
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    __pyx_2 = PySequence_GetSlice(__pyx_3, 0, (-1)); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
  }
  __pyx_L2:;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.Setting.Hints.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_9IsDefault___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_9IsDefault___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  unsigned int __pyx_1;
  PyObject *__pyx_2 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":544 */
  __pyx_1 = ((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->isDefault;
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":545 */
    __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; goto __pyx_L1;}
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":546 */
  __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_False); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 546; goto __pyx_L1;}
  __pyx_r = __pyx_2;
  __pyx_2 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  __Pyx_AddTraceback("compizconfig.Setting.IsDefault.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_12DefaultValue___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_12DefaultValue___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":549 */
  __pyx_1 = __pyx_f_12compizconfig_DecodeValue((&((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->defaultValue)); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 549; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Setting.DefaultValue.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_5Value___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_5Value___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":552 */
  __pyx_1 = __pyx_f_12compizconfig_DecodeValue(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting->value); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 552; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Setting.Value.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7Setting_5Value___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
static int __pyx_f_12compizconfig_7Setting_5Value___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
  struct __pyx_t_12compizconfig_CCSSettingValue (*__pyx_v_sv);
  int __pyx_r;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_value);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":555 */
  __pyx_v_sv = __pyx_f_12compizconfig_EncodeValue(__pyx_v_value,((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting,0);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":556 */
  ccsSetValue(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting,__pyx_v_sv);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":557 */
  ccsFreeSettingValue(__pyx_v_sv);

  __pyx_r = 0;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_value);
  return __pyx_r;
}

static PyObject *__pyx_n_bool;

static PyObject *__pyx_f_12compizconfig_7Setting_10Integrated___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_10Integrated___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":560 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 560; goto __pyx_L1;}
  __pyx_2 = PyLong_FromUnsignedLong(ccsSettingIsIntegrated(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting)); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 560; goto __pyx_L1;}
  __pyx_3 = PyTuple_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 560; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_3, 0, __pyx_2);
  __pyx_2 = 0;
  __pyx_2 = PyObject_CallObject(__pyx_1, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 560; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  __pyx_r = __pyx_2;
  __pyx_2 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  __Pyx_AddTraceback("compizconfig.Setting.Integrated.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Setting_8ReadOnly___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Setting_8ReadOnly___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":563 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; goto __pyx_L1;}
  __pyx_2 = PyLong_FromUnsignedLong(ccsSettingIsReadOnly(((struct __pyx_obj_12compizconfig_Setting *)__pyx_v_self)->ccsSetting)); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; goto __pyx_L1;}
  __pyx_3 = PyTuple_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_3, 0, __pyx_2);
  __pyx_2 = 0;
  __pyx_2 = PyObject_CallObject(__pyx_1, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  __pyx_r = __pyx_2;
  __pyx_2 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  __Pyx_AddTraceback("compizconfig.Setting.ReadOnly.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7SSGroup___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_f_12compizconfig_7SSGroup___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_disp = 0;
  PyObject *__pyx_v_scrn = 0;
  int __pyx_r;
  static char *__pyx_argnames[] = {"disp","scrn",0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "OO", __pyx_argnames, &__pyx_v_disp, &__pyx_v_scrn)) return -1;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_disp);
  Py_INCREF(__pyx_v_scrn);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":570 */
  Py_INCREF(__pyx_v_disp);
  Py_DECREF(((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->display);
  ((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->display = __pyx_v_disp;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":571 */
  Py_INCREF(__pyx_v_scrn);
  Py_DECREF(((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->screens);
  ((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->screens = __pyx_v_scrn;

  __pyx_r = 0;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_disp);
  Py_DECREF(__pyx_v_scrn);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7SSGroup_7Display___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7SSGroup_7Display___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":574 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->display);
  __pyx_r = ((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->display;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7SSGroup_7Display___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
static int __pyx_f_12compizconfig_7SSGroup_7Display___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
  int __pyx_r;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_value);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":576 */
  Py_INCREF(__pyx_v_value);
  Py_DECREF(((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->display);
  ((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->display = __pyx_v_value;

  __pyx_r = 0;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_value);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7SSGroup_7Screens___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7SSGroup_7Screens___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":579 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->screens);
  __pyx_r = ((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->screens;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7SSGroup_7Screens___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
static int __pyx_f_12compizconfig_7SSGroup_7Screens___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
  int __pyx_r;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_value);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":581 */
  Py_INCREF(__pyx_v_value);
  Py_DECREF(((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->screens);
  ((struct __pyx_obj_12compizconfig_SSGroup *)__pyx_v_self)->screens = __pyx_v_value;

  __pyx_r = 0;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_value);
  return __pyx_r;
}

static PyObject *__pyx_n_range;
static PyObject *__pyx_n_NScreens;

static int __pyx_f_12compizconfig_6Plugin___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_f_12compizconfig_6Plugin___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  struct __pyx_obj_12compizconfig_Context *__pyx_v_context = 0;
  PyObject *__pyx_v_name = 0;
  PyObject *__pyx_v_n;
  int __pyx_r;
  char (*__pyx_1);
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  static char *__pyx_argnames[] = {"context","name",0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "OO", __pyx_argnames, &__pyx_v_context, &__pyx_v_name)) return -1;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_context);
  Py_INCREF(__pyx_v_name);
  __pyx_v_n = Py_None; Py_INCREF(Py_None);
  if (!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_context), __pyx_ptype_12compizconfig_Context, 1, "context")) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 592; goto __pyx_L1;}

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":593 */
  __pyx_1 = PyString_AsString(__pyx_v_name); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 593; goto __pyx_L1;}
  ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin = ccsFindPlugin(__pyx_v_context->ccsContext,__pyx_1);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":594 */
  Py_INCREF(((PyObject *)__pyx_v_context));
  Py_DECREF(((PyObject *)((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context));
  ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context = __pyx_v_context;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":595 */
  __pyx_2 = PyList_New(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 595; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->screens);
  ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->screens = __pyx_2;
  __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":596 */
  __pyx_2 = PyDict_New(); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 596; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->display);
  ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->display = __pyx_2;
  __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":597 */
  __pyx_2 = PyDict_New(); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 597; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->groups);
  ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->groups = __pyx_2;
  __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":598 */
  __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_False); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 598; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->loaded);
  ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->loaded = __pyx_2;
  __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":599 */
  __pyx_2 = PyDict_New(); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ranking);
  ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ranking = __pyx_2;
  __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":600 */
  __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_range); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 600; goto __pyx_L1;}
  __pyx_3 = PyInt_FromLong(0); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 600; goto __pyx_L1;}
  __pyx_4 = PyObject_GetAttr(((PyObject *)__pyx_v_context), __pyx_n_NScreens); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 600; goto __pyx_L1;}
  __pyx_5 = PyTuple_New(2); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 600; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_5, 0, __pyx_3);
  PyTuple_SET_ITEM(__pyx_5, 1, __pyx_4);
  __pyx_3 = 0;
  __pyx_4 = 0;
  __pyx_3 = PyObject_CallObject(__pyx_2, __pyx_5); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 600; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  Py_DECREF(__pyx_5); __pyx_5 = 0;
  __pyx_4 = PyObject_GetIter(__pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 600; goto __pyx_L1;}
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  for (;;) {
    __pyx_2 = PyIter_Next(__pyx_4);
    if (!__pyx_2) {
      if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 600; goto __pyx_L1;}
      break;
    }
    Py_DECREF(__pyx_v_n);
    __pyx_v_n = __pyx_2;
    __pyx_2 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":601 */
    __pyx_5 = PyObject_GetAttr(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->screens, __pyx_n_append); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 601; goto __pyx_L1;}
    __pyx_3 = PyDict_New(); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 601; goto __pyx_L1;}
    __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 601; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_2, 0, __pyx_3);
    __pyx_3 = 0;
    __pyx_3 = PyObject_CallObject(__pyx_5, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 601; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    Py_DECREF(__pyx_3); __pyx_3 = 0;
  }
  Py_DECREF(__pyx_4); __pyx_4 = 0;

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  __Pyx_AddTraceback("compizconfig.Plugin.__new__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_n);
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_context);
  Py_DECREF(__pyx_v_name);
  return __pyx_r;
}

static PyObject *__pyx_n_has_key;

static PyObject *__pyx_f_12compizconfig_6Plugin_Update(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_Update(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_setlist);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_glist);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_sglist);
  struct __pyx_t_12compizconfig_CCSSetting (*__pyx_v_sett);
  struct __pyx_t_12compizconfig_CCSGroup (*__pyx_v_gr);
  struct __pyx_t_12compizconfig_CCSSubGroup (*__pyx_v_sgr);
  PyObject *__pyx_v_scr;
  PyObject *__pyx_v_n;
  PyObject *__pyx_v_rank;
  PyObject *__pyx_r;
  int __pyx_1;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  unsigned int __pyx_6;
  int __pyx_7;
  static char *__pyx_argnames[] = {0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "", __pyx_argnames)) return 0;
  Py_INCREF(__pyx_v_self);
  __pyx_v_scr = Py_None; Py_INCREF(Py_None);
  __pyx_v_n = Py_None; Py_INCREF(Py_None);
  __pyx_v_rank = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":610 */
  __pyx_v_glist = ccsGetPluginGroups(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":611 */
  while (1) {
    __pyx_1 = (__pyx_v_glist != NULL);
    if (!__pyx_1) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":612 */
    __pyx_v_gr = ((struct __pyx_t_12compizconfig_CCSGroup (*))__pyx_v_glist->data);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":613 */
    __pyx_2 = PyDict_New(); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 613; goto __pyx_L1;}
    __pyx_3 = PyString_FromString(__pyx_v_gr->name); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 613; goto __pyx_L1;}
    if (PyObject_SetItem(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->groups, __pyx_3, __pyx_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 613; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    Py_DECREF(__pyx_2); __pyx_2 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":614 */
    __pyx_v_sglist = __pyx_v_gr->subGroups;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":615 */
    while (1) {
      __pyx_1 = (__pyx_v_sglist != NULL);
      if (!__pyx_1) break;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":616 */
      __pyx_v_sgr = ((struct __pyx_t_12compizconfig_CCSSubGroup (*))__pyx_v_sglist->data);

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":617 */
      __pyx_2 = PyList_New(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 617; goto __pyx_L1;}
      Py_DECREF(__pyx_v_scr);
      __pyx_v_scr = __pyx_2;
      __pyx_2 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":618 */
      __pyx_3 = __Pyx_GetName(__pyx_b, __pyx_n_range); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; goto __pyx_L1;}
      __pyx_2 = PyInt_FromLong(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; goto __pyx_L1;}
      __pyx_4 = PyObject_GetAttr(((PyObject *)((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context), __pyx_n_NScreens); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; goto __pyx_L1;}
      __pyx_5 = PyTuple_New(2); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; goto __pyx_L1;}
      PyTuple_SET_ITEM(__pyx_5, 0, __pyx_2);
      PyTuple_SET_ITEM(__pyx_5, 1, __pyx_4);
      __pyx_2 = 0;
      __pyx_4 = 0;
      __pyx_2 = PyObject_CallObject(__pyx_3, __pyx_5); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; goto __pyx_L1;}
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      __pyx_4 = PyObject_GetIter(__pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; goto __pyx_L1;}
      Py_DECREF(__pyx_2); __pyx_2 = 0;
      for (;;) {
        __pyx_3 = PyIter_Next(__pyx_4);
        if (!__pyx_3) {
          if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; goto __pyx_L1;}
          break;
        }
        Py_DECREF(__pyx_v_n);
        __pyx_v_n = __pyx_3;
        __pyx_3 = 0;

        /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":619 */
        __pyx_5 = PyObject_GetAttr(__pyx_v_scr, __pyx_n_append); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; goto __pyx_L1;}
        __pyx_2 = PyDict_New(); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; goto __pyx_L1;}
        __pyx_3 = PyTuple_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; goto __pyx_L1;}
        PyTuple_SET_ITEM(__pyx_3, 0, __pyx_2);
        __pyx_2 = 0;
        __pyx_2 = PyObject_CallObject(__pyx_5, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; goto __pyx_L1;}
        Py_DECREF(__pyx_5); __pyx_5 = 0;
        Py_DECREF(__pyx_3); __pyx_3 = 0;
        Py_DECREF(__pyx_2); __pyx_2 = 0;
      }
      Py_DECREF(__pyx_4); __pyx_4 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":620 */
      __pyx_5 = PyDict_New(); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; goto __pyx_L1;}
      __pyx_3 = PyTuple_New(2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; goto __pyx_L1;}
      PyTuple_SET_ITEM(__pyx_3, 0, __pyx_5);
      Py_INCREF(__pyx_v_scr);
      PyTuple_SET_ITEM(__pyx_3, 1, __pyx_v_scr);
      __pyx_5 = 0;
      __pyx_2 = PyObject_CallObject(((PyObject*)__pyx_ptype_12compizconfig_SSGroup), __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; goto __pyx_L1;}
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      __pyx_4 = PyString_FromString(__pyx_v_gr->name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; goto __pyx_L1;}
      __pyx_5 = PyObject_GetItem(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->groups, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; goto __pyx_L1;}
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      __pyx_3 = PyString_FromString(__pyx_v_sgr->name); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; goto __pyx_L1;}
      if (PyObject_SetItem(__pyx_5, __pyx_3, __pyx_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      Py_DECREF(__pyx_2); __pyx_2 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":621 */
      __pyx_v_sglist = __pyx_v_sglist->next;
    }

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":622 */
    __pyx_v_glist = __pyx_v_glist->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":623 */
  __pyx_v_setlist = ccsGetPluginSettings(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":625 */
  __pyx_4 = PyInt_FromLong(0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 625; goto __pyx_L1;}
  Py_DECREF(__pyx_v_rank);
  __pyx_v_rank = __pyx_4;
  __pyx_4 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":626 */
  while (1) {
    __pyx_1 = (__pyx_v_setlist != NULL);
    if (!__pyx_1) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":627 */
    __pyx_v_sett = ((struct __pyx_t_12compizconfig_CCSSetting (*))__pyx_v_setlist->data);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":628 */
    __pyx_6 = __pyx_v_sett->isScreen;
    if (__pyx_6) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":629 */
      __pyx_2 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; goto __pyx_L1;}
      __pyx_5 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; goto __pyx_L1;}
      __pyx_3 = PyLong_FromUnsignedLong(__pyx_v_sett->screenNum); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; goto __pyx_L1;}
      __pyx_4 = PyTuple_New(4); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 629; goto __pyx_L1;}
      Py_INCREF(__pyx_v_self);
      PyTuple_SET_ITEM(__pyx_4, 0, __pyx_v_self);
      PyTuple_SET_ITEM(__pyx_4, 1, __pyx_2);
      PyTuple_SET_ITEM(__pyx_4, 2, __pyx_5);
      PyTuple_SET_ITEM(__pyx_4, 3, __pyx_3);
      __pyx_2 = 0;
      __pyx_5 = 0;
      __pyx_3 = 0;
      __pyx_2 = PyObject_CallObject(((PyObject*)__pyx_ptype_12compizconfig_Setting), __pyx_4); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 629; goto __pyx_L1;}
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      __pyx_5 = PyLong_FromUnsignedLong(__pyx_v_sett->screenNum); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 629; goto __pyx_L1;}
      __pyx_3 = PyObject_GetItem(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->screens, __pyx_5); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 629; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      __pyx_4 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 629; goto __pyx_L1;}
      if (PyObject_SetItem(__pyx_3, __pyx_4, __pyx_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 629; goto __pyx_L1;}
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      Py_DECREF(__pyx_2); __pyx_2 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":632 */
      __pyx_5 = PyLong_FromUnsignedLong(__pyx_v_sett->screenNum); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 632; goto __pyx_L1;}
      __pyx_2 = PyObject_GetItem(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->screens, __pyx_5); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 632; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      __pyx_3 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 632; goto __pyx_L1;}
      __pyx_4 = PyObject_GetItem(__pyx_2, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 632; goto __pyx_L1;}
      Py_DECREF(__pyx_2); __pyx_2 = 0;
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      __pyx_5 = PyString_FromString(__pyx_v_sett->group); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 631; goto __pyx_L1;}
      __pyx_2 = PyObject_GetItem(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->groups, __pyx_5); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 631; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      __pyx_3 = PyString_FromString(__pyx_v_sett->subGroup); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 631; goto __pyx_L1;}
      __pyx_5 = PyObject_GetItem(__pyx_2, __pyx_3); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 631; goto __pyx_L1;}
      Py_DECREF(__pyx_2); __pyx_2 = 0;
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      __pyx_2 = PyObject_GetAttr(__pyx_5, __pyx_n_Screens); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 631; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      __pyx_3 = PyLong_FromUnsignedLong(__pyx_v_sett->screenNum); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 631; goto __pyx_L1;}
      __pyx_5 = PyObject_GetItem(__pyx_2, __pyx_3); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 631; goto __pyx_L1;}
      Py_DECREF(__pyx_2); __pyx_2 = 0;
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      __pyx_2 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 632; goto __pyx_L1;}
      if (PyObject_SetItem(__pyx_5, __pyx_2, __pyx_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 631; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      Py_DECREF(__pyx_2); __pyx_2 = 0;
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      goto __pyx_L10;
    }
    /*else*/ {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":634 */
      __pyx_3 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; goto __pyx_L1;}
      __pyx_4 = __Pyx_GetName(__pyx_b, __pyx_n_False); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; goto __pyx_L1;}
      __pyx_5 = PyTuple_New(3); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 634; goto __pyx_L1;}
      Py_INCREF(__pyx_v_self);
      PyTuple_SET_ITEM(__pyx_5, 0, __pyx_v_self);
      PyTuple_SET_ITEM(__pyx_5, 1, __pyx_3);
      PyTuple_SET_ITEM(__pyx_5, 2, __pyx_4);
      __pyx_3 = 0;
      __pyx_4 = 0;
      __pyx_2 = PyObject_CallObject(((PyObject*)__pyx_ptype_12compizconfig_Setting), __pyx_5); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 634; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      __pyx_3 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 634; goto __pyx_L1;}
      if (PyObject_SetItem(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->display, __pyx_3, __pyx_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 634; goto __pyx_L1;}
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      Py_DECREF(__pyx_2); __pyx_2 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":637 */
      __pyx_4 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 637; goto __pyx_L1;}
      __pyx_5 = PyObject_GetItem(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->display, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 637; goto __pyx_L1;}
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      __pyx_2 = PyString_FromString(__pyx_v_sett->group); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; goto __pyx_L1;}
      __pyx_3 = PyObject_GetItem(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->groups, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; goto __pyx_L1;}
      Py_DECREF(__pyx_2); __pyx_2 = 0;
      __pyx_4 = PyString_FromString(__pyx_v_sett->subGroup); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; goto __pyx_L1;}
      __pyx_2 = PyObject_GetItem(__pyx_3, __pyx_4); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; goto __pyx_L1;}
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      __pyx_3 = PyObject_GetAttr(__pyx_2, __pyx_n_Display); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; goto __pyx_L1;}
      Py_DECREF(__pyx_2); __pyx_2 = 0;
      __pyx_4 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 637; goto __pyx_L1;}
      if (PyObject_SetItem(__pyx_3, __pyx_4, __pyx_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; goto __pyx_L1;}
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      Py_DECREF(__pyx_5); __pyx_5 = 0;
    }
    __pyx_L10:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":638 */
    __pyx_2 = PyObject_GetAttr(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ranking, __pyx_n_has_key); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 638; goto __pyx_L1;}
    __pyx_5 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 638; goto __pyx_L1;}
    __pyx_3 = PyTuple_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 638; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_3, 0, __pyx_5);
    __pyx_5 = 0;
    __pyx_4 = PyObject_CallObject(__pyx_2, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 638; goto __pyx_L1;}
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    __pyx_1 = PyObject_IsTrue(__pyx_4); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 638; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    __pyx_7 = (!__pyx_1);
    if (__pyx_7) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":639 */
      __pyx_5 = PyString_FromString(__pyx_v_sett->name); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 639; goto __pyx_L1;}
      if (PyObject_SetItem(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ranking, __pyx_5, __pyx_v_rank) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 639; goto __pyx_L1;}
      Py_DECREF(__pyx_5); __pyx_5 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":640 */
      __pyx_2 = PyInt_FromLong(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 640; goto __pyx_L1;}
      __pyx_3 = PyNumber_Add(__pyx_v_rank, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 640; goto __pyx_L1;}
      Py_DECREF(__pyx_2); __pyx_2 = 0;
      Py_DECREF(__pyx_v_rank);
      __pyx_v_rank = __pyx_3;
      __pyx_3 = 0;
      goto __pyx_L11;
    }
    __pyx_L11:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":642 */
    __pyx_v_setlist = __pyx_v_setlist->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":643 */
  __pyx_4 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 643; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->loaded);
  ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->loaded = __pyx_4;
  __pyx_4 = 0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  __Pyx_AddTraceback("compizconfig.Plugin.Update");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_scr);
  Py_DECREF(__pyx_v_n);
  Py_DECREF(__pyx_v_rank);
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_7Context___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_7Context___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":647 */
  Py_INCREF(((PyObject *)((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context));
  __pyx_r = ((PyObject *)((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context);
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_n_Update;

static PyObject *__pyx_f_12compizconfig_6Plugin_6Groups___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_6Groups___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  int __pyx_1;
  int __pyx_2;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":650 */
  __pyx_1 = PyObject_IsTrue(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->loaded); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 650; goto __pyx_L1;}
  __pyx_2 = (!__pyx_1);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":651 */
    __pyx_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_Update); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 651; goto __pyx_L1;}
    __pyx_4 = PyObject_CallObject(__pyx_3, 0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 651; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":652 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->groups);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->groups;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.Plugin.Groups.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_7Display___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_7Display___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  int __pyx_1;
  int __pyx_2;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":655 */
  __pyx_1 = PyObject_IsTrue(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->loaded); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 655; goto __pyx_L1;}
  __pyx_2 = (!__pyx_1);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":656 */
    __pyx_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_Update); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 656; goto __pyx_L1;}
    __pyx_4 = PyObject_CallObject(__pyx_3, 0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 656; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":657 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->display);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->display;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.Plugin.Display.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_7Screens___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_7Screens___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  int __pyx_1;
  int __pyx_2;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":660 */
  __pyx_1 = PyObject_IsTrue(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->loaded); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 660; goto __pyx_L1;}
  __pyx_2 = (!__pyx_1);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":661 */
    __pyx_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_Update); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 661; goto __pyx_L1;}
    __pyx_4 = PyObject_CallObject(__pyx_3, 0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 661; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":662 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->screens);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->screens;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.Plugin.Screens.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_7Ranking___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_7Ranking___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  int __pyx_1;
  int __pyx_2;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":665 */
  __pyx_1 = PyObject_IsTrue(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->loaded); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 665; goto __pyx_L1;}
  __pyx_2 = (!__pyx_1);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":666 */
    __pyx_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_Update); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; goto __pyx_L1;}
    __pyx_4 = PyObject_CallObject(__pyx_3, 0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":667 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ranking);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ranking;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.Plugin.Ranking.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_4Name___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_4Name___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":670 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin->name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 670; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Plugin.Name.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_9ShortDesc___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_9ShortDesc___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":673 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin->shortDesc); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 673; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Plugin.ShortDesc.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_8LongDesc___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_8LongDesc___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":676 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin->longDesc); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 676; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Plugin.LongDesc.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_8Category___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_8Category___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":679 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin->category); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 679; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Plugin.Category.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_8Features___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_8Features___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_v_features;
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);
  __pyx_v_features = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":682 */
  __pyx_1 = __pyx_f_12compizconfig_StringListToList(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin->providesFeature); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 682; goto __pyx_L1;}
  Py_DECREF(__pyx_v_features);
  __pyx_v_features = __pyx_1;
  __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":683 */
  Py_INCREF(__pyx_v_features);
  __pyx_r = __pyx_v_features;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Plugin.Features.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_features);
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_7Enabled___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_7Enabled___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":686 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 686; goto __pyx_L1;}
  __pyx_2 = PyLong_FromUnsignedLong(ccsPluginIsActive(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context->ccsContext,((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin->name)); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 686; goto __pyx_L1;}
  __pyx_3 = PyTuple_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 686; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_3, 0, __pyx_2);
  __pyx_2 = 0;
  __pyx_2 = PyObject_CallObject(__pyx_1, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 686; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  __pyx_r = __pyx_2;
  __pyx_2 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  __Pyx_AddTraceback("compizconfig.Plugin.Enabled.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_n_EnableConflicts;
static PyObject *__pyx_n_DisableConflicts;

static int __pyx_f_12compizconfig_6Plugin_7Enabled___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_val); /*proto*/
static int __pyx_f_12compizconfig_6Plugin_7Enabled___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_val) {
  int __pyx_r;
  int __pyx_1;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  unsigned int __pyx_5;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_val);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":688 */
  __pyx_1 = PyObject_IsTrue(__pyx_v_val); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 688; goto __pyx_L1;}
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":689 */
    __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_len); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 689; goto __pyx_L1;}
    __pyx_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_EnableConflicts); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 689; goto __pyx_L1;}
    __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 689; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_4, 0, __pyx_3);
    __pyx_3 = 0;
    __pyx_3 = PyObject_CallObject(__pyx_2, __pyx_4); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 689; goto __pyx_L1;}
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    __pyx_1 = PyObject_IsTrue(__pyx_3); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 689; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    if (__pyx_1) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":690 */
      __pyx_r = 0;
      goto __pyx_L0;
      goto __pyx_L3;
    }
    __pyx_L3:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":691 */
    __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 691; goto __pyx_L1;}
    __pyx_5 = PyInt_AsUnsignedLongMask(__pyx_2); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 691; goto __pyx_L1;}
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    ccsPluginSetActive(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin,__pyx_5);
    goto __pyx_L2;
  }
  /*else*/ {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":693 */
    __pyx_4 = __Pyx_GetName(__pyx_b, __pyx_n_len); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 693; goto __pyx_L1;}
    __pyx_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_DisableConflicts); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 693; goto __pyx_L1;}
    __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 693; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_2, 0, __pyx_3);
    __pyx_3 = 0;
    __pyx_3 = PyObject_CallObject(__pyx_4, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 693; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    __pyx_1 = PyObject_IsTrue(__pyx_3); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 693; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    if (__pyx_1) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":694 */
      __pyx_r = 0;
      goto __pyx_L0;
      goto __pyx_L4;
    }
    __pyx_L4:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":695 */
    __pyx_4 = __Pyx_GetName(__pyx_b, __pyx_n_False); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 695; goto __pyx_L1;}
    __pyx_5 = PyInt_AsUnsignedLongMask(__pyx_4); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 695; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    ccsPluginSetActive(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin,__pyx_5);
  }
  __pyx_L2:;

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.Plugin.Enabled.__set__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_val);
  return __pyx_r;
}

static PyObject *__pyx_n_Enabled;

static PyObject *__pyx_f_12compizconfig_6Plugin_15EnableConflicts___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_15EnableConflicts___get__(PyObject *__pyx_v_self) {
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_pl);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_pls);
  struct __pyx_t_12compizconfig_CCSPluginConflict (*__pyx_v_pc);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_ppl);
  struct __pyx_t_12compizconfig_CCSPlugin (*__pyx_v_plg);
  PyObject *__pyx_v_ret;
  PyObject *__pyx_v_rpl;
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  int __pyx_2;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  unsigned int __pyx_6;
  Py_INCREF(__pyx_v_self);
  __pyx_v_ret = Py_None; Py_INCREF(Py_None);
  __pyx_v_rpl = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":702 */
  __pyx_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_Enabled); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 702; goto __pyx_L1;}
  __pyx_2 = PyObject_IsTrue(__pyx_1); if (__pyx_2 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 702; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":703 */
    __pyx_1 = PyList_New(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 703; goto __pyx_L1;}
    __pyx_r = __pyx_1;
    __pyx_1 = 0;
    goto __pyx_L0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":704 */
  __pyx_1 = PyList_New(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 704; goto __pyx_L1;}
  Py_DECREF(__pyx_v_ret);
  __pyx_v_ret = __pyx_1;
  __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":705 */
  __pyx_v_pl = ccsCanEnablePlugin(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context->ccsContext,((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":707 */
  __pyx_v_pls = __pyx_v_pl;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":708 */
  while (1) {
    __pyx_2 = (__pyx_v_pls != NULL);
    if (!__pyx_2) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":709 */
    __pyx_v_pc = ((struct __pyx_t_12compizconfig_CCSPluginConflict (*))__pyx_v_pls->data);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":710 */
    __pyx_1 = PyList_New(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 710; goto __pyx_L1;}
    Py_DECREF(__pyx_v_rpl);
    __pyx_v_rpl = __pyx_1;
    __pyx_1 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":711 */
    __pyx_v_ppl = __pyx_v_pc->plugins;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":712 */
    while (1) {
      __pyx_2 = (__pyx_v_ppl != NULL);
      if (!__pyx_2) break;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":713 */
      __pyx_v_plg = ((struct __pyx_t_12compizconfig_CCSPlugin (*))__pyx_v_ppl->data);

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":714 */
      __pyx_1 = PyObject_GetAttr(__pyx_v_rpl, __pyx_n_append); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 714; goto __pyx_L1;}
      __pyx_3 = PyObject_GetAttr(((PyObject *)((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context), __pyx_n_Plugins); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 714; goto __pyx_L1;}
      __pyx_4 = PyString_FromString(__pyx_v_plg->name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 714; goto __pyx_L1;}
      __pyx_5 = PyObject_GetItem(__pyx_3, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 714; goto __pyx_L1;}
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      __pyx_3 = PyTuple_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 714; goto __pyx_L1;}
      PyTuple_SET_ITEM(__pyx_3, 0, __pyx_5);
      __pyx_5 = 0;
      __pyx_4 = PyObject_CallObject(__pyx_1, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 714; goto __pyx_L1;}
      Py_DECREF(__pyx_1); __pyx_1 = 0;
      Py_DECREF(__pyx_3); __pyx_3 = 0;
      Py_DECREF(__pyx_4); __pyx_4 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":715 */
      __pyx_v_ppl = __pyx_v_ppl->next;
    }

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":716 */
    __pyx_5 = PyObject_GetAttr(__pyx_v_ret, __pyx_n_append); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; goto __pyx_L1;}
    __pyx_1 = __Pyx_GetName(__pyx_m, __pyx_n_ConflictTypeString); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; goto __pyx_L1;}
    __pyx_3 = PyInt_FromLong(__pyx_v_pc->type); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; goto __pyx_L1;}
    __pyx_4 = PyObject_GetItem(__pyx_1, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; goto __pyx_L1;}
    Py_DECREF(__pyx_1); __pyx_1 = 0;
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    __pyx_1 = PyString_FromString(__pyx_v_pc->value); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; goto __pyx_L1;}
    __pyx_3 = PyTuple_New(3); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_3, 0, __pyx_4);
    PyTuple_SET_ITEM(__pyx_3, 1, __pyx_1);
    Py_INCREF(__pyx_v_rpl);
    PyTuple_SET_ITEM(__pyx_3, 2, __pyx_v_rpl);
    __pyx_4 = 0;
    __pyx_1 = 0;
    __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_4, 0, __pyx_3);
    __pyx_3 = 0;
    __pyx_1 = PyObject_CallObject(__pyx_5, __pyx_4); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    Py_DECREF(__pyx_1); __pyx_1 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":717 */
    __pyx_v_pls = __pyx_v_pls->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":718 */
  __pyx_2 = (__pyx_v_pl != NULL);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":719 */
    __pyx_3 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; goto __pyx_L1;}
    __pyx_6 = PyInt_AsUnsignedLongMask(__pyx_3); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; goto __pyx_L1;}
    Py_DECREF(__pyx_3); __pyx_3 = 0;
    ccsPluginConflictListFree(__pyx_v_pl,__pyx_6);
    goto __pyx_L7;
  }
  __pyx_L7:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":720 */
  Py_INCREF(__pyx_v_ret);
  __pyx_r = __pyx_v_ret;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  __Pyx_AddTraceback("compizconfig.Plugin.EnableConflicts.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_ret);
  Py_DECREF(__pyx_v_rpl);
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_6Plugin_16DisableConflicts___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_6Plugin_16DisableConflicts___get__(PyObject *__pyx_v_self) {
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_pl);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_pls);
  struct __pyx_t_12compizconfig_CCSPluginConflict (*__pyx_v_pc);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_ppl);
  struct __pyx_t_12compizconfig_CCSPlugin (*__pyx_v_plg);
  PyObject *__pyx_v_ret;
  PyObject *__pyx_v_rpl;
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  int __pyx_2;
  int __pyx_3;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  PyObject *__pyx_6 = 0;
  unsigned int __pyx_7;
  Py_INCREF(__pyx_v_self);
  __pyx_v_ret = Py_None; Py_INCREF(Py_None);
  __pyx_v_rpl = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":727 */
  __pyx_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_Enabled); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; goto __pyx_L1;}
  __pyx_2 = PyObject_IsTrue(__pyx_1); if (__pyx_2 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  __pyx_3 = (!__pyx_2);
  if (__pyx_3) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":728 */
    __pyx_1 = PyList_New(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 728; goto __pyx_L1;}
    __pyx_r = __pyx_1;
    __pyx_1 = 0;
    goto __pyx_L0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":729 */
  __pyx_1 = PyList_New(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 729; goto __pyx_L1;}
  Py_DECREF(__pyx_v_ret);
  __pyx_v_ret = __pyx_1;
  __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":730 */
  __pyx_v_pl = ccsCanDisablePlugin(((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context->ccsContext,((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->ccsPlugin);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":732 */
  __pyx_v_pls = __pyx_v_pl;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":733 */
  while (1) {
    __pyx_2 = (__pyx_v_pls != NULL);
    if (!__pyx_2) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":734 */
    __pyx_v_pc = ((struct __pyx_t_12compizconfig_CCSPluginConflict (*))__pyx_v_pls->data);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":735 */
    __pyx_1 = PyList_New(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 735; goto __pyx_L1;}
    Py_DECREF(__pyx_v_rpl);
    __pyx_v_rpl = __pyx_1;
    __pyx_1 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":736 */
    __pyx_v_ppl = __pyx_v_pc->plugins;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":737 */
    while (1) {
      __pyx_3 = (__pyx_v_ppl != NULL);
      if (!__pyx_3) break;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":738 */
      __pyx_v_plg = ((struct __pyx_t_12compizconfig_CCSPlugin (*))__pyx_v_ppl->data);

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":739 */
      __pyx_1 = PyObject_GetAttr(__pyx_v_rpl, __pyx_n_append); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 739; goto __pyx_L1;}
      __pyx_4 = PyObject_GetAttr(((PyObject *)((struct __pyx_obj_12compizconfig_Plugin *)__pyx_v_self)->context), __pyx_n_Plugins); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 739; goto __pyx_L1;}
      __pyx_5 = PyString_FromString(__pyx_v_plg->name); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 739; goto __pyx_L1;}
      __pyx_6 = PyObject_GetItem(__pyx_4, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 739; goto __pyx_L1;}
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      Py_DECREF(__pyx_5); __pyx_5 = 0;
      __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 739; goto __pyx_L1;}
      PyTuple_SET_ITEM(__pyx_4, 0, __pyx_6);
      __pyx_6 = 0;
      __pyx_5 = PyObject_CallObject(__pyx_1, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 739; goto __pyx_L1;}
      Py_DECREF(__pyx_1); __pyx_1 = 0;
      Py_DECREF(__pyx_4); __pyx_4 = 0;
      Py_DECREF(__pyx_5); __pyx_5 = 0;

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":740 */
      __pyx_v_ppl = __pyx_v_ppl->next;
    }

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":741 */
    __pyx_6 = PyObject_GetAttr(__pyx_v_ret, __pyx_n_append); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; goto __pyx_L1;}
    __pyx_1 = __Pyx_GetName(__pyx_m, __pyx_n_ConflictTypeString); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; goto __pyx_L1;}
    __pyx_4 = PyInt_FromLong(__pyx_v_pc->type); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; goto __pyx_L1;}
    __pyx_5 = PyObject_GetItem(__pyx_1, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; goto __pyx_L1;}
    Py_DECREF(__pyx_1); __pyx_1 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    __pyx_1 = PyString_FromString(__pyx_v_pc->value); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; goto __pyx_L1;}
    __pyx_4 = PyTuple_New(3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_4, 0, __pyx_5);
    PyTuple_SET_ITEM(__pyx_4, 1, __pyx_1);
    Py_INCREF(__pyx_v_rpl);
    PyTuple_SET_ITEM(__pyx_4, 2, __pyx_v_rpl);
    __pyx_5 = 0;
    __pyx_1 = 0;
    __pyx_5 = PyTuple_New(1); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_5, 0, __pyx_4);
    __pyx_4 = 0;
    __pyx_1 = PyObject_CallObject(__pyx_6, __pyx_5); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; goto __pyx_L1;}
    Py_DECREF(__pyx_6); __pyx_6 = 0;
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    Py_DECREF(__pyx_1); __pyx_1 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":742 */
    __pyx_v_pls = __pyx_v_pls->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":743 */
  __pyx_2 = (__pyx_v_pl != NULL);
  if (__pyx_2) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":744 */
    __pyx_4 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 744; goto __pyx_L1;}
    __pyx_7 = PyInt_AsUnsignedLongMask(__pyx_4); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 744; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    ccsPluginConflictListFree(__pyx_v_pl,__pyx_7);
    goto __pyx_L7;
  }
  __pyx_L7:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":745 */
  Py_INCREF(__pyx_v_ret);
  __pyx_r = __pyx_v_ret;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  Py_XDECREF(__pyx_6);
  __Pyx_AddTraceback("compizconfig.Plugin.DisableConflicts.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_ret);
  Py_DECREF(__pyx_v_rpl);
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7Profile___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_f_12compizconfig_7Profile___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  struct __pyx_obj_12compizconfig_Context *__pyx_v_context = 0;
  PyObject *__pyx_v_name = 0;
  int __pyx_r;
  char (*__pyx_1);
  static char *__pyx_argnames[] = {"context","name",0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "OO", __pyx_argnames, &__pyx_v_context, &__pyx_v_name)) return -1;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_context);
  Py_INCREF(__pyx_v_name);
  if (!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_context), __pyx_ptype_12compizconfig_Context, 1, "context")) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 751; goto __pyx_L1;}

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":752 */
  Py_INCREF(((PyObject *)__pyx_v_context));
  Py_DECREF(((PyObject *)((struct __pyx_obj_12compizconfig_Profile *)__pyx_v_self)->context));
  ((struct __pyx_obj_12compizconfig_Profile *)__pyx_v_self)->context = __pyx_v_context;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":753 */
  __pyx_1 = PyString_AsString(__pyx_v_name); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 753; goto __pyx_L1;}
  ((struct __pyx_obj_12compizconfig_Profile *)__pyx_v_self)->name = strdup(__pyx_1);

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  __Pyx_AddTraceback("compizconfig.Profile.__new__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_context);
  Py_DECREF(__pyx_v_name);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Profile___dealloc(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Profile___dealloc(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_r;
  static char *__pyx_argnames[] = {0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "", __pyx_argnames)) return 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":756 */
  free(((struct __pyx_obj_12compizconfig_Profile *)__pyx_v_self)->name);

  __pyx_r = Py_None; Py_INCREF(Py_None);
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Profile_Delete(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Profile_Delete(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_r;
  static char *__pyx_argnames[] = {0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "", __pyx_argnames)) return 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":759 */
  ccsDeleteProfile(((struct __pyx_obj_12compizconfig_Profile *)__pyx_v_self)->context->ccsContext,((struct __pyx_obj_12compizconfig_Profile *)__pyx_v_self)->name);

  __pyx_r = Py_None; Py_INCREF(Py_None);
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Profile_4Name___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Profile_4Name___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":763 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Profile *)__pyx_v_self)->name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 763; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Profile.Name.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7Backend___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_f_12compizconfig_7Backend___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  struct __pyx_obj_12compizconfig_Context *__pyx_v_context = 0;
  PyObject *__pyx_v_info = 0;
  int __pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  char (*__pyx_3);
  PyObject *__pyx_4 = 0;
  unsigned int __pyx_5;
  static char *__pyx_argnames[] = {"context","info",0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "OO", __pyx_argnames, &__pyx_v_context, &__pyx_v_info)) return -1;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_context);
  Py_INCREF(__pyx_v_info);
  if (!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_context), __pyx_ptype_12compizconfig_Context, 1, "context")) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 773; goto __pyx_L1;}

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":774 */
  Py_INCREF(((PyObject *)__pyx_v_context));
  Py_DECREF(((PyObject *)((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->context));
  ((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->context = __pyx_v_context;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":775 */
  __pyx_1 = PyInt_FromLong(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 775; goto __pyx_L1;}
  __pyx_2 = PyObject_GetItem(__pyx_v_info, __pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 775; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  __pyx_3 = PyString_AsString(__pyx_2); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 775; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  ((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->name = strdup(__pyx_3);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":776 */
  __pyx_1 = PyInt_FromLong(1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; goto __pyx_L1;}
  __pyx_2 = PyObject_GetItem(__pyx_v_info, __pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  __pyx_3 = PyString_AsString(__pyx_2); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  ((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->shortDesc = strdup(__pyx_3);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":777 */
  __pyx_1 = PyInt_FromLong(2); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 777; goto __pyx_L1;}
  __pyx_2 = PyObject_GetItem(__pyx_v_info, __pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 777; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  __pyx_3 = PyString_AsString(__pyx_2); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 777; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  ((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->longDesc = strdup(__pyx_3);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":778 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; goto __pyx_L1;}
  __pyx_2 = PyInt_FromLong(3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; goto __pyx_L1;}
  __pyx_4 = PyObject_GetItem(__pyx_v_info, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_2, 0, __pyx_4);
  __pyx_4 = 0;
  __pyx_4 = PyObject_CallObject(__pyx_1, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  __pyx_5 = PyInt_AsUnsignedLongMask(__pyx_4); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; goto __pyx_L1;}
  Py_DECREF(__pyx_4); __pyx_4 = 0;
  ((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->profileSupport = __pyx_5;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":779 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 779; goto __pyx_L1;}
  __pyx_2 = PyInt_FromLong(4); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 779; goto __pyx_L1;}
  __pyx_4 = PyObject_GetItem(__pyx_v_info, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 779; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 779; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_2, 0, __pyx_4);
  __pyx_4 = 0;
  __pyx_4 = PyObject_CallObject(__pyx_1, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 779; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  __pyx_5 = PyInt_AsUnsignedLongMask(__pyx_4); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 779; goto __pyx_L1;}
  Py_DECREF(__pyx_4); __pyx_4 = 0;
  ((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->integrationSupport = __pyx_5;

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.Backend.__new__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_context);
  Py_DECREF(__pyx_v_info);
  return __pyx_r;
}

static void __pyx_f_12compizconfig_7Backend___dealloc__(PyObject *__pyx_v_self); /*proto*/
static void __pyx_f_12compizconfig_7Backend___dealloc__(PyObject *__pyx_v_self) {
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":782 */
  free(((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->name);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":783 */
  free(((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->shortDesc);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":784 */
  free(((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->longDesc);

  Py_DECREF(__pyx_v_self);
}

static PyObject *__pyx_f_12compizconfig_7Backend_4Name___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Backend_4Name___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":788 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 788; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Backend.Name.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Backend_9ShortDesc___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Backend_9ShortDesc___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":791 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->shortDesc); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Backend.ShortDesc.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Backend_8LongDesc___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Backend_8LongDesc___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":794 */
  __pyx_1 = PyString_FromString(((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->longDesc); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 794; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Backend.LongDesc.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Backend_18IntegrationSupport___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Backend_18IntegrationSupport___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":797 */
  __pyx_1 = PyLong_FromUnsignedLong(((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->integrationSupport); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 797; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Backend.IntegrationSupport.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Backend_14ProfileSupport___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Backend_14ProfileSupport___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":800 */
  __pyx_1 = PyLong_FromUnsignedLong(((struct __pyx_obj_12compizconfig_Backend *)__pyx_v_self)->profileSupport); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Backend.ProfileSupport.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_n_LoadPlugin;
static PyObject *__pyx_n_UpdateProfiles;

static PyObject *__pyx_k31p;

static char (__pyx_k31[]) = "";

static int __pyx_f_12compizconfig_7Context___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static int __pyx_f_12compizconfig_7Context___new__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_screens = 0;
  PyObject *__pyx_v_plugins = 0;
  PyObject *__pyx_v_basic_metadata = 0;
  struct __pyx_t_12compizconfig_CCSPlugin (*__pyx_v_pl);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_pll);
  PyObject *__pyx_v_nScreens;
  unsigned int (*__pyx_v_screensBuf);
  PyObject *__pyx_v_i;
  PyObject *__pyx_v_plugin;
  PyObject *__pyx_v_cat;
  int __pyx_r;
  int __pyx_1;
  PyObject *__pyx_2 = 0;
  unsigned int __pyx_3;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  size_t __pyx_6;
  PyObject *__pyx_7 = 0;
  int __pyx_8;
  static char *__pyx_argnames[] = {"screens","plugins","basic_metadata",0};
  __pyx_v_screens = __pyx_k18;
  __pyx_v_plugins = __pyx_k19;
  __pyx_v_basic_metadata = __pyx_k20;
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "|OOO", __pyx_argnames, &__pyx_v_screens, &__pyx_v_plugins, &__pyx_v_basic_metadata)) return -1;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_screens);
  Py_INCREF(__pyx_v_plugins);
  Py_INCREF(__pyx_v_basic_metadata);
  __pyx_v_nScreens = Py_None; Py_INCREF(Py_None);
  __pyx_v_i = Py_None; Py_INCREF(Py_None);
  __pyx_v_plugin = Py_None; Py_INCREF(Py_None);
  __pyx_v_cat = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":816 */
  __pyx_1 = PyObject_IsTrue(__pyx_v_basic_metadata); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 816; goto __pyx_L1;}
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":817 */
    __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 817; goto __pyx_L1;}
    __pyx_3 = PyInt_AsUnsignedLongMask(__pyx_2); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 817; goto __pyx_L1;}
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    ccsSetBasicMetadata(__pyx_3);
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":818 */
  __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_len); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 818; goto __pyx_L1;}
  __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 818; goto __pyx_L1;}
  Py_INCREF(__pyx_v_screens);
  PyTuple_SET_ITEM(__pyx_4, 0, __pyx_v_screens);
  __pyx_5 = PyObject_CallObject(__pyx_2, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 818; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  Py_DECREF(__pyx_4); __pyx_4 = 0;
  __pyx_1 = PyInt_AsLong(__pyx_5); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 818; goto __pyx_L1;}
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->nScreens = __pyx_1;
  Py_INCREF(__pyx_5);
  Py_DECREF(__pyx_v_nScreens);
  __pyx_v_nScreens = __pyx_5;
  Py_DECREF(__pyx_5); __pyx_5 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":819 */
  __pyx_2 = PyDict_New(); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 819; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->plugins);
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->plugins = __pyx_2;
  __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":821 */
  __pyx_4 = PyInt_FromLong((sizeof(unsigned int ))); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; goto __pyx_L1;}
  __pyx_5 = PyNumber_Multiply(__pyx_4, __pyx_v_nScreens); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; goto __pyx_L1;}
  Py_DECREF(__pyx_4); __pyx_4 = 0;
  __pyx_6 = PyInt_AsLong(__pyx_5); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; goto __pyx_L1;}
  Py_DECREF(__pyx_5); __pyx_5 = 0;
  __pyx_v_screensBuf = ((unsigned int (*))malloc(__pyx_6));

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":822 */
  __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_range); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 822; goto __pyx_L1;}
  __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 822; goto __pyx_L1;}
  Py_INCREF(__pyx_v_nScreens);
  PyTuple_SET_ITEM(__pyx_4, 0, __pyx_v_nScreens);
  __pyx_5 = PyObject_CallObject(__pyx_2, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 822; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  Py_DECREF(__pyx_4); __pyx_4 = 0;
  __pyx_2 = PyObject_GetIter(__pyx_5); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 822; goto __pyx_L1;}
  Py_DECREF(__pyx_5); __pyx_5 = 0;
  for (;;) {
    __pyx_4 = PyIter_Next(__pyx_2);
    if (!__pyx_4) {
      if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 822; goto __pyx_L1;}
      break;
    }
    Py_DECREF(__pyx_v_i);
    __pyx_v_i = __pyx_4;
    __pyx_4 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":823 */
    __pyx_5 = PyObject_GetItem(__pyx_v_screens, __pyx_v_i); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 823; goto __pyx_L1;}
    __pyx_3 = PyInt_AsUnsignedLongMask(__pyx_5); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 823; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_1 = PyInt_AsLong(__pyx_v_i); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 823; goto __pyx_L1;}
    (__pyx_v_screensBuf[__pyx_1]) = __pyx_3;
  }
  Py_DECREF(__pyx_2); __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":824 */
  __pyx_4 = PyList_New(0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 824; goto __pyx_L1;}
  if (PyObject_Cmp(__pyx_v_plugins, __pyx_4, &__pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 824; goto __pyx_L1;}
  __pyx_1 = __pyx_1 == 0;
  Py_DECREF(__pyx_4); __pyx_4 = 0;
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":825 */
    __pyx_3 = PyInt_AsUnsignedLongMask(__pyx_v_nScreens); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 825; goto __pyx_L1;}
    ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext = ccsContextNew(__pyx_v_screensBuf,__pyx_3);
    goto __pyx_L5;
  }
  /*else*/ {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":827 */
    __pyx_3 = PyInt_AsUnsignedLongMask(__pyx_v_nScreens); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 827; goto __pyx_L1;}
    ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext = ccsEmptyContextNew(__pyx_v_screensBuf,__pyx_3);
  }
  __pyx_L5:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":828 */
  __pyx_5 = PyObject_GetIter(__pyx_v_plugins); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; goto __pyx_L1;}
  for (;;) {
    __pyx_2 = PyIter_Next(__pyx_5);
    if (!__pyx_2) {
      if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; goto __pyx_L1;}
      break;
    }
    Py_DECREF(__pyx_v_plugin);
    __pyx_v_plugin = __pyx_2;
    __pyx_2 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":829 */
    __pyx_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_LoadPlugin); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 829; goto __pyx_L1;}
    __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 829; goto __pyx_L1;}
    Py_INCREF(__pyx_v_plugin);
    PyTuple_SET_ITEM(__pyx_2, 0, __pyx_v_plugin);
    __pyx_7 = PyObject_CallObject(__pyx_4, __pyx_2); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 829; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    Py_DECREF(__pyx_7); __pyx_7 = 0;
  }
  Py_DECREF(__pyx_5); __pyx_5 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":830 */
  free(__pyx_v_screensBuf);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":831 */
  ccsReadSettings(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":832 */
  __pyx_v_pll = ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext->plugins;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":833 */
  __pyx_4 = PyDict_New(); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 833; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->categories);
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->categories = __pyx_4;
  __pyx_4 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":834 */
  while (1) {
    __pyx_1 = (__pyx_v_pll != NULL);
    if (!__pyx_1) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":835 */
    __pyx_v_pl = ((struct __pyx_t_12compizconfig_CCSPlugin (*))__pyx_v_pll->data);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":836 */
    __pyx_2 = PyString_FromString(__pyx_v_pl->name); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 836; goto __pyx_L1;}
    __pyx_7 = PyTuple_New(2); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 836; goto __pyx_L1;}
    Py_INCREF(__pyx_v_self);
    PyTuple_SET_ITEM(__pyx_7, 0, __pyx_v_self);
    PyTuple_SET_ITEM(__pyx_7, 1, __pyx_2);
    __pyx_2 = 0;
    __pyx_5 = PyObject_CallObject(((PyObject*)__pyx_ptype_12compizconfig_Plugin), __pyx_7); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 836; goto __pyx_L1;}
    Py_DECREF(__pyx_7); __pyx_7 = 0;
    __pyx_4 = PyString_FromString(__pyx_v_pl->name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 836; goto __pyx_L1;}
    if (PyObject_SetItem(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->plugins, __pyx_4, __pyx_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 836; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    Py_DECREF(__pyx_5); __pyx_5 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":837 */
    __pyx_1 = (__pyx_v_pl->category == NULL);
    if (__pyx_1) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":838 */
      Py_INCREF(__pyx_k31p);
      Py_DECREF(__pyx_v_cat);
      __pyx_v_cat = __pyx_k31p;
      goto __pyx_L10;
    }
    /*else*/ {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":840 */
      __pyx_2 = PyString_FromString(__pyx_v_pl->category); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 840; goto __pyx_L1;}
      Py_DECREF(__pyx_v_cat);
      __pyx_v_cat = __pyx_2;
      __pyx_2 = 0;
    }
    __pyx_L10:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":841 */
    __pyx_7 = PyObject_GetAttr(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->categories, __pyx_n_has_key); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; goto __pyx_L1;}
    __pyx_5 = PyTuple_New(1); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; goto __pyx_L1;}
    Py_INCREF(__pyx_v_cat);
    PyTuple_SET_ITEM(__pyx_5, 0, __pyx_v_cat);
    __pyx_4 = PyObject_CallObject(__pyx_7, __pyx_5); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; goto __pyx_L1;}
    Py_DECREF(__pyx_7); __pyx_7 = 0;
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    __pyx_1 = PyObject_IsTrue(__pyx_4); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    __pyx_8 = (!__pyx_1);
    if (__pyx_8) {

      /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":842 */
      __pyx_2 = PyList_New(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 842; goto __pyx_L1;}
      if (PyObject_SetItem(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->categories, __pyx_v_cat, __pyx_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 842; goto __pyx_L1;}
      Py_DECREF(__pyx_2); __pyx_2 = 0;
      goto __pyx_L11;
    }
    __pyx_L11:;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":843 */
    __pyx_7 = PyObject_GetItem(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->categories, __pyx_v_cat); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 843; goto __pyx_L1;}
    __pyx_5 = PyObject_GetAttr(__pyx_7, __pyx_n_append); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 843; goto __pyx_L1;}
    Py_DECREF(__pyx_7); __pyx_7 = 0;
    __pyx_4 = PyString_FromString(__pyx_v_pl->name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 843; goto __pyx_L1;}
    __pyx_2 = PyObject_GetItem(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->plugins, __pyx_4); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 843; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    __pyx_7 = PyTuple_New(1); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 843; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_7, 0, __pyx_2);
    __pyx_2 = 0;
    __pyx_4 = PyObject_CallObject(__pyx_5, __pyx_7); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 843; goto __pyx_L1;}
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    Py_DECREF(__pyx_7); __pyx_7 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":844 */
    __pyx_v_pll = __pyx_v_pll->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":846 */
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->integration = ccsGetIntegrationEnabled(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":848 */
  __pyx_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_UpdateProfiles); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 848; goto __pyx_L1;}
  __pyx_5 = PyObject_CallObject(__pyx_2, 0); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 848; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  Py_DECREF(__pyx_5); __pyx_5 = 0;

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  Py_XDECREF(__pyx_7);
  __Pyx_AddTraceback("compizconfig.Context.__new__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_nScreens);
  Py_DECREF(__pyx_v_i);
  Py_DECREF(__pyx_v_plugin);
  Py_DECREF(__pyx_v_cat);
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_screens);
  Py_DECREF(__pyx_v_plugins);
  Py_DECREF(__pyx_v_basic_metadata);
  return __pyx_r;
}

static void __pyx_f_12compizconfig_7Context___dealloc__(PyObject *__pyx_v_self); /*proto*/
static void __pyx_f_12compizconfig_7Context___dealloc__(PyObject *__pyx_v_self) {
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":852 */
  ccsContextDestroy(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);

  Py_DECREF(__pyx_v_self);
}

static PyObject *__pyx_f_12compizconfig_7Context_LoadPlugin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_LoadPlugin(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_plugin = 0;
  PyObject *__pyx_r;
  char (*__pyx_1);
  PyObject *__pyx_2 = 0;
  static char *__pyx_argnames[] = {"plugin",0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "O", __pyx_argnames, &__pyx_v_plugin)) return 0;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_plugin);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":855 */
  __pyx_1 = PyString_AsString(__pyx_v_plugin); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 855; goto __pyx_L1;}
  __pyx_2 = PyLong_FromUnsignedLong(ccsLoadPlugin(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext,__pyx_1)); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 855; goto __pyx_L1;}
  __pyx_r = __pyx_2;
  __pyx_2 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  __Pyx_AddTraceback("compizconfig.Context.LoadPlugin");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_plugin);
  return __pyx_r;
}

static PyObject *__pyx_n_ChangedSettings;
static PyObject *__pyx_n_Read;

static PyObject *__pyx_f_12compizconfig_7Context_ProcessEvents(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_ProcessEvents(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_flags = 0;
  PyObject *__pyx_r;
  unsigned int __pyx_1;
  PyObject *__pyx_2 = 0;
  int __pyx_3;
  PyObject *__pyx_4 = 0;
  static char *__pyx_argnames[] = {"flags",0};
  __pyx_v_flags = __pyx_k21;
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "|O", __pyx_argnames, &__pyx_v_flags)) return 0;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_flags);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":861 */
  __pyx_1 = PyInt_AsUnsignedLongMask(__pyx_v_flags); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 861; goto __pyx_L1;}
  ccsProcessEvents(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext,__pyx_1);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":862 */
  __pyx_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_ChangedSettings); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 862; goto __pyx_L1;}
  if (PyObject_Cmp(__pyx_2, Py_None, &__pyx_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 862; goto __pyx_L1;}
  __pyx_3 = __pyx_3 != 0;
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  if (__pyx_3) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":863 */
    __pyx_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_Read); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 863; goto __pyx_L1;}
    __pyx_4 = PyObject_CallObject(__pyx_2, 0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 863; goto __pyx_L1;}
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":864 */
    __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; goto __pyx_L1;}
    __pyx_r = __pyx_2;
    __pyx_2 = 0;
    goto __pyx_L0;
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":865 */
  __pyx_4 = __Pyx_GetName(__pyx_b, __pyx_n_False); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 865; goto __pyx_L1;}
  __pyx_r = __pyx_4;
  __pyx_4 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.Context.ProcessEvents");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_flags);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_Write(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_Write(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_onlyChanged = 0;
  PyObject *__pyx_r;
  int __pyx_1;
  static char *__pyx_argnames[] = {"onlyChanged",0};
  __pyx_v_onlyChanged = __pyx_k22;
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "|O", __pyx_argnames, &__pyx_v_onlyChanged)) return 0;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_onlyChanged);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":868 */
  __pyx_1 = PyObject_IsTrue(__pyx_v_onlyChanged); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 868; goto __pyx_L1;}
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":869 */
    ccsWriteChangedSettings(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);
    goto __pyx_L2;
  }
  /*else*/ {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":871 */
    ccsWriteSettings(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);
  }
  __pyx_L2:;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  __Pyx_AddTraceback("compizconfig.Context.Write");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_onlyChanged);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_Read(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_Read(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_r;
  static char *__pyx_argnames[] = {0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "", __pyx_argnames)) return 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":874 */
  ccsReadSettings(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);

  __pyx_r = Py_None; Py_INCREF(Py_None);
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_UpdateProfiles(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_UpdateProfiles(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_profileList);
  char (*__pyx_v_profileName);
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_backendList);
  struct __pyx_t_12compizconfig_CCSBackendInfo (*__pyx_v_backendInfo);
  PyObject *__pyx_v_info;
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  int __pyx_3;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  PyObject *__pyx_6 = 0;
  PyObject *__pyx_7 = 0;
  static char *__pyx_argnames[] = {0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "", __pyx_argnames)) return 0;
  Py_INCREF(__pyx_v_self);
  __pyx_v_info = Py_None; Py_INCREF(Py_None);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":877 */
  __pyx_1 = PyDict_New(); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 877; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->profiles);
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->profiles = __pyx_1;
  __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":878 */
  __pyx_1 = PyString_FromString(ccsGetProfile(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext)); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 878; goto __pyx_L1;}
  __pyx_2 = PyTuple_New(2); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 878; goto __pyx_L1;}
  Py_INCREF(__pyx_v_self);
  PyTuple_SET_ITEM(__pyx_2, 0, __pyx_v_self);
  PyTuple_SET_ITEM(__pyx_2, 1, __pyx_1);
  __pyx_1 = 0;
  __pyx_1 = PyObject_CallObject(((PyObject*)__pyx_ptype_12compizconfig_Profile), __pyx_2); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 878; goto __pyx_L1;}
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  Py_DECREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentProfile);
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentProfile = __pyx_1;
  __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":881 */
  __pyx_v_profileList = ccsGetExistingProfiles(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":882 */
  while (1) {
    __pyx_3 = (__pyx_v_profileList != NULL);
    if (!__pyx_3) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":883 */
    __pyx_v_profileName = ((char (*))__pyx_v_profileList->data);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":884 */
    __pyx_2 = PyString_FromString(__pyx_v_profileName); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 884; goto __pyx_L1;}
    __pyx_1 = PyTuple_New(2); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 884; goto __pyx_L1;}
    Py_INCREF(__pyx_v_self);
    PyTuple_SET_ITEM(__pyx_1, 0, __pyx_v_self);
    PyTuple_SET_ITEM(__pyx_1, 1, __pyx_2);
    __pyx_2 = 0;
    __pyx_2 = PyObject_CallObject(((PyObject*)__pyx_ptype_12compizconfig_Profile), __pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 884; goto __pyx_L1;}
    Py_DECREF(__pyx_1); __pyx_1 = 0;
    __pyx_1 = PyString_FromString(__pyx_v_profileName); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 884; goto __pyx_L1;}
    if (PyObject_SetItem(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->profiles, __pyx_1, __pyx_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 884; goto __pyx_L1;}
    Py_DECREF(__pyx_1); __pyx_1 = 0;
    Py_DECREF(__pyx_2); __pyx_2 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":885 */
    __pyx_v_profileList = __pyx_v_profileList->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":887 */
  __pyx_2 = PyDict_New(); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 887; goto __pyx_L1;}
  Py_DECREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->backends);
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->backends = __pyx_2;
  __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":890 */
  __pyx_v_backendList = ccsGetExistingBackends();

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":891 */
  while (1) {
    __pyx_3 = (__pyx_v_backendList != NULL);
    if (!__pyx_3) break;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":892 */
    __pyx_v_backendInfo = ((struct __pyx_t_12compizconfig_CCSBackendInfo (*))__pyx_v_backendList->data);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":893 */
    __pyx_1 = PyString_FromString(__pyx_v_backendInfo->name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 893; goto __pyx_L1;}
    __pyx_2 = PyString_FromString(__pyx_v_backendInfo->shortDesc); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 893; goto __pyx_L1;}
    __pyx_4 = PyString_FromString(__pyx_v_backendInfo->longDesc); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 893; goto __pyx_L1;}
    __pyx_5 = PyLong_FromUnsignedLong(__pyx_v_backendInfo->profileSupport); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 894; goto __pyx_L1;}
    __pyx_6 = PyLong_FromUnsignedLong(__pyx_v_backendInfo->integrationSupport); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 894; goto __pyx_L1;}
    __pyx_7 = PyTuple_New(5); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 893; goto __pyx_L1;}
    PyTuple_SET_ITEM(__pyx_7, 0, __pyx_1);
    PyTuple_SET_ITEM(__pyx_7, 1, __pyx_2);
    PyTuple_SET_ITEM(__pyx_7, 2, __pyx_4);
    PyTuple_SET_ITEM(__pyx_7, 3, __pyx_5);
    PyTuple_SET_ITEM(__pyx_7, 4, __pyx_6);
    __pyx_1 = 0;
    __pyx_2 = 0;
    __pyx_4 = 0;
    __pyx_5 = 0;
    __pyx_6 = 0;
    Py_DECREF(__pyx_v_info);
    __pyx_v_info = __pyx_7;
    __pyx_7 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":895 */
    __pyx_1 = PyTuple_New(2); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 895; goto __pyx_L1;}
    Py_INCREF(__pyx_v_self);
    PyTuple_SET_ITEM(__pyx_1, 0, __pyx_v_self);
    Py_INCREF(__pyx_v_info);
    PyTuple_SET_ITEM(__pyx_1, 1, __pyx_v_info);
    __pyx_2 = PyObject_CallObject(((PyObject*)__pyx_ptype_12compizconfig_Backend), __pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 895; goto __pyx_L1;}
    Py_DECREF(__pyx_1); __pyx_1 = 0;
    __pyx_4 = PyString_FromString(__pyx_v_backendInfo->name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 895; goto __pyx_L1;}
    if (PyObject_SetItem(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->backends, __pyx_4, __pyx_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 895; goto __pyx_L1;}
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    Py_DECREF(__pyx_2); __pyx_2 = 0;

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":896 */
    __pyx_v_backendList = __pyx_v_backendList->next;
  }

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":897 */
  __pyx_5 = PyString_FromString(ccsGetBackend(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext)); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 897; goto __pyx_L1;}
  __pyx_6 = PyObject_GetItem(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->backends, __pyx_5); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 897; goto __pyx_L1;}
  Py_DECREF(__pyx_5); __pyx_5 = 0;
  Py_DECREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentBackend);
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentBackend = __pyx_6;
  __pyx_6 = 0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  Py_XDECREF(__pyx_6);
  Py_XDECREF(__pyx_7);
  __Pyx_AddTraceback("compizconfig.Context.UpdateProfiles");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_info);
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_k32p;

static char (__pyx_k32[]) = "";
static char (__pyx_k33[]) = "";

static PyObject *__pyx_f_12compizconfig_7Context_ResetProfile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_ResetProfile(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  static char *__pyx_argnames[] = {0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "", __pyx_argnames)) return 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":900 */
  __pyx_1 = PyTuple_New(2); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 900; goto __pyx_L1;}
  Py_INCREF(__pyx_v_self);
  PyTuple_SET_ITEM(__pyx_1, 0, __pyx_v_self);
  Py_INCREF(__pyx_k32p);
  PyTuple_SET_ITEM(__pyx_1, 1, __pyx_k32p);
  __pyx_2 = PyObject_CallObject(((PyObject*)__pyx_ptype_12compizconfig_Profile), __pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 900; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentProfile);
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentProfile = __pyx_2;
  __pyx_2 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":901 */
  ccsSetProfile(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext,__pyx_k33);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":902 */
  ccsReadSettings(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  __Pyx_AddTraceback("compizconfig.Context.ResetProfile");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_Import(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_Import(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  char (*__pyx_2);
  PyObject *__pyx_3 = 0;
  unsigned int __pyx_4;
  PyObject *__pyx_5 = 0;
  static char *__pyx_argnames[] = {"path",0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "O", __pyx_argnames, &__pyx_v_path)) return 0;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_path);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":905 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 905; goto __pyx_L1;}
  __pyx_2 = PyString_AsString(__pyx_v_path); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 905; goto __pyx_L1;}
  __pyx_3 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 905; goto __pyx_L1;}
  __pyx_4 = PyInt_AsUnsignedLongMask(__pyx_3); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 905; goto __pyx_L1;}
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  __pyx_3 = PyLong_FromUnsignedLong(ccsImportFromFile(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext,__pyx_2,__pyx_4)); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 905; goto __pyx_L1;}
  __pyx_5 = PyTuple_New(1); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 905; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_5, 0, __pyx_3);
  __pyx_3 = 0;
  __pyx_3 = PyObject_CallObject(__pyx_1, __pyx_5); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 905; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_5); __pyx_5 = 0;
  __pyx_r = __pyx_3;
  __pyx_3 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_5);
  __Pyx_AddTraceback("compizconfig.Context.Import");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_path);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_Export(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_Export(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyObject *__pyx_v_path = 0;
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  char (*__pyx_2);
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  static char *__pyx_argnames[] = {"path",0};
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "O", __pyx_argnames, &__pyx_v_path)) return 0;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_path);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":908 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 908; goto __pyx_L1;}
  __pyx_2 = PyString_AsString(__pyx_v_path); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 908; goto __pyx_L1;}
  __pyx_3 = PyLong_FromUnsignedLong(ccsExportToFile(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext,__pyx_2)); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 908; goto __pyx_L1;}
  __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 908; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_4, 0, __pyx_3);
  __pyx_3 = 0;
  __pyx_3 = PyObject_CallObject(__pyx_1, __pyx_4); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 908; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_4); __pyx_4 = 0;
  __pyx_r = __pyx_3;
  __pyx_3 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  __Pyx_AddTraceback("compizconfig.Context.Export");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_path);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_7Plugins___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_7Plugins___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":912 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->plugins);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->plugins;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_10Categories___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_10Categories___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":915 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->categories);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->categories;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_14CurrentProfile___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_14CurrentProfile___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":918 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentProfile);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentProfile;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_n_Name;

static int __pyx_f_12compizconfig_7Context_14CurrentProfile___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_profile); /*proto*/
static int __pyx_f_12compizconfig_7Context_14CurrentProfile___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_profile) {
  int __pyx_r;
  PyObject *__pyx_1 = 0;
  char (*__pyx_2);
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_profile);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":920 */
  Py_INCREF(__pyx_v_profile);
  Py_DECREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentProfile);
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentProfile = __pyx_v_profile;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":921 */
  __pyx_1 = PyObject_GetAttr(__pyx_v_profile, __pyx_n_Name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 921; goto __pyx_L1;}
  __pyx_2 = PyString_AsString(__pyx_1); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 921; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  ccsSetProfile(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext,__pyx_2);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":922 */
  ccsReadSettings(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Context.CurrentProfile.__set__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_profile);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_8Profiles___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_8Profiles___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":925 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->profiles);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->profiles;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_14CurrentBackend___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_14CurrentBackend___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":928 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentBackend);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentBackend;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7Context_14CurrentBackend___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_backend); /*proto*/
static int __pyx_f_12compizconfig_7Context_14CurrentBackend___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_backend) {
  int __pyx_r;
  PyObject *__pyx_1 = 0;
  char (*__pyx_2);
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_backend);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":930 */
  Py_INCREF(__pyx_v_backend);
  Py_DECREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentBackend);
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->currentBackend = __pyx_v_backend;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":931 */
  __pyx_1 = PyObject_GetAttr(__pyx_v_backend, __pyx_n_Name); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 931; goto __pyx_L1;}
  __pyx_2 = PyString_AsString(__pyx_1); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 931; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  ccsSetBackend(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext,__pyx_2);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":932 */
  ccsReadSettings(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Context.CurrentBackend.__set__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_backend);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_8Backends___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_8Backends___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":935 */
  Py_INCREF(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->backends);
  __pyx_r = ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->backends;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_15ChangedSettings___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_15ChangedSettings___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":938 */
  __pyx_1 = __pyx_f_12compizconfig_SettingListToList(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self),((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext->changedSettings); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 938; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Context.ChangedSettings.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7Context_15ChangedSettings___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
static int __pyx_f_12compizconfig_7Context_15ChangedSettings___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
  struct __pyx_t_12compizconfig_CCSList (*__pyx_v_settingList);
  int __pyx_r;
  int __pyx_1;
  PyObject *__pyx_2 = 0;
  unsigned int __pyx_3;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_value);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":941 */
  __pyx_1 = (((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext->changedSettings != NULL);
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":942 */
    __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_False); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 942; goto __pyx_L1;}
    __pyx_3 = PyInt_AsUnsignedLongMask(__pyx_2); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 942; goto __pyx_L1;}
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext->changedSettings = ccsSettingListFree(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext->changedSettings,__pyx_3);
    goto __pyx_L2;
  }
  __pyx_L2:;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":943 */
  if (PyObject_Cmp(__pyx_v_value, Py_None, &__pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; goto __pyx_L1;}
  __pyx_1 = __pyx_1 != 0;
  if (__pyx_1) {
    __pyx_2 = __Pyx_GetName(__pyx_b, __pyx_n_len); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; goto __pyx_L1;}
    __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; goto __pyx_L1;}
    Py_INCREF(__pyx_v_value);
    PyTuple_SET_ITEM(__pyx_4, 0, __pyx_v_value);
    __pyx_5 = PyObject_CallObject(__pyx_2, __pyx_4); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; goto __pyx_L1;}
    Py_DECREF(__pyx_2); __pyx_2 = 0;
    Py_DECREF(__pyx_4); __pyx_4 = 0;
    __pyx_2 = PyInt_FromLong(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; goto __pyx_L1;}
    if (PyObject_Cmp(__pyx_5, __pyx_2, &__pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; goto __pyx_L1;}
    __pyx_1 = __pyx_1 != 0;
    Py_DECREF(__pyx_5); __pyx_5 = 0;
    Py_DECREF(__pyx_2); __pyx_2 = 0;
  }
  if (__pyx_1) {

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":944 */
    __pyx_v_settingList = __pyx_f_12compizconfig_ListToSettingList(__pyx_v_value);

    /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":945 */
    ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext->changedSettings = __pyx_v_settingList;
    goto __pyx_L3;
  }
  __pyx_L3:;

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  __Pyx_AddTraceback("compizconfig.Context.ChangedSettings.__set__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_value);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_8AutoSort___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_8AutoSort___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":949 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 949; goto __pyx_L1;}
  __pyx_2 = PyLong_FromUnsignedLong(ccsGetPluginListAutoSort(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext)); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 949; goto __pyx_L1;}
  __pyx_3 = PyTuple_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 949; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_3, 0, __pyx_2);
  __pyx_2 = 0;
  __pyx_2 = PyObject_CallObject(__pyx_1, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 949; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  __pyx_r = __pyx_2;
  __pyx_2 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  __Pyx_AddTraceback("compizconfig.Context.AutoSort.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7Context_8AutoSort___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
static int __pyx_f_12compizconfig_7Context_8AutoSort___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
  int __pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  unsigned int __pyx_4;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_value);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":951 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 951; goto __pyx_L1;}
  __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 951; goto __pyx_L1;}
  Py_INCREF(__pyx_v_value);
  PyTuple_SET_ITEM(__pyx_2, 0, __pyx_v_value);
  __pyx_3 = PyObject_CallObject(__pyx_1, __pyx_2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 951; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_2); __pyx_2 = 0;
  __pyx_4 = PyInt_AsUnsignedLongMask(__pyx_3); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 951; goto __pyx_L1;}
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  ccsSetPluginListAutoSort(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext,__pyx_4);

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  __Pyx_AddTraceback("compizconfig.Context.AutoSort.__set__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_value);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_8NScreens___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_8NScreens___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":954 */
  __pyx_1 = PyInt_FromLong(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->nScreens); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 954; goto __pyx_L1;}
  __pyx_r = __pyx_1;
  __pyx_1 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  __Pyx_AddTraceback("compizconfig.Context.NScreens.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static PyObject *__pyx_f_12compizconfig_7Context_11Integration___get__(PyObject *__pyx_v_self); /*proto*/
static PyObject *__pyx_f_12compizconfig_7Context_11Integration___get__(PyObject *__pyx_v_self) {
  PyObject *__pyx_r;
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  Py_INCREF(__pyx_v_self);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":957 */
  __pyx_1 = __Pyx_GetName(__pyx_b, __pyx_n_bool); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 957; goto __pyx_L1;}
  __pyx_2 = PyLong_FromUnsignedLong(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->integration); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 957; goto __pyx_L1;}
  __pyx_3 = PyTuple_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 957; goto __pyx_L1;}
  PyTuple_SET_ITEM(__pyx_3, 0, __pyx_2);
  __pyx_2 = 0;
  __pyx_2 = PyObject_CallObject(__pyx_1, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 957; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;
  Py_DECREF(__pyx_3); __pyx_3 = 0;
  __pyx_r = __pyx_2;
  __pyx_2 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; Py_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  __Pyx_AddTraceback("compizconfig.Context.Integration.__get__");
  __pyx_r = 0;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  return __pyx_r;
}

static int __pyx_f_12compizconfig_7Context_11Integration___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
static int __pyx_f_12compizconfig_7Context_11Integration___set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
  int __pyx_r;
  unsigned int __pyx_1;
  Py_INCREF(__pyx_v_self);
  Py_INCREF(__pyx_v_value);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":959 */
  __pyx_1 = PyInt_AsUnsignedLongMask(__pyx_v_value); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 959; goto __pyx_L1;}
  ((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->integration = __pyx_1;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":960 */
  __pyx_1 = PyInt_AsUnsignedLongMask(__pyx_v_value); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 960; goto __pyx_L1;}
  ccsSetIntegrationEnabled(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext,__pyx_1);

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":961 */
  ccsReadSettings(((struct __pyx_obj_12compizconfig_Context *)__pyx_v_self)->ccsContext);

  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1:;
  __Pyx_AddTraceback("compizconfig.Context.Integration.__set__");
  __pyx_r = -1;
  __pyx_L0:;
  Py_DECREF(__pyx_v_self);
  Py_DECREF(__pyx_v_value);
  return __pyx_r;
}

static __Pyx_InternTabEntry __pyx_intern_tab[] = {
  {&__pyx_n_Action, "Action"},
  {&__pyx_n_Bool, "Bool"},
  {&__pyx_n_Button0, "Button0"},
  {&__pyx_n_ChangedSettings, "ChangedSettings"},
  {&__pyx_n_Color, "Color"},
  {&__pyx_n_ConflictFeature, "ConflictFeature"},
  {&__pyx_n_ConflictPlugin, "ConflictPlugin"},
  {&__pyx_n_ConflictTypeString, "ConflictTypeString"},
  {&__pyx_n_DisableConflicts, "DisableConflicts"},
  {&__pyx_n_Display, "Display"},
  {&__pyx_n_EnableConflicts, "EnableConflicts"},
  {&__pyx_n_Enabled, "Enabled"},
  {&__pyx_n_False, "False"},
  {&__pyx_n_FeatureNeeded, "FeatureNeeded"},
  {&__pyx_n_Float, "Float"},
  {&__pyx_n_Int, "Int"},
  {&__pyx_n_Invalid, "Invalid"},
  {&__pyx_n_List, "List"},
  {&__pyx_n_LoadPlugin, "LoadPlugin"},
  {&__pyx_n_Match, "Match"},
  {&__pyx_n_NScreens, "NScreens"},
  {&__pyx_n_Name, "Name"},
  {&__pyx_n_None, "None"},
  {&__pyx_n_PluginError, "PluginError"},
  {&__pyx_n_PluginNeeded, "PluginNeeded"},
  {&__pyx_n_Plugins, "Plugins"},
  {&__pyx_n_ProcessEventsNoGlibMainLoopMask, "ProcessEventsNoGlibMainLoopMask"},
  {&__pyx_n_Read, "Read"},
  {&__pyx_n_RequiresFeature, "RequiresFeature"},
  {&__pyx_n_RequiresPlugin, "RequiresPlugin"},
  {&__pyx_n_Screens, "Screens"},
  {&__pyx_n_SettingTypeString, "SettingTypeString"},
  {&__pyx_n_String, "String"},
  {&__pyx_n_True, "True"},
  {&__pyx_n_Unhandled, "Unhandled"},
  {&__pyx_n_Update, "Update"},
  {&__pyx_n_UpdateProfiles, "UpdateProfiles"},
  {&__pyx_n_append, "append"},
  {&__pyx_n_bool, "bool"},
  {&__pyx_n_has_key, "has_key"},
  {&__pyx_n_int, "int"},
  {&__pyx_n_len, "len"},
  {&__pyx_n_range, "range"},
  {&__pyx_n_split, "split"},
  {&__pyx_n_str, "str"},
  {0, 0}
};

static __Pyx_StringTabEntry __pyx_string_tab[] = {
  {&__pyx_k30p, __pyx_k30, sizeof(__pyx_k30)},
  {&__pyx_k31p, __pyx_k31, sizeof(__pyx_k31)},
  {&__pyx_k32p, __pyx_k32, sizeof(__pyx_k32)},
  {0, 0, 0}
};

static PyObject *__pyx_tp_new_12compizconfig_Context(PyTypeObject *t, PyObject *a, PyObject *k) {
  PyObject *o = (*t->tp_alloc)(t, 0);
  struct __pyx_obj_12compizconfig_Context *p = (struct __pyx_obj_12compizconfig_Context *)o;
  p->plugins = Py_None; Py_INCREF(Py_None);
  p->categories = Py_None; Py_INCREF(Py_None);
  p->profiles = Py_None; Py_INCREF(Py_None);
  p->currentProfile = Py_None; Py_INCREF(Py_None);
  p->backends = Py_None; Py_INCREF(Py_None);
  p->currentBackend = Py_None; Py_INCREF(Py_None);
  if (__pyx_f_12compizconfig_7Context___new__(o, a, k) < 0) {
    Py_DECREF(o); o = 0;
  }
  return o;
}

static void __pyx_tp_dealloc_12compizconfig_Context(PyObject *o) {
  struct __pyx_obj_12compizconfig_Context *p = (struct __pyx_obj_12compizconfig_Context *)o;
  {
    PyObject *etype, *eval, *etb;
    PyErr_Fetch(&etype, &eval, &etb);
    ++o->ob_refcnt;
    __pyx_f_12compizconfig_7Context___dealloc__(o);
    if (PyErr_Occurred()) PyErr_WriteUnraisable(o);
    --o->ob_refcnt;
    PyErr_Restore(etype, eval, etb);
  }
  Py_XDECREF(p->plugins);
  Py_XDECREF(p->categories);
  Py_XDECREF(p->profiles);
  Py_XDECREF(p->currentProfile);
  Py_XDECREF(p->backends);
  Py_XDECREF(p->currentBackend);
  (*o->ob_type->tp_free)(o);
}

static int __pyx_tp_traverse_12compizconfig_Context(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_obj_12compizconfig_Context *p = (struct __pyx_obj_12compizconfig_Context *)o;
  if (p->plugins) {
    e = (*v)(p->plugins, a); if (e) return e;
  }
  if (p->categories) {
    e = (*v)(p->categories, a); if (e) return e;
  }
  if (p->profiles) {
    e = (*v)(p->profiles, a); if (e) return e;
  }
  if (p->currentProfile) {
    e = (*v)(p->currentProfile, a); if (e) return e;
  }
  if (p->backends) {
    e = (*v)(p->backends, a); if (e) return e;
  }
  if (p->currentBackend) {
    e = (*v)(p->currentBackend, a); if (e) return e;
  }
  return 0;
}

static int __pyx_tp_clear_12compizconfig_Context(PyObject *o) {
  struct __pyx_obj_12compizconfig_Context *p = (struct __pyx_obj_12compizconfig_Context *)o;
  Py_XDECREF(p->plugins);
  p->plugins = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->categories);
  p->categories = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->profiles);
  p->profiles = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->currentProfile);
  p->currentProfile = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->backends);
  p->backends = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->currentBackend);
  p->currentBackend = Py_None; Py_INCREF(Py_None);
  return 0;
}

static PyObject *__pyx_getprop_12compizconfig_7Context_Plugins(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_7Plugins___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Context_Categories(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_10Categories___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Context_CurrentProfile(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_14CurrentProfile___get__(o);
}

static int __pyx_setprop_12compizconfig_7Context_CurrentProfile(PyObject *o, PyObject *v, void *x) {
  if (v) {
    return __pyx_f_12compizconfig_7Context_14CurrentProfile___set__(o, v);
  }
  else {
    PyErr_SetString(PyExc_NotImplementedError, "__del__");
    return -1;
  }
}

static PyObject *__pyx_getprop_12compizconfig_7Context_Profiles(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_8Profiles___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Context_CurrentBackend(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_14CurrentBackend___get__(o);
}

static int __pyx_setprop_12compizconfig_7Context_CurrentBackend(PyObject *o, PyObject *v, void *x) {
  if (v) {
    return __pyx_f_12compizconfig_7Context_14CurrentBackend___set__(o, v);
  }
  else {
    PyErr_SetString(PyExc_NotImplementedError, "__del__");
    return -1;
  }
}

static PyObject *__pyx_getprop_12compizconfig_7Context_Backends(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_8Backends___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Context_ChangedSettings(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_15ChangedSettings___get__(o);
}

static int __pyx_setprop_12compizconfig_7Context_ChangedSettings(PyObject *o, PyObject *v, void *x) {
  if (v) {
    return __pyx_f_12compizconfig_7Context_15ChangedSettings___set__(o, v);
  }
  else {
    PyErr_SetString(PyExc_NotImplementedError, "__del__");
    return -1;
  }
}

static PyObject *__pyx_getprop_12compizconfig_7Context_AutoSort(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_8AutoSort___get__(o);
}

static int __pyx_setprop_12compizconfig_7Context_AutoSort(PyObject *o, PyObject *v, void *x) {
  if (v) {
    return __pyx_f_12compizconfig_7Context_8AutoSort___set__(o, v);
  }
  else {
    PyErr_SetString(PyExc_NotImplementedError, "__del__");
    return -1;
  }
}

static PyObject *__pyx_getprop_12compizconfig_7Context_NScreens(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_8NScreens___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Context_Integration(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Context_11Integration___get__(o);
}

static int __pyx_setprop_12compizconfig_7Context_Integration(PyObject *o, PyObject *v, void *x) {
  if (v) {
    return __pyx_f_12compizconfig_7Context_11Integration___set__(o, v);
  }
  else {
    PyErr_SetString(PyExc_NotImplementedError, "__del__");
    return -1;
  }
}

static struct PyMethodDef __pyx_methods_12compizconfig_Context[] = {
  {"LoadPlugin", (PyCFunction)__pyx_f_12compizconfig_7Context_LoadPlugin, METH_VARARGS|METH_KEYWORDS, 0},
  {"ProcessEvents", (PyCFunction)__pyx_f_12compizconfig_7Context_ProcessEvents, METH_VARARGS|METH_KEYWORDS, 0},
  {"Write", (PyCFunction)__pyx_f_12compizconfig_7Context_Write, METH_VARARGS|METH_KEYWORDS, 0},
  {"Read", (PyCFunction)__pyx_f_12compizconfig_7Context_Read, METH_VARARGS|METH_KEYWORDS, 0},
  {"UpdateProfiles", (PyCFunction)__pyx_f_12compizconfig_7Context_UpdateProfiles, METH_VARARGS|METH_KEYWORDS, 0},
  {"ResetProfile", (PyCFunction)__pyx_f_12compizconfig_7Context_ResetProfile, METH_VARARGS|METH_KEYWORDS, 0},
  {"Import", (PyCFunction)__pyx_f_12compizconfig_7Context_Import, METH_VARARGS|METH_KEYWORDS, 0},
  {"Export", (PyCFunction)__pyx_f_12compizconfig_7Context_Export, METH_VARARGS|METH_KEYWORDS, 0},
  {0, 0, 0, 0}
};

static struct PyGetSetDef __pyx_getsets_12compizconfig_Context[] = {
  {"Plugins", __pyx_getprop_12compizconfig_7Context_Plugins, 0, 0, 0},
  {"Categories", __pyx_getprop_12compizconfig_7Context_Categories, 0, 0, 0},
  {"CurrentProfile", __pyx_getprop_12compizconfig_7Context_CurrentProfile, __pyx_setprop_12compizconfig_7Context_CurrentProfile, 0, 0},
  {"Profiles", __pyx_getprop_12compizconfig_7Context_Profiles, 0, 0, 0},
  {"CurrentBackend", __pyx_getprop_12compizconfig_7Context_CurrentBackend, __pyx_setprop_12compizconfig_7Context_CurrentBackend, 0, 0},
  {"Backends", __pyx_getprop_12compizconfig_7Context_Backends, 0, 0, 0},
  {"ChangedSettings", __pyx_getprop_12compizconfig_7Context_ChangedSettings, __pyx_setprop_12compizconfig_7Context_ChangedSettings, 0, 0},
  {"AutoSort", __pyx_getprop_12compizconfig_7Context_AutoSort, __pyx_setprop_12compizconfig_7Context_AutoSort, 0, 0},
  {"NScreens", __pyx_getprop_12compizconfig_7Context_NScreens, 0, 0, 0},
  {"Integration", __pyx_getprop_12compizconfig_7Context_Integration, __pyx_setprop_12compizconfig_7Context_Integration, 0, 0},
  {0, 0, 0, 0, 0}
};

static PyNumberMethods __pyx_tp_as_number_Context = {
  0, /*nb_add*/
  0, /*nb_subtract*/
  0, /*nb_multiply*/
  0, /*nb_divide*/
  0, /*nb_remainder*/
  0, /*nb_divmod*/
  0, /*nb_power*/
  0, /*nb_negative*/
  0, /*nb_positive*/
  0, /*nb_absolute*/
  0, /*nb_nonzero*/
  0, /*nb_invert*/
  0, /*nb_lshift*/
  0, /*nb_rshift*/
  0, /*nb_and*/
  0, /*nb_xor*/
  0, /*nb_or*/
  0, /*nb_coerce*/
  0, /*nb_int*/
  0, /*nb_long*/
  0, /*nb_float*/
  0, /*nb_oct*/
  0, /*nb_hex*/
  0, /*nb_inplace_add*/
  0, /*nb_inplace_subtract*/
  0, /*nb_inplace_multiply*/
  0, /*nb_inplace_divide*/
  0, /*nb_inplace_remainder*/
  0, /*nb_inplace_power*/
  0, /*nb_inplace_lshift*/
  0, /*nb_inplace_rshift*/
  0, /*nb_inplace_and*/
  0, /*nb_inplace_xor*/
  0, /*nb_inplace_or*/
  0, /*nb_floor_divide*/
  0, /*nb_true_divide*/
  0, /*nb_inplace_floor_divide*/
  0, /*nb_inplace_true_divide*/
};

static PySequenceMethods __pyx_tp_as_sequence_Context = {
  0, /*sq_length*/
  0, /*sq_concat*/
  0, /*sq_repeat*/
  0, /*sq_item*/
  0, /*sq_slice*/
  0, /*sq_ass_item*/
  0, /*sq_ass_slice*/
  0, /*sq_contains*/
  0, /*sq_inplace_concat*/
  0, /*sq_inplace_repeat*/
};

static PyMappingMethods __pyx_tp_as_mapping_Context = {
  0, /*mp_length*/
  0, /*mp_subscript*/
  0, /*mp_ass_subscript*/
};

static PyBufferProcs __pyx_tp_as_buffer_Context = {
  0, /*bf_getreadbuffer*/
  0, /*bf_getwritebuffer*/
  0, /*bf_getsegcount*/
  0, /*bf_getcharbuffer*/
};

PyTypeObject __pyx_type_12compizconfig_Context = {
  PyObject_HEAD_INIT(0)
  0, /*ob_size*/
  "compizconfig.Context", /*tp_name*/
  sizeof(struct __pyx_obj_12compizconfig_Context), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_12compizconfig_Context, /*tp_dealloc*/
  0, /*tp_print*/
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_compare*/
  0, /*tp_repr*/
  &__pyx_tp_as_number_Context, /*tp_as_number*/
  &__pyx_tp_as_sequence_Context, /*tp_as_sequence*/
  &__pyx_tp_as_mapping_Context, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  &__pyx_tp_as_buffer_Context, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_12compizconfig_Context, /*tp_traverse*/
  __pyx_tp_clear_12compizconfig_Context, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  __pyx_methods_12compizconfig_Context, /*tp_methods*/
  0, /*tp_members*/
  __pyx_getsets_12compizconfig_Context, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  0, /*tp_dictoffset*/
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_12compizconfig_Context, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
};

static PyObject *__pyx_tp_new_12compizconfig_Plugin(PyTypeObject *t, PyObject *a, PyObject *k) {
  PyObject *o = (*t->tp_alloc)(t, 0);
  struct __pyx_obj_12compizconfig_Plugin *p = (struct __pyx_obj_12compizconfig_Plugin *)o;
  p->context = ((struct __pyx_obj_12compizconfig_Context *)Py_None); Py_INCREF(Py_None);
  p->screens = Py_None; Py_INCREF(Py_None);
  p->display = Py_None; Py_INCREF(Py_None);
  p->groups = Py_None; Py_INCREF(Py_None);
  p->loaded = Py_None; Py_INCREF(Py_None);
  p->ranking = Py_None; Py_INCREF(Py_None);
  if (__pyx_f_12compizconfig_6Plugin___new__(o, a, k) < 0) {
    Py_DECREF(o); o = 0;
  }
  return o;
}

static void __pyx_tp_dealloc_12compizconfig_Plugin(PyObject *o) {
  struct __pyx_obj_12compizconfig_Plugin *p = (struct __pyx_obj_12compizconfig_Plugin *)o;
  Py_XDECREF(((PyObject *)p->context));
  Py_XDECREF(p->screens);
  Py_XDECREF(p->display);
  Py_XDECREF(p->groups);
  Py_XDECREF(p->loaded);
  Py_XDECREF(p->ranking);
  (*o->ob_type->tp_free)(o);
}

static int __pyx_tp_traverse_12compizconfig_Plugin(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_obj_12compizconfig_Plugin *p = (struct __pyx_obj_12compizconfig_Plugin *)o;
  if (p->context) {
    e = (*v)(((PyObject*)p->context), a); if (e) return e;
  }
  if (p->screens) {
    e = (*v)(p->screens, a); if (e) return e;
  }
  if (p->display) {
    e = (*v)(p->display, a); if (e) return e;
  }
  if (p->groups) {
    e = (*v)(p->groups, a); if (e) return e;
  }
  if (p->loaded) {
    e = (*v)(p->loaded, a); if (e) return e;
  }
  if (p->ranking) {
    e = (*v)(p->ranking, a); if (e) return e;
  }
  return 0;
}

static int __pyx_tp_clear_12compizconfig_Plugin(PyObject *o) {
  struct __pyx_obj_12compizconfig_Plugin *p = (struct __pyx_obj_12compizconfig_Plugin *)o;
  Py_XDECREF(((PyObject *)p->context));
  p->context = ((struct __pyx_obj_12compizconfig_Context *)Py_None); Py_INCREF(Py_None);
  Py_XDECREF(p->screens);
  p->screens = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->display);
  p->display = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->groups);
  p->groups = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->loaded);
  p->loaded = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->ranking);
  p->ranking = Py_None; Py_INCREF(Py_None);
  return 0;
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_Context(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_7Context___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_Groups(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_6Groups___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_Display(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_7Display___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_Screens(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_7Screens___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_Ranking(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_7Ranking___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_Name(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_4Name___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_ShortDesc(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_9ShortDesc___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_LongDesc(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_8LongDesc___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_Category(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_8Category___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_Features(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_8Features___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_Enabled(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_7Enabled___get__(o);
}

static int __pyx_setprop_12compizconfig_6Plugin_Enabled(PyObject *o, PyObject *v, void *x) {
  if (v) {
    return __pyx_f_12compizconfig_6Plugin_7Enabled___set__(o, v);
  }
  else {
    PyErr_SetString(PyExc_NotImplementedError, "__del__");
    return -1;
  }
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_EnableConflicts(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_15EnableConflicts___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_6Plugin_DisableConflicts(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_6Plugin_16DisableConflicts___get__(o);
}

static struct PyMethodDef __pyx_methods_12compizconfig_Plugin[] = {
  {"Update", (PyCFunction)__pyx_f_12compizconfig_6Plugin_Update, METH_VARARGS|METH_KEYWORDS, 0},
  {0, 0, 0, 0}
};

static struct PyGetSetDef __pyx_getsets_12compizconfig_Plugin[] = {
  {"Context", __pyx_getprop_12compizconfig_6Plugin_Context, 0, 0, 0},
  {"Groups", __pyx_getprop_12compizconfig_6Plugin_Groups, 0, 0, 0},
  {"Display", __pyx_getprop_12compizconfig_6Plugin_Display, 0, 0, 0},
  {"Screens", __pyx_getprop_12compizconfig_6Plugin_Screens, 0, 0, 0},
  {"Ranking", __pyx_getprop_12compizconfig_6Plugin_Ranking, 0, 0, 0},
  {"Name", __pyx_getprop_12compizconfig_6Plugin_Name, 0, 0, 0},
  {"ShortDesc", __pyx_getprop_12compizconfig_6Plugin_ShortDesc, 0, 0, 0},
  {"LongDesc", __pyx_getprop_12compizconfig_6Plugin_LongDesc, 0, 0, 0},
  {"Category", __pyx_getprop_12compizconfig_6Plugin_Category, 0, 0, 0},
  {"Features", __pyx_getprop_12compizconfig_6Plugin_Features, 0, 0, 0},
  {"Enabled", __pyx_getprop_12compizconfig_6Plugin_Enabled, __pyx_setprop_12compizconfig_6Plugin_Enabled, 0, 0},
  {"EnableConflicts", __pyx_getprop_12compizconfig_6Plugin_EnableConflicts, 0, 0, 0},
  {"DisableConflicts", __pyx_getprop_12compizconfig_6Plugin_DisableConflicts, 0, 0, 0},
  {0, 0, 0, 0, 0}
};

static PyNumberMethods __pyx_tp_as_number_Plugin = {
  0, /*nb_add*/
  0, /*nb_subtract*/
  0, /*nb_multiply*/
  0, /*nb_divide*/
  0, /*nb_remainder*/
  0, /*nb_divmod*/
  0, /*nb_power*/
  0, /*nb_negative*/
  0, /*nb_positive*/
  0, /*nb_absolute*/
  0, /*nb_nonzero*/
  0, /*nb_invert*/
  0, /*nb_lshift*/
  0, /*nb_rshift*/
  0, /*nb_and*/
  0, /*nb_xor*/
  0, /*nb_or*/
  0, /*nb_coerce*/
  0, /*nb_int*/
  0, /*nb_long*/
  0, /*nb_float*/
  0, /*nb_oct*/
  0, /*nb_hex*/
  0, /*nb_inplace_add*/
  0, /*nb_inplace_subtract*/
  0, /*nb_inplace_multiply*/
  0, /*nb_inplace_divide*/
  0, /*nb_inplace_remainder*/
  0, /*nb_inplace_power*/
  0, /*nb_inplace_lshift*/
  0, /*nb_inplace_rshift*/
  0, /*nb_inplace_and*/
  0, /*nb_inplace_xor*/
  0, /*nb_inplace_or*/
  0, /*nb_floor_divide*/
  0, /*nb_true_divide*/
  0, /*nb_inplace_floor_divide*/
  0, /*nb_inplace_true_divide*/
};

static PySequenceMethods __pyx_tp_as_sequence_Plugin = {
  0, /*sq_length*/
  0, /*sq_concat*/
  0, /*sq_repeat*/
  0, /*sq_item*/
  0, /*sq_slice*/
  0, /*sq_ass_item*/
  0, /*sq_ass_slice*/
  0, /*sq_contains*/
  0, /*sq_inplace_concat*/
  0, /*sq_inplace_repeat*/
};

static PyMappingMethods __pyx_tp_as_mapping_Plugin = {
  0, /*mp_length*/
  0, /*mp_subscript*/
  0, /*mp_ass_subscript*/
};

static PyBufferProcs __pyx_tp_as_buffer_Plugin = {
  0, /*bf_getreadbuffer*/
  0, /*bf_getwritebuffer*/
  0, /*bf_getsegcount*/
  0, /*bf_getcharbuffer*/
};

PyTypeObject __pyx_type_12compizconfig_Plugin = {
  PyObject_HEAD_INIT(0)
  0, /*ob_size*/
  "compizconfig.Plugin", /*tp_name*/
  sizeof(struct __pyx_obj_12compizconfig_Plugin), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_12compizconfig_Plugin, /*tp_dealloc*/
  0, /*tp_print*/
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_compare*/
  0, /*tp_repr*/
  &__pyx_tp_as_number_Plugin, /*tp_as_number*/
  &__pyx_tp_as_sequence_Plugin, /*tp_as_sequence*/
  &__pyx_tp_as_mapping_Plugin, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  &__pyx_tp_as_buffer_Plugin, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_12compizconfig_Plugin, /*tp_traverse*/
  __pyx_tp_clear_12compizconfig_Plugin, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  __pyx_methods_12compizconfig_Plugin, /*tp_methods*/
  0, /*tp_members*/
  __pyx_getsets_12compizconfig_Plugin, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  0, /*tp_dictoffset*/
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_12compizconfig_Plugin, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
};

static PyObject *__pyx_tp_new_12compizconfig_Setting(PyTypeObject *t, PyObject *a, PyObject *k) {
  PyObject *o = (*t->tp_alloc)(t, 0);
  struct __pyx_obj_12compizconfig_Setting *p = (struct __pyx_obj_12compizconfig_Setting *)o;
  p->info = Py_None; Py_INCREF(Py_None);
  p->plugin = ((struct __pyx_obj_12compizconfig_Plugin *)Py_None); Py_INCREF(Py_None);
  if (__pyx_f_12compizconfig_7Setting___new__(o, a, k) < 0) {
    Py_DECREF(o); o = 0;
  }
  return o;
}

static void __pyx_tp_dealloc_12compizconfig_Setting(PyObject *o) {
  struct __pyx_obj_12compizconfig_Setting *p = (struct __pyx_obj_12compizconfig_Setting *)o;
  Py_XDECREF(p->info);
  Py_XDECREF(((PyObject *)p->plugin));
  (*o->ob_type->tp_free)(o);
}

static int __pyx_tp_traverse_12compizconfig_Setting(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_obj_12compizconfig_Setting *p = (struct __pyx_obj_12compizconfig_Setting *)o;
  if (p->info) {
    e = (*v)(p->info, a); if (e) return e;
  }
  if (p->plugin) {
    e = (*v)(((PyObject*)p->plugin), a); if (e) return e;
  }
  return 0;
}

static int __pyx_tp_clear_12compizconfig_Setting(PyObject *o) {
  struct __pyx_obj_12compizconfig_Setting *p = (struct __pyx_obj_12compizconfig_Setting *)o;
  Py_XDECREF(p->info);
  p->info = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(((PyObject *)p->plugin));
  p->plugin = ((struct __pyx_obj_12compizconfig_Plugin *)Py_None); Py_INCREF(Py_None);
  return 0;
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_Plugin(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_6Plugin___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_Name(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_4Name___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_ShortDesc(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_9ShortDesc___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_LongDesc(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_8LongDesc___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_Group(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_5Group___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_SubGroup(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_8SubGroup___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_Type(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_4Type___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_Info(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_4Info___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_Hints(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_5Hints___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_IsDefault(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_9IsDefault___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_DefaultValue(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_12DefaultValue___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_Value(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_5Value___get__(o);
}

static int __pyx_setprop_12compizconfig_7Setting_Value(PyObject *o, PyObject *v, void *x) {
  if (v) {
    return __pyx_f_12compizconfig_7Setting_5Value___set__(o, v);
  }
  else {
    PyErr_SetString(PyExc_NotImplementedError, "__del__");
    return -1;
  }
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_Integrated(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_10Integrated___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Setting_ReadOnly(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Setting_8ReadOnly___get__(o);
}

static struct PyMethodDef __pyx_methods_12compizconfig_Setting[] = {
  {"Reset", (PyCFunction)__pyx_f_12compizconfig_7Setting_Reset, METH_VARARGS|METH_KEYWORDS, 0},
  {0, 0, 0, 0}
};

static struct PyGetSetDef __pyx_getsets_12compizconfig_Setting[] = {
  {"Plugin", __pyx_getprop_12compizconfig_7Setting_Plugin, 0, 0, 0},
  {"Name", __pyx_getprop_12compizconfig_7Setting_Name, 0, 0, 0},
  {"ShortDesc", __pyx_getprop_12compizconfig_7Setting_ShortDesc, 0, 0, 0},
  {"LongDesc", __pyx_getprop_12compizconfig_7Setting_LongDesc, 0, 0, 0},
  {"Group", __pyx_getprop_12compizconfig_7Setting_Group, 0, 0, 0},
  {"SubGroup", __pyx_getprop_12compizconfig_7Setting_SubGroup, 0, 0, 0},
  {"Type", __pyx_getprop_12compizconfig_7Setting_Type, 0, 0, 0},
  {"Info", __pyx_getprop_12compizconfig_7Setting_Info, 0, 0, 0},
  {"Hints", __pyx_getprop_12compizconfig_7Setting_Hints, 0, 0, 0},
  {"IsDefault", __pyx_getprop_12compizconfig_7Setting_IsDefault, 0, 0, 0},
  {"DefaultValue", __pyx_getprop_12compizconfig_7Setting_DefaultValue, 0, 0, 0},
  {"Value", __pyx_getprop_12compizconfig_7Setting_Value, __pyx_setprop_12compizconfig_7Setting_Value, 0, 0},
  {"Integrated", __pyx_getprop_12compizconfig_7Setting_Integrated, 0, 0, 0},
  {"ReadOnly", __pyx_getprop_12compizconfig_7Setting_ReadOnly, 0, 0, 0},
  {0, 0, 0, 0, 0}
};

static PyNumberMethods __pyx_tp_as_number_Setting = {
  0, /*nb_add*/
  0, /*nb_subtract*/
  0, /*nb_multiply*/
  0, /*nb_divide*/
  0, /*nb_remainder*/
  0, /*nb_divmod*/
  0, /*nb_power*/
  0, /*nb_negative*/
  0, /*nb_positive*/
  0, /*nb_absolute*/
  0, /*nb_nonzero*/
  0, /*nb_invert*/
  0, /*nb_lshift*/
  0, /*nb_rshift*/
  0, /*nb_and*/
  0, /*nb_xor*/
  0, /*nb_or*/
  0, /*nb_coerce*/
  0, /*nb_int*/
  0, /*nb_long*/
  0, /*nb_float*/
  0, /*nb_oct*/
  0, /*nb_hex*/
  0, /*nb_inplace_add*/
  0, /*nb_inplace_subtract*/
  0, /*nb_inplace_multiply*/
  0, /*nb_inplace_divide*/
  0, /*nb_inplace_remainder*/
  0, /*nb_inplace_power*/
  0, /*nb_inplace_lshift*/
  0, /*nb_inplace_rshift*/
  0, /*nb_inplace_and*/
  0, /*nb_inplace_xor*/
  0, /*nb_inplace_or*/
  0, /*nb_floor_divide*/
  0, /*nb_true_divide*/
  0, /*nb_inplace_floor_divide*/
  0, /*nb_inplace_true_divide*/
};

static PySequenceMethods __pyx_tp_as_sequence_Setting = {
  0, /*sq_length*/
  0, /*sq_concat*/
  0, /*sq_repeat*/
  0, /*sq_item*/
  0, /*sq_slice*/
  0, /*sq_ass_item*/
  0, /*sq_ass_slice*/
  0, /*sq_contains*/
  0, /*sq_inplace_concat*/
  0, /*sq_inplace_repeat*/
};

static PyMappingMethods __pyx_tp_as_mapping_Setting = {
  0, /*mp_length*/
  0, /*mp_subscript*/
  0, /*mp_ass_subscript*/
};

static PyBufferProcs __pyx_tp_as_buffer_Setting = {
  0, /*bf_getreadbuffer*/
  0, /*bf_getwritebuffer*/
  0, /*bf_getsegcount*/
  0, /*bf_getcharbuffer*/
};

PyTypeObject __pyx_type_12compizconfig_Setting = {
  PyObject_HEAD_INIT(0)
  0, /*ob_size*/
  "compizconfig.Setting", /*tp_name*/
  sizeof(struct __pyx_obj_12compizconfig_Setting), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_12compizconfig_Setting, /*tp_dealloc*/
  0, /*tp_print*/
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_compare*/
  0, /*tp_repr*/
  &__pyx_tp_as_number_Setting, /*tp_as_number*/
  &__pyx_tp_as_sequence_Setting, /*tp_as_sequence*/
  &__pyx_tp_as_mapping_Setting, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  &__pyx_tp_as_buffer_Setting, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_12compizconfig_Setting, /*tp_traverse*/
  __pyx_tp_clear_12compizconfig_Setting, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  __pyx_methods_12compizconfig_Setting, /*tp_methods*/
  0, /*tp_members*/
  __pyx_getsets_12compizconfig_Setting, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  0, /*tp_dictoffset*/
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_12compizconfig_Setting, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
};

static PyObject *__pyx_tp_new_12compizconfig_SSGroup(PyTypeObject *t, PyObject *a, PyObject *k) {
  PyObject *o = (*t->tp_alloc)(t, 0);
  struct __pyx_obj_12compizconfig_SSGroup *p = (struct __pyx_obj_12compizconfig_SSGroup *)o;
  p->display = Py_None; Py_INCREF(Py_None);
  p->screens = Py_None; Py_INCREF(Py_None);
  if (__pyx_f_12compizconfig_7SSGroup___new__(o, a, k) < 0) {
    Py_DECREF(o); o = 0;
  }
  return o;
}

static void __pyx_tp_dealloc_12compizconfig_SSGroup(PyObject *o) {
  struct __pyx_obj_12compizconfig_SSGroup *p = (struct __pyx_obj_12compizconfig_SSGroup *)o;
  Py_XDECREF(p->display);
  Py_XDECREF(p->screens);
  (*o->ob_type->tp_free)(o);
}

static int __pyx_tp_traverse_12compizconfig_SSGroup(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_obj_12compizconfig_SSGroup *p = (struct __pyx_obj_12compizconfig_SSGroup *)o;
  if (p->display) {
    e = (*v)(p->display, a); if (e) return e;
  }
  if (p->screens) {
    e = (*v)(p->screens, a); if (e) return e;
  }
  return 0;
}

static int __pyx_tp_clear_12compizconfig_SSGroup(PyObject *o) {
  struct __pyx_obj_12compizconfig_SSGroup *p = (struct __pyx_obj_12compizconfig_SSGroup *)o;
  Py_XDECREF(p->display);
  p->display = Py_None; Py_INCREF(Py_None);
  Py_XDECREF(p->screens);
  p->screens = Py_None; Py_INCREF(Py_None);
  return 0;
}

static PyObject *__pyx_getprop_12compizconfig_7SSGroup_Display(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7SSGroup_7Display___get__(o);
}

static int __pyx_setprop_12compizconfig_7SSGroup_Display(PyObject *o, PyObject *v, void *x) {
  if (v) {
    return __pyx_f_12compizconfig_7SSGroup_7Display___set__(o, v);
  }
  else {
    PyErr_SetString(PyExc_NotImplementedError, "__del__");
    return -1;
  }
}

static PyObject *__pyx_getprop_12compizconfig_7SSGroup_Screens(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7SSGroup_7Screens___get__(o);
}

static int __pyx_setprop_12compizconfig_7SSGroup_Screens(PyObject *o, PyObject *v, void *x) {
  if (v) {
    return __pyx_f_12compizconfig_7SSGroup_7Screens___set__(o, v);
  }
  else {
    PyErr_SetString(PyExc_NotImplementedError, "__del__");
    return -1;
  }
}

static struct PyMethodDef __pyx_methods_12compizconfig_SSGroup[] = {
  {0, 0, 0, 0}
};

static struct PyGetSetDef __pyx_getsets_12compizconfig_SSGroup[] = {
  {"Display", __pyx_getprop_12compizconfig_7SSGroup_Display, __pyx_setprop_12compizconfig_7SSGroup_Display, 0, 0},
  {"Screens", __pyx_getprop_12compizconfig_7SSGroup_Screens, __pyx_setprop_12compizconfig_7SSGroup_Screens, 0, 0},
  {0, 0, 0, 0, 0}
};

static PyNumberMethods __pyx_tp_as_number_SSGroup = {
  0, /*nb_add*/
  0, /*nb_subtract*/
  0, /*nb_multiply*/
  0, /*nb_divide*/
  0, /*nb_remainder*/
  0, /*nb_divmod*/
  0, /*nb_power*/
  0, /*nb_negative*/
  0, /*nb_positive*/
  0, /*nb_absolute*/
  0, /*nb_nonzero*/
  0, /*nb_invert*/
  0, /*nb_lshift*/
  0, /*nb_rshift*/
  0, /*nb_and*/
  0, /*nb_xor*/
  0, /*nb_or*/
  0, /*nb_coerce*/
  0, /*nb_int*/
  0, /*nb_long*/
  0, /*nb_float*/
  0, /*nb_oct*/
  0, /*nb_hex*/
  0, /*nb_inplace_add*/
  0, /*nb_inplace_subtract*/
  0, /*nb_inplace_multiply*/
  0, /*nb_inplace_divide*/
  0, /*nb_inplace_remainder*/
  0, /*nb_inplace_power*/
  0, /*nb_inplace_lshift*/
  0, /*nb_inplace_rshift*/
  0, /*nb_inplace_and*/
  0, /*nb_inplace_xor*/
  0, /*nb_inplace_or*/
  0, /*nb_floor_divide*/
  0, /*nb_true_divide*/
  0, /*nb_inplace_floor_divide*/
  0, /*nb_inplace_true_divide*/
};

static PySequenceMethods __pyx_tp_as_sequence_SSGroup = {
  0, /*sq_length*/
  0, /*sq_concat*/
  0, /*sq_repeat*/
  0, /*sq_item*/
  0, /*sq_slice*/
  0, /*sq_ass_item*/
  0, /*sq_ass_slice*/
  0, /*sq_contains*/
  0, /*sq_inplace_concat*/
  0, /*sq_inplace_repeat*/
};

static PyMappingMethods __pyx_tp_as_mapping_SSGroup = {
  0, /*mp_length*/
  0, /*mp_subscript*/
  0, /*mp_ass_subscript*/
};

static PyBufferProcs __pyx_tp_as_buffer_SSGroup = {
  0, /*bf_getreadbuffer*/
  0, /*bf_getwritebuffer*/
  0, /*bf_getsegcount*/
  0, /*bf_getcharbuffer*/
};

PyTypeObject __pyx_type_12compizconfig_SSGroup = {
  PyObject_HEAD_INIT(0)
  0, /*ob_size*/
  "compizconfig.SSGroup", /*tp_name*/
  sizeof(struct __pyx_obj_12compizconfig_SSGroup), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_12compizconfig_SSGroup, /*tp_dealloc*/
  0, /*tp_print*/
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_compare*/
  0, /*tp_repr*/
  &__pyx_tp_as_number_SSGroup, /*tp_as_number*/
  &__pyx_tp_as_sequence_SSGroup, /*tp_as_sequence*/
  &__pyx_tp_as_mapping_SSGroup, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  &__pyx_tp_as_buffer_SSGroup, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_12compizconfig_SSGroup, /*tp_traverse*/
  __pyx_tp_clear_12compizconfig_SSGroup, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  __pyx_methods_12compizconfig_SSGroup, /*tp_methods*/
  0, /*tp_members*/
  __pyx_getsets_12compizconfig_SSGroup, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  0, /*tp_dictoffset*/
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_12compizconfig_SSGroup, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
};

static PyObject *__pyx_tp_new_12compizconfig_Profile(PyTypeObject *t, PyObject *a, PyObject *k) {
  PyObject *o = (*t->tp_alloc)(t, 0);
  struct __pyx_obj_12compizconfig_Profile *p = (struct __pyx_obj_12compizconfig_Profile *)o;
  p->context = ((struct __pyx_obj_12compizconfig_Context *)Py_None); Py_INCREF(Py_None);
  if (__pyx_f_12compizconfig_7Profile___new__(o, a, k) < 0) {
    Py_DECREF(o); o = 0;
  }
  return o;
}

static void __pyx_tp_dealloc_12compizconfig_Profile(PyObject *o) {
  struct __pyx_obj_12compizconfig_Profile *p = (struct __pyx_obj_12compizconfig_Profile *)o;
  Py_XDECREF(((PyObject *)p->context));
  (*o->ob_type->tp_free)(o);
}

static int __pyx_tp_traverse_12compizconfig_Profile(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_obj_12compizconfig_Profile *p = (struct __pyx_obj_12compizconfig_Profile *)o;
  if (p->context) {
    e = (*v)(((PyObject*)p->context), a); if (e) return e;
  }
  return 0;
}

static int __pyx_tp_clear_12compizconfig_Profile(PyObject *o) {
  struct __pyx_obj_12compizconfig_Profile *p = (struct __pyx_obj_12compizconfig_Profile *)o;
  Py_XDECREF(((PyObject *)p->context));
  p->context = ((struct __pyx_obj_12compizconfig_Context *)Py_None); Py_INCREF(Py_None);
  return 0;
}

static PyObject *__pyx_getprop_12compizconfig_7Profile_Name(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Profile_4Name___get__(o);
}

static struct PyMethodDef __pyx_methods_12compizconfig_Profile[] = {
  {"__dealloc", (PyCFunction)__pyx_f_12compizconfig_7Profile___dealloc, METH_VARARGS|METH_KEYWORDS, 0},
  {"Delete", (PyCFunction)__pyx_f_12compizconfig_7Profile_Delete, METH_VARARGS|METH_KEYWORDS, 0},
  {0, 0, 0, 0}
};

static struct PyGetSetDef __pyx_getsets_12compizconfig_Profile[] = {
  {"Name", __pyx_getprop_12compizconfig_7Profile_Name, 0, 0, 0},
  {0, 0, 0, 0, 0}
};

static PyNumberMethods __pyx_tp_as_number_Profile = {
  0, /*nb_add*/
  0, /*nb_subtract*/
  0, /*nb_multiply*/
  0, /*nb_divide*/
  0, /*nb_remainder*/
  0, /*nb_divmod*/
  0, /*nb_power*/
  0, /*nb_negative*/
  0, /*nb_positive*/
  0, /*nb_absolute*/
  0, /*nb_nonzero*/
  0, /*nb_invert*/
  0, /*nb_lshift*/
  0, /*nb_rshift*/
  0, /*nb_and*/
  0, /*nb_xor*/
  0, /*nb_or*/
  0, /*nb_coerce*/
  0, /*nb_int*/
  0, /*nb_long*/
  0, /*nb_float*/
  0, /*nb_oct*/
  0, /*nb_hex*/
  0, /*nb_inplace_add*/
  0, /*nb_inplace_subtract*/
  0, /*nb_inplace_multiply*/
  0, /*nb_inplace_divide*/
  0, /*nb_inplace_remainder*/
  0, /*nb_inplace_power*/
  0, /*nb_inplace_lshift*/
  0, /*nb_inplace_rshift*/
  0, /*nb_inplace_and*/
  0, /*nb_inplace_xor*/
  0, /*nb_inplace_or*/
  0, /*nb_floor_divide*/
  0, /*nb_true_divide*/
  0, /*nb_inplace_floor_divide*/
  0, /*nb_inplace_true_divide*/
};

static PySequenceMethods __pyx_tp_as_sequence_Profile = {
  0, /*sq_length*/
  0, /*sq_concat*/
  0, /*sq_repeat*/
  0, /*sq_item*/
  0, /*sq_slice*/
  0, /*sq_ass_item*/
  0, /*sq_ass_slice*/
  0, /*sq_contains*/
  0, /*sq_inplace_concat*/
  0, /*sq_inplace_repeat*/
};

static PyMappingMethods __pyx_tp_as_mapping_Profile = {
  0, /*mp_length*/
  0, /*mp_subscript*/
  0, /*mp_ass_subscript*/
};

static PyBufferProcs __pyx_tp_as_buffer_Profile = {
  0, /*bf_getreadbuffer*/
  0, /*bf_getwritebuffer*/
  0, /*bf_getsegcount*/
  0, /*bf_getcharbuffer*/
};

PyTypeObject __pyx_type_12compizconfig_Profile = {
  PyObject_HEAD_INIT(0)
  0, /*ob_size*/
  "compizconfig.Profile", /*tp_name*/
  sizeof(struct __pyx_obj_12compizconfig_Profile), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_12compizconfig_Profile, /*tp_dealloc*/
  0, /*tp_print*/
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_compare*/
  0, /*tp_repr*/
  &__pyx_tp_as_number_Profile, /*tp_as_number*/
  &__pyx_tp_as_sequence_Profile, /*tp_as_sequence*/
  &__pyx_tp_as_mapping_Profile, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  &__pyx_tp_as_buffer_Profile, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_12compizconfig_Profile, /*tp_traverse*/
  __pyx_tp_clear_12compizconfig_Profile, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  __pyx_methods_12compizconfig_Profile, /*tp_methods*/
  0, /*tp_members*/
  __pyx_getsets_12compizconfig_Profile, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  0, /*tp_dictoffset*/
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_12compizconfig_Profile, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
};

static PyObject *__pyx_tp_new_12compizconfig_Backend(PyTypeObject *t, PyObject *a, PyObject *k) {
  PyObject *o = (*t->tp_alloc)(t, 0);
  struct __pyx_obj_12compizconfig_Backend *p = (struct __pyx_obj_12compizconfig_Backend *)o;
  p->context = ((struct __pyx_obj_12compizconfig_Context *)Py_None); Py_INCREF(Py_None);
  if (__pyx_f_12compizconfig_7Backend___new__(o, a, k) < 0) {
    Py_DECREF(o); o = 0;
  }
  return o;
}

static void __pyx_tp_dealloc_12compizconfig_Backend(PyObject *o) {
  struct __pyx_obj_12compizconfig_Backend *p = (struct __pyx_obj_12compizconfig_Backend *)o;
  {
    PyObject *etype, *eval, *etb;
    PyErr_Fetch(&etype, &eval, &etb);
    ++o->ob_refcnt;
    __pyx_f_12compizconfig_7Backend___dealloc__(o);
    if (PyErr_Occurred()) PyErr_WriteUnraisable(o);
    --o->ob_refcnt;
    PyErr_Restore(etype, eval, etb);
  }
  Py_XDECREF(((PyObject *)p->context));
  (*o->ob_type->tp_free)(o);
}

static int __pyx_tp_traverse_12compizconfig_Backend(PyObject *o, visitproc v, void *a) {
  int e;
  struct __pyx_obj_12compizconfig_Backend *p = (struct __pyx_obj_12compizconfig_Backend *)o;
  if (p->context) {
    e = (*v)(((PyObject*)p->context), a); if (e) return e;
  }
  return 0;
}

static int __pyx_tp_clear_12compizconfig_Backend(PyObject *o) {
  struct __pyx_obj_12compizconfig_Backend *p = (struct __pyx_obj_12compizconfig_Backend *)o;
  Py_XDECREF(((PyObject *)p->context));
  p->context = ((struct __pyx_obj_12compizconfig_Context *)Py_None); Py_INCREF(Py_None);
  return 0;
}

static PyObject *__pyx_getprop_12compizconfig_7Backend_Name(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Backend_4Name___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Backend_ShortDesc(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Backend_9ShortDesc___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Backend_LongDesc(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Backend_8LongDesc___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Backend_IntegrationSupport(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Backend_18IntegrationSupport___get__(o);
}

static PyObject *__pyx_getprop_12compizconfig_7Backend_ProfileSupport(PyObject *o, void *x) {
  return __pyx_f_12compizconfig_7Backend_14ProfileSupport___get__(o);
}

static struct PyMethodDef __pyx_methods_12compizconfig_Backend[] = {
  {0, 0, 0, 0}
};

static struct PyGetSetDef __pyx_getsets_12compizconfig_Backend[] = {
  {"Name", __pyx_getprop_12compizconfig_7Backend_Name, 0, 0, 0},
  {"ShortDesc", __pyx_getprop_12compizconfig_7Backend_ShortDesc, 0, 0, 0},
  {"LongDesc", __pyx_getprop_12compizconfig_7Backend_LongDesc, 0, 0, 0},
  {"IntegrationSupport", __pyx_getprop_12compizconfig_7Backend_IntegrationSupport, 0, 0, 0},
  {"ProfileSupport", __pyx_getprop_12compizconfig_7Backend_ProfileSupport, 0, 0, 0},
  {0, 0, 0, 0, 0}
};

static PyNumberMethods __pyx_tp_as_number_Backend = {
  0, /*nb_add*/
  0, /*nb_subtract*/
  0, /*nb_multiply*/
  0, /*nb_divide*/
  0, /*nb_remainder*/
  0, /*nb_divmod*/
  0, /*nb_power*/
  0, /*nb_negative*/
  0, /*nb_positive*/
  0, /*nb_absolute*/
  0, /*nb_nonzero*/
  0, /*nb_invert*/
  0, /*nb_lshift*/
  0, /*nb_rshift*/
  0, /*nb_and*/
  0, /*nb_xor*/
  0, /*nb_or*/
  0, /*nb_coerce*/
  0, /*nb_int*/
  0, /*nb_long*/
  0, /*nb_float*/
  0, /*nb_oct*/
  0, /*nb_hex*/
  0, /*nb_inplace_add*/
  0, /*nb_inplace_subtract*/
  0, /*nb_inplace_multiply*/
  0, /*nb_inplace_divide*/
  0, /*nb_inplace_remainder*/
  0, /*nb_inplace_power*/
  0, /*nb_inplace_lshift*/
  0, /*nb_inplace_rshift*/
  0, /*nb_inplace_and*/
  0, /*nb_inplace_xor*/
  0, /*nb_inplace_or*/
  0, /*nb_floor_divide*/
  0, /*nb_true_divide*/
  0, /*nb_inplace_floor_divide*/
  0, /*nb_inplace_true_divide*/
};

static PySequenceMethods __pyx_tp_as_sequence_Backend = {
  0, /*sq_length*/
  0, /*sq_concat*/
  0, /*sq_repeat*/
  0, /*sq_item*/
  0, /*sq_slice*/
  0, /*sq_ass_item*/
  0, /*sq_ass_slice*/
  0, /*sq_contains*/
  0, /*sq_inplace_concat*/
  0, /*sq_inplace_repeat*/
};

static PyMappingMethods __pyx_tp_as_mapping_Backend = {
  0, /*mp_length*/
  0, /*mp_subscript*/
  0, /*mp_ass_subscript*/
};

static PyBufferProcs __pyx_tp_as_buffer_Backend = {
  0, /*bf_getreadbuffer*/
  0, /*bf_getwritebuffer*/
  0, /*bf_getsegcount*/
  0, /*bf_getcharbuffer*/
};

PyTypeObject __pyx_type_12compizconfig_Backend = {
  PyObject_HEAD_INIT(0)
  0, /*ob_size*/
  "compizconfig.Backend", /*tp_name*/
  sizeof(struct __pyx_obj_12compizconfig_Backend), /*tp_basicsize*/
  0, /*tp_itemsize*/
  __pyx_tp_dealloc_12compizconfig_Backend, /*tp_dealloc*/
  0, /*tp_print*/
  0, /*tp_getattr*/
  0, /*tp_setattr*/
  0, /*tp_compare*/
  0, /*tp_repr*/
  &__pyx_tp_as_number_Backend, /*tp_as_number*/
  &__pyx_tp_as_sequence_Backend, /*tp_as_sequence*/
  &__pyx_tp_as_mapping_Backend, /*tp_as_mapping*/
  0, /*tp_hash*/
  0, /*tp_call*/
  0, /*tp_str*/
  0, /*tp_getattro*/
  0, /*tp_setattro*/
  &__pyx_tp_as_buffer_Backend, /*tp_as_buffer*/
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
  0, /*tp_doc*/
  __pyx_tp_traverse_12compizconfig_Backend, /*tp_traverse*/
  __pyx_tp_clear_12compizconfig_Backend, /*tp_clear*/
  0, /*tp_richcompare*/
  0, /*tp_weaklistoffset*/
  0, /*tp_iter*/
  0, /*tp_iternext*/
  __pyx_methods_12compizconfig_Backend, /*tp_methods*/
  0, /*tp_members*/
  __pyx_getsets_12compizconfig_Backend, /*tp_getset*/
  0, /*tp_base*/
  0, /*tp_dict*/
  0, /*tp_descr_get*/
  0, /*tp_descr_set*/
  0, /*tp_dictoffset*/
  0, /*tp_init*/
  0, /*tp_alloc*/
  __pyx_tp_new_12compizconfig_Backend, /*tp_new*/
  0, /*tp_free*/
  0, /*tp_is_gc*/
  0, /*tp_bases*/
  0, /*tp_mro*/
  0, /*tp_cache*/
  0, /*tp_subclasses*/
  0, /*tp_weaklist*/
};

static struct PyMethodDef __pyx_methods[] = {
  {0, 0, 0, 0}
};

static void __pyx_init_filenames(void); /*proto*/

PyMODINIT_FUNC initcompizconfig(void); /*proto*/
PyMODINIT_FUNC initcompizconfig(void) {
  PyObject *__pyx_1 = 0;
  PyObject *__pyx_2 = 0;
  PyObject *__pyx_3 = 0;
  PyObject *__pyx_4 = 0;
  PyObject *__pyx_5 = 0;
  PyObject *__pyx_6 = 0;
  __pyx_init_filenames();
  __pyx_m = Py_InitModule4("compizconfig", __pyx_methods, 0, 0, PYTHON_API_VERSION);
  if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; goto __pyx_L1;};
  __pyx_b = PyImport_AddModule("__builtin__");
  if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; goto __pyx_L1;};
  if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; goto __pyx_L1;};
  if (__Pyx_InternStrings(__pyx_intern_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; goto __pyx_L1;};
  if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; goto __pyx_L1;};
  __pyx_type_12compizconfig_Context.tp_free = _PyObject_GC_Del;
  if (PyType_Ready(&__pyx_type_12compizconfig_Context) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 802; goto __pyx_L1;}
  if (PyObject_SetAttrString(__pyx_m, "Context", (PyObject *)&__pyx_type_12compizconfig_Context) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 802; goto __pyx_L1;}
  __pyx_ptype_12compizconfig_Context = &__pyx_type_12compizconfig_Context;
  __pyx_type_12compizconfig_Plugin.tp_free = _PyObject_GC_Del;
  if (PyType_Ready(&__pyx_type_12compizconfig_Plugin) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 583; goto __pyx_L1;}
  if (PyObject_SetAttrString(__pyx_m, "Plugin", (PyObject *)&__pyx_type_12compizconfig_Plugin) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 583; goto __pyx_L1;}
  __pyx_ptype_12compizconfig_Plugin = &__pyx_type_12compizconfig_Plugin;
  __pyx_type_12compizconfig_Setting.tp_free = _PyObject_GC_Del;
  if (PyType_Ready(&__pyx_type_12compizconfig_Setting) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 479; goto __pyx_L1;}
  if (PyObject_SetAttrString(__pyx_m, "Setting", (PyObject *)&__pyx_type_12compizconfig_Setting) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 479; goto __pyx_L1;}
  __pyx_ptype_12compizconfig_Setting = &__pyx_type_12compizconfig_Setting;
  __pyx_type_12compizconfig_SSGroup.tp_free = _PyObject_GC_Del;
  if (PyType_Ready(&__pyx_type_12compizconfig_SSGroup) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; goto __pyx_L1;}
  if (PyObject_SetAttrString(__pyx_m, "SSGroup", (PyObject *)&__pyx_type_12compizconfig_SSGroup) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; goto __pyx_L1;}
  __pyx_ptype_12compizconfig_SSGroup = &__pyx_type_12compizconfig_SSGroup;
  __pyx_type_12compizconfig_Profile.tp_free = _PyObject_GC_Del;
  if (PyType_Ready(&__pyx_type_12compizconfig_Profile) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 747; goto __pyx_L1;}
  if (PyObject_SetAttrString(__pyx_m, "Profile", (PyObject *)&__pyx_type_12compizconfig_Profile) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 747; goto __pyx_L1;}
  __pyx_ptype_12compizconfig_Profile = &__pyx_type_12compizconfig_Profile;
  __pyx_type_12compizconfig_Backend.tp_free = _PyObject_GC_Del;
  if (PyType_Ready(&__pyx_type_12compizconfig_Backend) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 765; goto __pyx_L1;}
  if (PyObject_SetAttrString(__pyx_m, "Backend", (PyObject *)&__pyx_type_12compizconfig_Backend) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 765; goto __pyx_L1;}
  __pyx_ptype_12compizconfig_Backend = &__pyx_type_12compizconfig_Backend;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":42 */
  __pyx_1 = PyList_New(9); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; goto __pyx_L1;}
  Py_INCREF(__pyx_n_Bool);
  PyList_SET_ITEM(__pyx_1, 0, __pyx_n_Bool);
  Py_INCREF(__pyx_n_Int);
  PyList_SET_ITEM(__pyx_1, 1, __pyx_n_Int);
  Py_INCREF(__pyx_n_Float);
  PyList_SET_ITEM(__pyx_1, 2, __pyx_n_Float);
  Py_INCREF(__pyx_n_String);
  PyList_SET_ITEM(__pyx_1, 3, __pyx_n_String);
  Py_INCREF(__pyx_n_Action);
  PyList_SET_ITEM(__pyx_1, 4, __pyx_n_Action);
  Py_INCREF(__pyx_n_Color);
  PyList_SET_ITEM(__pyx_1, 5, __pyx_n_Color);
  Py_INCREF(__pyx_n_Match);
  PyList_SET_ITEM(__pyx_1, 6, __pyx_n_Match);
  Py_INCREF(__pyx_n_List);
  PyList_SET_ITEM(__pyx_1, 7, __pyx_n_List);
  Py_INCREF(__pyx_n_Invalid);
  PyList_SET_ITEM(__pyx_1, 8, __pyx_n_Invalid);
  if (PyObject_SetAttr(__pyx_m, __pyx_n_SettingTypeString, __pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":53 */
  __pyx_1 = PyList_New(7); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; goto __pyx_L1;}
  Py_INCREF(__pyx_n_RequiresPlugin);
  PyList_SET_ITEM(__pyx_1, 0, __pyx_n_RequiresPlugin);
  Py_INCREF(__pyx_n_RequiresFeature);
  PyList_SET_ITEM(__pyx_1, 1, __pyx_n_RequiresFeature);
  Py_INCREF(__pyx_n_ConflictFeature);
  PyList_SET_ITEM(__pyx_1, 2, __pyx_n_ConflictFeature);
  Py_INCREF(__pyx_n_ConflictPlugin);
  PyList_SET_ITEM(__pyx_1, 3, __pyx_n_ConflictPlugin);
  Py_INCREF(__pyx_n_FeatureNeeded);
  PyList_SET_ITEM(__pyx_1, 4, __pyx_n_FeatureNeeded);
  Py_INCREF(__pyx_n_PluginNeeded);
  PyList_SET_ITEM(__pyx_1, 5, __pyx_n_PluginNeeded);
  Py_INCREF(__pyx_n_PluginError);
  PyList_SET_ITEM(__pyx_1, 6, __pyx_n_PluginError);
  if (PyObject_SetAttr(__pyx_m, __pyx_n_ConflictTypeString, __pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":265 */
  __pyx_1 = PyInt_FromLong((1 << 0)); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; goto __pyx_L1;}
  if (PyObject_SetAttr(__pyx_m, __pyx_n_ProcessEventsNoGlibMainLoopMask, __pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; goto __pyx_L1;}
  Py_DECREF(__pyx_1); __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":484 */
  __pyx_1 = PyInt_FromLong(0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; goto __pyx_L1;}
  __pyx_k17 = __pyx_1;
  __pyx_1 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":813 */
  __pyx_2 = PyInt_FromLong(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 813; goto __pyx_L1;}
  __pyx_3 = PyList_New(1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 813; goto __pyx_L1;}
  PyList_SET_ITEM(__pyx_3, 0, __pyx_2);
  __pyx_2 = 0;
  __pyx_k18 = __pyx_3;
  __pyx_3 = 0;
  __pyx_2 = PyList_New(0); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 813; goto __pyx_L1;}
  __pyx_k19 = __pyx_2;
  __pyx_2 = 0;
  __pyx_4 = __Pyx_GetName(__pyx_b, __pyx_n_False); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 813; goto __pyx_L1;}
  __pyx_k20 = __pyx_4;
  __pyx_4 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":858 */
  __pyx_5 = PyInt_FromLong(0); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 858; goto __pyx_L1;}
  __pyx_k21 = __pyx_5;
  __pyx_5 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":867 */
  __pyx_6 = __Pyx_GetName(__pyx_b, __pyx_n_True); if (!__pyx_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; goto __pyx_L1;}
  __pyx_k22 = __pyx_6;
  __pyx_6 = 0;

  /* "/home/ixce/release/compizconfig-python/src/compizconfig.pyx":955 */
  return;
  __pyx_L1:;
  Py_XDECREF(__pyx_1);
  Py_XDECREF(__pyx_2);
  Py_XDECREF(__pyx_3);
  Py_XDECREF(__pyx_4);
  Py_XDECREF(__pyx_5);
  Py_XDECREF(__pyx_6);
  __Pyx_AddTraceback("compizconfig");
}

static char *__pyx_filenames[] = {
  "compizconfig.pyx",
};

/* Runtime support code */

static void __pyx_init_filenames(void) {
  __pyx_f = __pyx_filenames;
}

static int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed, char *name) {
    if (!type) {
        PyErr_Format(PyExc_SystemError, "Missing type object");
        return 0;
    }
    if ((none_allowed && obj == Py_None) || PyObject_TypeCheck(obj, type))
        return 1;
    PyErr_Format(PyExc_TypeError,
        "Argument '%s' has incorrect type (expected %s, got %s)",
        name, type->tp_name, obj->ob_type->tp_name);
    return 0;
}

static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) {
    PyObject *result;
    result = PyObject_GetAttr(dict, name);
    if (!result)
        PyErr_SetObject(PyExc_NameError, name);
    return result;
}

static void __Pyx_WriteUnraisable(char *name) {
    PyObject *old_exc, *old_val, *old_tb;
    PyObject *ctx;
    PyErr_Fetch(&old_exc, &old_val, &old_tb);
    ctx = PyString_FromString(name);
    PyErr_Restore(old_exc, old_val, old_tb);
    if (!ctx)
        ctx = Py_None;
    PyErr_WriteUnraisable(ctx);
}

static int __Pyx_InternStrings(__Pyx_InternTabEntry *t) {
    while (t->p) {
        *t->p = PyString_InternFromString(t->s);
        if (!*t->p)
            return -1;
        ++t;
    }
    return 0;
}

static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
    while (t->p) {
        *t->p = PyString_FromStringAndSize(t->s, t->n - 1);
        if (!*t->p)
            return -1;
        ++t;
    }
    return 0;
}

#include "compile.h"
#include "frameobject.h"
#include "traceback.h"

static void __Pyx_AddTraceback(char *funcname) {
    PyObject *py_srcfile = 0;
    PyObject *py_funcname = 0;
    PyObject *py_globals = 0;
    PyObject *empty_tuple = 0;
    PyObject *empty_string = 0;
    PyCodeObject *py_code = 0;
    PyFrameObject *py_frame = 0;
    
    py_srcfile = PyString_FromString(__pyx_filename);
    if (!py_srcfile) goto bad;
    py_funcname = PyString_FromString(funcname);
    if (!py_funcname) goto bad;
    py_globals = PyModule_GetDict(__pyx_m);
    if (!py_globals) goto bad;
    empty_tuple = PyTuple_New(0);
    if (!empty_tuple) goto bad;
    empty_string = PyString_FromString("");
    if (!empty_string) goto bad;
    py_code = PyCode_New(
        0,            /*int argcount,*/
        0,            /*int nlocals,*/
        0,            /*int stacksize,*/
        0,            /*int flags,*/
        empty_string, /*PyObject *code,*/
        empty_tuple,  /*PyObject *consts,*/
        empty_tuple,  /*PyObject *names,*/
        empty_tuple,  /*PyObject *varnames,*/
        empty_tuple,  /*PyObject *freevars,*/
        empty_tuple,  /*PyObject *cellvars,*/
        py_srcfile,   /*PyObject *filename,*/
        py_funcname,  /*PyObject *name,*/
        __pyx_lineno,   /*int firstlineno,*/
        empty_string  /*PyObject *lnotab*/
    );
    if (!py_code) goto bad;
    py_frame = PyFrame_New(
        PyThreadState_Get(), /*PyThreadState *tstate,*/
        py_code,             /*PyCodeObject *code,*/
        py_globals,          /*PyObject *globals,*/
        0                    /*PyObject *locals*/
    );
    if (!py_frame) goto bad;
    py_frame->f_lineno = __pyx_lineno;
    PyTraceBack_Here(py_frame);
bad:
    Py_XDECREF(py_srcfile);
    Py_XDECREF(py_funcname);
    Py_XDECREF(empty_tuple);
    Py_XDECREF(empty_string);
    Py_XDECREF(py_code);
    Py_XDECREF(py_frame);
}


syntax highlighted by Code2HTML, v. 0.9.1