{
        global $wp_roles;
        $capabilities = array();
        $count = 0;
        if (!isset($wp_roles)) {
            // just trigger initialization
            get_role('administrator');
        }
        $roles = $wp_roles->roles;
        if (is_array($roles)) {
            foreach ($roles as $rolename => $atts) {
                if (isset($atts['capabilities']) && is_array($atts['capabilities'])) {
                    foreach ($atts['capabilities'] as $capability => $value) {
                        if (!in_array($capability, $capabilities)) {
                            $capabilities[] = $capability;
                        }
                    }
                }
            }
        }
        foreach ($capabilities as $capability) {
            if (!Groups_Capability::read_by_capability($capability)) {
                Groups_Capability::create(array('capability' => $capability));
                $count++;
            }
        }
        return $count;
    }
}
Groups_WordPress::init();