class Action:
    '''A collection of F-Curves for animation '''

    fcurves = None
    '''The individual F-Curves that make up the action 

    :type:  ActionFCurves bpy_prop_collection of FCurve, (readonly) 
    '''

    frame_range = None
    '''The final frame range of all F-Curves within this action 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''

    groups = None
    '''Convenient groupings of F-Curves 

    :type:  ActionGroups bpy_prop_collection of ActionGroup, (readonly) 
    '''

    id_root = None
    '''Type of ID block that action can be used on - DO NOT CHANGE UNLESS YOU KNOW WHAT YOU ARE DOING 

    :type:  enum in [‘ACTION’, ‘ARMATURE’, ‘BRUSH’, ‘CAMERA’, ‘CACHEFILE’, ‘CURVE’, ‘FONT’, ‘GREASEPENCIL’, ‘COLLECTION’, ‘IMAGE’, ‘KEY’, ‘LIGHT’, ‘LIBRARY’, ‘LINESTYLE’, ‘LATTICE’, ‘MASK’, ‘MATERIAL’, ‘META’, ‘MESH’, ‘MOVIECLIP’, ‘NODETREE’, ‘OBJECT’, ‘PAINTCURVE’, ‘PALETTE’, ‘PARTICLE’, ‘LIGHT_PROBE’, ‘SCENE’, ‘SOUND’, ‘SPEAKER’, ‘TEXT’, ‘TEXTURE’, ‘WINDOWMANAGER’, ‘WORLD’, ‘WORKSPACE’], default ‘ACTION’ 
    '''

    pose_markers = None
    '''Markers specific to this action, for labeling poses 

    :type:  ActionPoseMarkers bpy_prop_collection of TimelineMarker, (readonly) 
    '''


class ActionConstraint:
    '''Map an action to the transform axes of a bone '''

    action = None
    '''The constraining action 

    :type:  Action 
    '''

    frame_end = None
    '''Last frame of the Action to use 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    frame_start = None
    '''First frame of the Action to use 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    max = None
    '''Maximum value for target channel range 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    min = None
    '''Minimum value for target channel range 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    transform_channel = None
    '''Transformation channel from the target that is used to key the Action 

    :type:  enum in [‘LOCATION_X’, ‘LOCATION_Y’, ‘LOCATION_Z’, ‘ROTATION_X’, ‘ROTATION_Y’, ‘ROTATION_Z’, ‘SCALE_X’, ‘SCALE_Y’, ‘SCALE_Z’], default ‘ROTATION_X’ 
    '''

    use_bone_object_action = None
    '''Bones only: apply the object’s transformation channels of the action to the constrained bone, instead of bone’s channels 

    :type:  boolean, default False 
    '''


class ActionFCurves:
    '''Collection of action F-Curves '''

    def new(self, data_path, index=0, action_group=""):
        '''Add an F-Curve to the action 

        :param data_path: Data Path, F-Curve data path to use 
        :type data_path: string, (never None)
        :param index: Index, Array index 
        :type index: int in [0, inf], (optional)
        :param action_group: Action Group, Acton group to add this F-Curve into 
        :type action_group: string, (optional, never None)
        :rtype: FCurve 
        :return:  Newly created F-Curve 
        '''
        pass

    def find(self, data_path, index=0):
        '''Find an F-Curve. Note that this function performs a linear scan of all F-Curves in the action. 

        :param data_path: Data Path, F-Curve data path 
        :type data_path: string, (never None)
        :param index: Index, Array index 
        :type index: int in [0, inf], (optional)
        :rtype: FCurve 
        :return:  The found F-Curve, or None if it doesn’t exist 
        '''
        pass

    def remove(self, fcurve):
        '''Remove action group 

        :param fcurve: F-Curve to remove 
        :type fcurve: FCurve, (never None)
        '''
        pass


class ActionGroup:
    '''Groups of F-Curves '''

    channels = None
    '''F-Curves in this group 

    :type:  bpy_prop_collection of FCurve, (readonly) 
    '''

    color_set = None
    '''Custom color set to use 

    :type:  enum in [‘DEFAULT’, ‘THEME01’, ‘THEME02’, ‘THEME03’, ‘THEME04’, ‘THEME05’, ‘THEME06’, ‘THEME07’, ‘THEME08’, ‘THEME09’, ‘THEME10’, ‘THEME11’, ‘THEME12’, ‘THEME13’, ‘THEME14’, ‘THEME15’, ‘THEME16’, ‘THEME17’, ‘THEME18’, ‘THEME19’, ‘THEME20’, ‘CUSTOM’], default ‘DEFAULT’ 
    '''

    colors = None
    '''Copy of the colors associated with the group’s color set 

    :type:  ThemeBoneColorSet, (readonly, never None) 
    '''

    is_custom_color_set = None
    '''Color set is user-defined instead of a fixed theme color set 

    :type:  boolean, default False, (readonly) 
    '''

    lock = None
    '''Action group is locked 

    :type:  boolean, default False 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    select = None
    '''Action group is selected 

    :type:  boolean, default False 
    '''

    show_expanded = None
    '''Action group is expanded 

    :type:  boolean, default False 
    '''


class ActionGroups:
    '''Collection of action groups '''

    def new(self, name):
        '''Create a new action group and add it to the action 

        :param name: New name for the action group 
        :type name: string, (never None)
        :rtype: ActionGroup 
        :return:  Newly created action group 
        '''
        pass

    def remove(self, action_group):
        '''Remove action group 

        :param action_group: Action group to remove 
        :type action_group: ActionGroup, (never None)
        '''
        pass


class ActionPoseMarkers:
    '''Collection of timeline markers '''

    active = None
    '''Active pose marker for this action 

    :type:  TimelineMarker 
    '''

    active_index = None
    '''Index of active pose marker 

    :type:  int in [0, inf], default 0 
    '''

    def new(self, name):
        '''Add a pose marker to the action 

        :param name: New name for the marker (not unique) 
        :type name: string, (never None)
        :rtype: TimelineMarker 
        :return:  Newly created marker 
        '''
        pass

    def remove(self, marker):
        '''Remove a timeline marker 

        :param marker: Timeline marker to remove 
        :type marker: TimelineMarker, (never None)
        '''
        pass


class AddSequence:
    '''Add Sequence '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class Addon:
    '''Python add-ons to be loaded automatically '''

    module = None
    '''Module name 

    :type:  string, default “”, (never None) 
    '''

    preferences = None
    '''

    :type:  AddonPreferences, (readonly) 
    '''


class AddonPreferences:
    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''


class Addons:
    '''Collection of add-ons '''

    pass


class AdjustmentSequence:
    '''Sequence strip to perform filter adjustments to layers below '''

    animation_offset_end = None
    '''Animation end offset (trim end) 

    :type:  int in [0, inf], default 0 
    '''

    animation_offset_start = None
    '''Animation start offset (trim start) 

    :type:  int in [0, inf], default 0 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class AlembicObjectPath:
    '''Path of an object inside of an Alembic archive '''

    path = None
    '''Object path 

    :type:  string, default “”, (never None) 
    '''


class AlembicObjectPaths:
    '''Collection of object paths '''

    pass


class AlphaOverSequence:
    '''Alpha Over Sequence '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class AlphaUnderSequence:
    '''Alpha Under Sequence '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class AnimData:
    '''Animation data for data-block '''

    action = None
    '''Active Action for this data-block 

    :type:  Action 
    '''

    action_blend_type = None
    '''Method used for combining Active Action’s result with result of NLA stack 

    :type:  enum in [‘REPLACE’, ‘COMBINE’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’], default ‘REPLACE’ 
    '''

    action_extrapolation = None
    '''Action to take for gaps past the Active Action’s range (when evaluating with NLA) 

    :type:  enum in [‘NOTHING’, ‘HOLD’, ‘HOLD_FORWARD’], default ‘HOLD’ 
    '''

    action_influence = None
    '''Amount the Active Action contributes to the result of the NLA stack 

    :type:  float in [0, 1], default 1.0 
    '''

    drivers = None
    '''The Drivers/Expressions for this data-block 

    :type:  AnimDataDrivers bpy_prop_collection of FCurve, (readonly) 
    '''

    nla_tracks = None
    '''NLA Tracks (i.e. Animation Layers) 

    :type:  NlaTracks bpy_prop_collection of NlaTrack, (readonly) 
    '''

    use_nla = None
    '''NLA stack is evaluated when evaluating this block 

    :type:  boolean, default False 
    '''

    use_tweak_mode = None
    '''Whether to enable or disable tweak mode in NLA 

    :type:  boolean, default False 
    '''


class AnimDataDrivers:
    '''Collection of Driver F-Curves '''

    def new(self, data_path, index=0):
        '''new 

        :param data_path: Data Path, F-Curve data path to use 
        :type data_path: string, (never None)
        :param index: Index, Array index 
        :type index: int in [0, inf], (optional)
        :rtype: FCurve 
        :return:  Newly Driver F-Curve 
        '''
        pass

    def remove(self, driver):
        '''remove 

        '''
        pass

    def from_existing(self, src_driver=None):
        '''Add a new driver given an existing one 

        :param src_driver: Existing Driver F-Curve to use as template for a new one 
        :type src_driver: FCurve, (optional)
        :rtype: FCurve 
        :return:  New Driver F-Curve 
        '''
        pass

    def find(self, data_path, index=0):
        '''Find a driver F-Curve. Note that this function performs a linear scan of all driver F-Curves. 

        :param data_path: Data Path, F-Curve data path 
        :type data_path: string, (never None)
        :param index: Index, Array index 
        :type index: int in [0, inf], (optional)
        :rtype: FCurve 
        :return:  The found F-Curve, or None if it doesn’t exist 
        '''
        pass


class AnimViz:
    '''Settings for the visualization of motion '''

    motion_path = None
    '''Motion Path settings for visualization 

    :type:  AnimVizMotionPaths, (readonly, never None) 
    '''


class AnimVizMotionPaths:
    '''Motion Path settings for animation visualization '''

    bake_location = None
    '''When calculating Bone Paths, use Head or Tips 

    :type:  enum in [‘HEADS’, ‘TAILS’], default ‘TAILS’ 
    '''

    frame_after = None
    '''Number of frames to show after the current frame (only for ‘Around Current Frame’ Onion-skinning method) 

    :type:  int in [1, 524287], default 0 
    '''

    frame_before = None
    '''Number of frames to show before the current frame (only for ‘Around Current Frame’ Onion-skinning method) 

    :type:  int in [1, 524287], default 0 
    '''

    frame_end = None
    '''End frame of range of paths to display/calculate (not for ‘Around Current Frame’ Onion-skinning method) 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_start = None
    '''Starting frame of range of paths to display/calculate (not for ‘Around Current Frame’ Onion-skinning method) 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_step = None
    '''Number of frames between paths shown (not for ‘On Keyframes’ Onion-skinning method) 

    :type:  int in [1, 100], default 0 
    '''

    has_motion_paths = None
    '''Are there any bone paths that will need updating (read-only) 

    :type:  boolean, default False, (readonly) 
    '''

    show_frame_numbers = None
    '''Show frame numbers on Motion Paths 

    :type:  boolean, default False 
    '''

    show_keyframe_action_all = None
    '''For bone motion paths, search whole Action for keyframes instead of in group with matching name only (is slower) 

    :type:  boolean, default False 
    '''

    show_keyframe_highlight = None
    '''Emphasize position of keyframes on Motion Paths 

    :type:  boolean, default False 
    '''

    show_keyframe_numbers = None
    '''Show frame numbers of Keyframes on Motion Paths 

    :type:  boolean, default False 
    '''

    type = None
    '''Type of range to show for Motion Paths 

    :type:  enum in [‘CURRENT_FRAME’, ‘RANGE’], default ‘RANGE’ 
    '''


class AnyType:
    '''RNA type used for pointers to any possible data '''

    pass


class Area:
    '''Area in a subdivided screen, containing an editor '''

    height = None
    '''Area height 

    :type:  int in [0, 32767], default 0, (readonly) 
    '''

    regions = None
    '''Regions this area is subdivided in 

    :type:  bpy_prop_collection of Region, (readonly) 
    '''

    show_menus = None
    '''Show menus in the header 

    :type:  boolean, default False 
    '''

    spaces = None
    '''Spaces contained in this area, the first being the active space (NOTE: Useful for example to restore a previously used 3D view space in a certain area to get the old view orientation) 

    :type:  AreaSpaces bpy_prop_collection of Space, (readonly) 
    '''

    type = None
    '''Current editor type for this area 

    :type:  enum in [‘EMPTY’, ‘VIEW_3D’, ‘IMAGE_EDITOR’, ‘NODE_EDITOR’, ‘SEQUENCE_EDITOR’, ‘CLIP_EDITOR’, ‘DOPESHEET_EDITOR’, ‘GRAPH_EDITOR’, ‘NLA_EDITOR’, ‘TEXT_EDITOR’, ‘CONSOLE’, ‘INFO’, ‘TOPBAR’, ‘STATUSBAR’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILE_BROWSER’, ‘PREFERENCES’], default ‘VIEW_3D’ 
    '''

    ui_type = None
    '''Current editor type for this area 

    :type:  enum in [], default ‘’ 
    '''

    width = None
    '''Area width 

    :type:  int in [0, 32767], default 0, (readonly) 
    '''

    x = None
    '''The window relative vertical location of the area 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    y = None
    '''The window relative horizontal location of the area 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    def tag_redraw(self):
        '''tag_redraw 

        '''
        pass

    def header_text_set(self, text):
        '''Set the header status text 

        :param text: Text, New string for the header, None clears the text 
        :type text: string
        '''
        pass


class AreaLight:
    '''Directional area Light '''

    constant_coefficient = None
    '''Constant distance attenuation coefficient 

    :type:  float in [0, inf], default 0.0 
    '''

    contact_shadow_bias = None
    '''Bias to avoid self shadowing 

    :type:  float in [0.001, 9999], default 0.03 
    '''

    contact_shadow_distance = None
    '''World space distance in which to search for screen space occluder 

    :type:  float in [0, 9999], default 0.2 
    '''

    contact_shadow_soft_size = None
    '''Control how soft the contact shadows will be 

    :type:  float in [0, 9999], default 0.2 
    '''

    contact_shadow_thickness = None
    '''Pixel thickness used to detect occlusion 

    :type:  float in [0, 9999], default 0.2 
    '''

    energy = None
    '''Amount of light emitted 

    :type:  float in [-inf, inf], default 10.0 
    '''

    falloff_curve = None
    '''Custom light falloff curve 

    :type:  CurveMapping, (readonly) 
    '''

    falloff_type = None
    '''Intensity Decay with distance 

    :type:  enum in [‘CONSTANT’, ‘INVERSE_LINEAR’, ‘INVERSE_SQUARE’, ‘INVERSE_COEFFICIENTS’, ‘CUSTOM_CURVE’, ‘LINEAR_QUADRATIC_WEIGHTED’], default ‘CONSTANT’ 
    '''

    linear_attenuation = None
    '''Linear distance attenuation 

    :type:  float in [0, 1], default 0.0 
    '''

    linear_coefficient = None
    '''Linear distance attenuation coefficient 

    :type:  float in [0, inf], default 0.0 
    '''

    quadratic_attenuation = None
    '''Quadratic distance attenuation 

    :type:  float in [0, 1], default 0.0 
    '''

    quadratic_coefficient = None
    '''Quadratic distance attenuation coefficient 

    :type:  float in [0, inf], default 0.0 
    '''

    shadow_buffer_bias = None
    '''Bias for reducing self shadowing 

    :type:  float in [0.001, 9999], default 1.0 
    '''

    shadow_buffer_bleed_bias = None
    '''Bias for reducing light-bleed on variance shadow maps 

    :type:  float in [0, 1], default 0.0 
    '''

    shadow_buffer_clip_end = None
    '''Shadow map clip end, beyond which objects will not generate shadows 

    :type:  float in [0, 9999], default 40.0 
    '''

    shadow_buffer_clip_start = None
    '''Shadow map clip start, below which objects will not generate shadows 

    :type:  float in [0, 9999], default 0.5 
    '''

    shadow_buffer_exp = None
    '''Bias for reducing light-bleed on exponential shadow maps 

    :type:  float in [1, 9999], default 2.5 
    '''

    shadow_buffer_samples = None
    '''Number of shadow buffer samples 

    :type:  int in [1, 16], default 0 
    '''

    shadow_buffer_size = None
    '''Resolution of the shadow buffer, higher values give crisper shadows but use more memory 

    :type:  int in [128, 10240], default 0 
    '''

    shadow_buffer_soft = None
    '''Size of shadow buffer sampling area 

    :type:  float in [0, 100], default 3.0 
    '''

    shadow_color = None
    '''Color of shadows cast by the light 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    shadow_soft_size = None
    '''Light size for ray shadow sampling (Raytraced shadows) 

    :type:  float in [0, inf], default 0.25 
    '''

    shape = None
    '''Shape of the area Light 

    :type:  enum in [‘SQUARE’, ‘RECTANGLE’, ‘DISK’, ‘ELLIPSE’], default ‘SQUARE’ 
    '''

    size = None
    '''Size of the area of the area light, X direction size for rectangle shapes 

    :type:  float in [0, inf], default 0.25 
    '''

    size_y = None
    '''Size of the area of the area light in the Y direction for rectangle shapes 

    :type:  float in [0, inf], default 0.25 
    '''

    use_contact_shadow = None
    '''Use screen space raytracing to have correct shadowing near occluder, or for small features that does not appear in shadow maps 

    :type:  boolean, default False 
    '''

    use_shadow = None
    '''

    :type:  boolean, default False 
    '''


class AreaSpaces:
    '''Collection of spaces '''

    active = None
    '''Space currently being displayed in this area 

    :type:  Space, (readonly) 
    '''


class Armature:
    '''Armature data-block containing a hierarchy of bones, usually used for rigging characters '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    bones = None
    '''

    :type:  ArmatureBones bpy_prop_collection of Bone, (readonly) 
    '''

    display_type = None
    '''

    :type:  enum in [‘OCTAHEDRAL’, ‘STICK’, ‘BBONE’, ‘ENVELOPE’, ‘WIRE’], default ‘OCTAHEDRAL’ 
    '''

    edit_bones = None
    '''

    :type:  ArmatureEditBones bpy_prop_collection of EditBone, (readonly) 
    '''

    is_editmode = None
    '''True when used in editmode 

    :type:  boolean, default False, (readonly) 
    '''

    layers = None
    '''Armature layer visibility 

    :type:  boolean array of 32 items, default (False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False) 
    '''

    layers_protected = None
    '''Protected layers in Proxy Instances are restored to Proxy settings on file reload and undo 

    :type:  boolean array of 32 items, default (False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False) 
    '''

    pose_position = None
    '''Show armature in binding pose or final posed state 

    :type:  enum in [‘POSE’, ‘REST’], default ‘POSE’ 
    '''

    show_axes = None
    '''Display bone axes 

    :type:  boolean, default False 
    '''

    show_bone_custom_shapes = None
    '''Display bones with their custom shapes 

    :type:  boolean, default False 
    '''

    show_group_colors = None
    '''Display bone group colors 

    :type:  boolean, default False 
    '''

    show_names = None
    '''Display bone names 

    :type:  boolean, default False 
    '''

    use_auto_ik = None
    '''Add temporary IK constraints while grabbing bones in Pose Mode 

    :type:  boolean, default False 
    '''

    use_deform_delay = None
    '''Don’t deform children when manipulating bones in Pose Mode 

    :type:  boolean, default False 
    '''

    use_mirror_x = None
    '''Apply changes to matching bone on opposite side of X-Axis 

    :type:  boolean, default False 
    '''

    def transform(self, matrix):
        '''Transform armature bones by a matrix 

        :param matrix: Matrix 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        '''
        pass


class ArmatureBones:
    '''Collection of armature bones '''

    active = None
    '''Armature’s active bone 

    :type:  Bone 
    '''


class ArmatureConstraint:
    '''Applies transformations done by the Armature modifier '''

    targets = None
    '''Target Bones 

    :type:  ArmatureConstraintTargets bpy_prop_collection of ConstraintTargetBone, (readonly) 
    '''

    use_bone_envelopes = None
    '''Multiply weights by envelope for all bones, instead of acting like Vertex Group based blending. The specified weights are still used, and only the listed bones are considered 

    :type:  boolean, default False 
    '''

    use_current_location = None
    '''Use the current bone location for envelopes and choosing B-Bone segments instead of rest position 

    :type:  boolean, default False 
    '''

    use_deform_preserve_volume = None
    '''Deform rotation interpolation with quaternions 

    :type:  boolean, default False 
    '''


class ArmatureConstraintTargets:
    '''Collection of target bones and weights '''

    def new(self):
        '''Add a new target to the constraint 

        :rtype: ConstraintTargetBone 
        :return:  New target bone 
        '''
        pass

    def remove(self, target):
        '''Delete target from the constraint 

        :param target: Target to remove 
        :type target: ConstraintTargetBone, (never None)
        '''
        pass

    def clear(self):
        '''Delete all targets from object 

        '''
        pass


class ArmatureEditBones:
    '''Collection of armature edit bones '''

    active = None
    '''Armatures active edit bone 

    :type:  EditBone 
    '''

    def new(self, name):
        '''Add a new bone 

        :param name: New name for the bone 
        :type name: string, (never None)
        :rtype: EditBone 
        :return:  Newly created edit bone 
        '''
        pass

    def remove(self, bone):
        '''Remove an existing bone from the armature 

        :param bone: EditBone to remove 
        :type bone: EditBone, (never None)
        '''
        pass


class ArmatureGpencilModifier:
    '''Change stroke using armature to deform modifier '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    object = None
    '''Armature object to deform with 

    :type:  Object 
    '''

    use_bone_envelopes = None
    '''Bind Bone envelopes to armature modifier 

    :type:  boolean, default False 
    '''

    use_deform_preserve_volume = None
    '''Deform rotation interpolation with quaternions 

    :type:  boolean, default False 
    '''

    use_vertex_groups = None
    '''Bind vertex groups to armature modifier 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines influence of modifier per point 

    :type:  string, default “”, (never None) 
    '''


class ArmatureModifier:
    '''Armature deformation modifier '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    object = None
    '''Armature object to deform with 

    :type:  Object 
    '''

    use_bone_envelopes = None
    '''Bind Bone envelopes to armature modifier 

    :type:  boolean, default False 
    '''

    use_deform_preserve_volume = None
    '''Deform rotation interpolation with quaternions 

    :type:  boolean, default False 
    '''

    use_multi_modifier = None
    '''Use same input as previous modifier, and mix results using overall vgroup 

    :type:  boolean, default False 
    '''

    use_vertex_groups = None
    '''Bind vertex groups to armature modifier 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines influence of modifier per point 

    :type:  string, default “”, (never None) 
    '''


class ArrayGpencilModifier:
    '''Create grid of duplicate instances '''

    count = None
    '''Number of items 

    :type:  int in [1, inf], default 0 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    keep_on_top = None
    '''Keep the original stroke in front of new instances (only affect by layer) 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    offset = None
    '''Value for the distance between items 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    offset_object = None
    '''Use the location and rotation of another object to determine the distance and rotational change between arrayed items 

    :type:  Object 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    random_rot = None
    '''Use random factors for rotation 

    :type:  boolean, default False 
    '''

    random_scale = None
    '''Use random factors for scale 

    :type:  boolean, default False 
    '''

    replace_material = None
    '''Index of the material used for generated strokes (0 keep original material) 

    :type:  int in [0, inf], default 0 
    '''

    rot_factor = None
    '''Random factor for rotation 

    :type:  float in [-10, 10], default 0.0 
    '''

    rotation = None
    '''Value for changes in rotation 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    scale = None
    '''Value for changes in scale 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    scale_factor = None
    '''Random factor for scale 

    :type:  float in [-10, 10], default 0.0 
    '''

    shift = None
    '''Shiftiness value 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''


class ArrayModifier:
    '''Array duplication modifier '''

    constant_offset_displace = None
    '''Value for the distance between arrayed items 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    count = None
    '''Number of duplicates to make 

    :type:  int in [1, inf], default 0 
    '''

    curve = None
    '''Curve object to fit array length to 

    :type:  Object 
    '''

    end_cap = None
    '''Mesh object to use as an end cap 

    :type:  Object 
    '''

    fit_length = None
    '''Length to fit array within 

    :type:  float in [0, inf], default 0.0 
    '''

    fit_type = None
    '''Array length calculation method 

    :type:  enum in [‘FIXED_COUNT’, ‘FIT_LENGTH’, ‘FIT_CURVE’], default ‘FIXED_COUNT’ 
    '''

    merge_threshold = None
    '''Limit below which to merge vertices 

    :type:  float in [0, inf], default 0.0 
    '''

    offset_object = None
    '''Use the location and rotation of another object to determine the distance and rotational change between arrayed items 

    :type:  Object 
    '''

    offset_u = None
    '''Amount to offset array UVs on the U axis 

    :type:  float in [-1, 1], default 0.0 
    '''

    offset_v = None
    '''Amount to offset array UVs on the V axis 

    :type:  float in [-1, 1], default 0.0 
    '''

    relative_offset_displace = None
    '''The size of the geometry will determine the distance between arrayed items 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    start_cap = None
    '''Mesh object to use as a start cap 

    :type:  Object 
    '''

    use_constant_offset = None
    '''Add a constant offset 

    :type:  boolean, default False 
    '''

    use_merge_vertices = None
    '''Merge vertices in adjacent duplicates 

    :type:  boolean, default False 
    '''

    use_merge_vertices_cap = None
    '''Merge vertices in first and last duplicates 

    :type:  boolean, default False 
    '''

    use_object_offset = None
    '''Add another object’s transformation to the total offset 

    :type:  boolean, default False 
    '''

    use_relative_offset = None
    '''Add an offset relative to the object’s bounding box 

    :type:  boolean, default False 
    '''


class BakePixel:
    du_dx = None
    '''

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    du_dy = None
    '''

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    dv_dx = None
    '''

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    dv_dy = None
    '''

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    next = None
    '''

    :type:  BakePixel, (readonly) 
    '''

    object_id = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    primitive_id = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    uv = None
    '''

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''


class BakeSettings:
    '''Bake data for a Scene data-block '''

    cage_extrusion = None
    '''Distance to use for the inward ray cast when using selected to active 

    :type:  float in [0, inf], default 0.0 
    '''

    cage_object = None
    '''Object to use as cage instead of calculating the cage from the active object with cage extrusion 

    :type:  Object 
    '''

    filepath = None
    '''Image filepath to use when saving externally 

    :type:  string, default “”, (never None) 
    '''

    height = None
    '''Vertical dimension of the baking map 

    :type:  int in [4, 10000], default 0 
    '''

    image_settings = None
    '''

    :type:  ImageFormatSettings, (readonly, never None) 
    '''

    margin = None
    '''Extends the baked result as a post process filter 

    :type:  int in [0, 32767], default 0 
    '''

    normal_b = None
    '''Axis to bake in blue channel 

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''

    normal_g = None
    '''Axis to bake in green channel 

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''

    normal_r = None
    '''Axis to bake in red channel 

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''

    normal_space = None
    '''Choose normal space for baking 

    :type:  enum in [‘OBJECT’, ‘TANGENT’], default ‘OBJECT’ 
    '''

    pass_filter = None
    '''Passes to include in the active baking pass 

    :type:  enum set in {‘NONE’, ‘AO’, ‘EMIT’, ‘DIRECT’, ‘INDIRECT’, ‘COLOR’, ‘DIFFUSE’, ‘GLOSSY’, ‘TRANSMISSION’, ‘SUBSURFACE’}, default {}, (readonly) 
    '''

    save_mode = None
    '''Choose how to save the baking map 

    :type:  enum in [‘INTERNAL’, ‘EXTERNAL’], default ‘INTERNAL’ 
    '''

    use_automatic_name = None
    '''Automatically name the output file with the pass type (external only) 

    :type:  boolean, default False 
    '''

    use_cage = None
    '''Cast rays to active object from a cage 

    :type:  boolean, default False 
    '''

    use_clear = None
    '''Clear Images before baking (internal only) 

    :type:  boolean, default False 
    '''

    use_pass_ambient_occlusion = None
    '''Add ambient occlusion contribution 

    :type:  boolean, default False 
    '''

    use_pass_color = None
    '''Color the pass 

    :type:  boolean, default False 
    '''

    use_pass_diffuse = None
    '''Add diffuse contribution 

    :type:  boolean, default False 
    '''

    use_pass_direct = None
    '''Add direct lighting contribution 

    :type:  boolean, default False 
    '''

    use_pass_emit = None
    '''Add emission contribution 

    :type:  boolean, default False 
    '''

    use_pass_glossy = None
    '''Add glossy contribution 

    :type:  boolean, default False 
    '''

    use_pass_indirect = None
    '''Add indirect lighting contribution 

    :type:  boolean, default False 
    '''

    use_pass_subsurface = None
    '''Add subsurface contribution 

    :type:  boolean, default False 
    '''

    use_pass_transmission = None
    '''Add transmission contribution 

    :type:  boolean, default False 
    '''

    use_selected_to_active = None
    '''Bake shading on the surface of selected objects to the active object 

    :type:  boolean, default False 
    '''

    use_split_materials = None
    '''Split external images per material (external only) 

    :type:  boolean, default False 
    '''

    width = None
    '''Horizontal dimension of the baking map 

    :type:  int in [4, 10000], default 0 
    '''


class BevelModifier:
    '''Bevel modifier to make edges and vertices more rounded '''

    angle_limit = None
    '''Angle above which to bevel edges 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    face_strength_mode = None
    '''Whether to set face strength, and which faces to set it on 

    :type:  enum in [‘FSTR_NONE’, ‘FSTR_NEW’, ‘FSTR_AFFECTED’, ‘FSTR_ALL’], default ‘FSTR_NONE’ 
    '''

    harden_normals = None
    '''Match normals of new faces to adjacent faces 

    :type:  boolean, default False 
    '''

    limit_method = None
    '''

    :type:  enum in [‘NONE’, ‘ANGLE’, ‘WEIGHT’, ‘VGROUP’], default ‘NONE’ 
    '''

    loop_slide = None
    '''Prefer sliding along edges to having even widths 

    :type:  boolean, default False 
    '''

    mark_seam = None
    '''Mark Seams along beveled edges 

    :type:  boolean, default False 
    '''

    mark_sharp = None
    '''Mark beveled edges as sharp 

    :type:  boolean, default False 
    '''

    material = None
    '''Material index of generated faces, -1 for automatic 

    :type:  int in [-1, 32767], default 0 
    '''

    miter_inner = None
    '''Pattern to use for inside of miters 

    :type:  enum in [‘MITER_SHARP’, ‘MITER_PATCH’, ‘MITER_ARC’], default ‘MITER_SHARP’ 
    '''

    miter_outer = None
    '''Pattern to use for outside of miters 

    :type:  enum in [‘MITER_SHARP’, ‘MITER_PATCH’, ‘MITER_ARC’], default ‘MITER_SHARP’ 
    '''

    offset_type = None
    '''What distance Width measures 

    :type:  enum in [‘OFFSET’, ‘WIDTH’, ‘DEPTH’, ‘PERCENT’], default ‘OFFSET’ 
    '''

    profile = None
    '''The profile shape (0.5 = round) 

    :type:  float in [0, 1], default 0.0 
    '''

    segments = None
    '''Number of segments for round edges/verts 

    :type:  int in [1, 100], default 0 
    '''

    spread = None
    '''Spread distance for inner miter arcs 

    :type:  float in [0, inf], default 0.0 
    '''

    use_clamp_overlap = None
    '''Clamp the width to avoid overlap 

    :type:  boolean, default False 
    '''

    use_only_vertices = None
    '''Bevel verts/corners, not edges 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''

    width = None
    '''Bevel amount 

    :type:  float in [0, inf], default 0.0 
    '''

    width_pct = None
    '''Bevel amount for percentage method 

    :type:  float in [0, inf], default 0.0 
    '''


class BezierSplinePoint:
    '''Bezier curve point with two handles '''

    co = None
    '''Coordinates of the control point 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    handle_left = None
    '''Coordinates of the first handle 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    handle_left_type = None
    '''Handle types 

    :type:  enum in [‘FREE’, ‘VECTOR’, ‘ALIGNED’, ‘AUTO’], default ‘FREE’ 
    '''

    handle_right = None
    '''Coordinates of the second handle 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    handle_right_type = None
    '''Handle types 

    :type:  enum in [‘FREE’, ‘VECTOR’, ‘ALIGNED’, ‘AUTO’], default ‘FREE’ 
    '''

    hide = None
    '''Visibility status 

    :type:  boolean, default False 
    '''

    radius = None
    '''Radius for beveling 

    :type:  float in [0, inf], default 0.0 
    '''

    select_control_point = None
    '''Control point selection status 

    :type:  boolean, default False 
    '''

    select_left_handle = None
    '''Handle 1 selection status 

    :type:  boolean, default False 
    '''

    select_right_handle = None
    '''Handle 2 selection status 

    :type:  boolean, default False 
    '''

    tilt = None
    '''Tilt in 3D View 

    :type:  float in [-376.991, 376.991], default 0.0 
    '''

    weight_softbody = None
    '''Softbody goal weight 

    :type:  float in [0.01, 100], default 0.0 
    '''


class BlendData:
    '''Main data structure representing a .blend file and all its data-blocks '''

    actions = None
    '''Action data-blocks 

    :type:  BlendDataActions bpy_prop_collection of Action, (readonly) 
    '''

    armatures = None
    '''Armature data-blocks 

    :type:  BlendDataArmatures bpy_prop_collection of Armature, (readonly) 
    '''

    brushes = None
    '''Brush data-blocks 

    :type:  BlendDataBrushes bpy_prop_collection of Brush, (readonly) 
    '''

    cache_files = None
    '''Cache Files data-blocks 

    :type:  BlendDataCacheFiles bpy_prop_collection of CacheFile, (readonly) 
    '''

    cameras = None
    '''Camera data-blocks 

    :type:  BlendDataCameras bpy_prop_collection of Camera, (readonly) 
    '''

    collections = None
    '''Collection data-blocks 

    :type:  BlendDataCollections bpy_prop_collection of Collection, (readonly) 
    '''

    curves = None
    '''Curve data-blocks 

    :type:  BlendDataCurves bpy_prop_collection of Curve, (readonly) 
    '''

    filepath = None
    '''Path to the .blend file 

    :type:  string, default “”, (readonly, never None) 
    '''

    fonts = None
    '''Vector font data-blocks 

    :type:  BlendDataFonts bpy_prop_collection of VectorFont, (readonly) 
    '''

    grease_pencils = None
    '''Grease Pencil data-blocks 

    :type:  BlendDataGreasePencils bpy_prop_collection of GreasePencil, (readonly) 
    '''

    images = None
    '''Image data-blocks 

    :type:  BlendDataImages bpy_prop_collection of Image, (readonly) 
    '''

    is_dirty = None
    '''Have recent edits been saved to disk 

    :type:  boolean, default False, (readonly) 
    '''

    is_saved = None
    '''Has the current session been saved to disk as a .blend file 

    :type:  boolean, default False, (readonly) 
    '''

    lattices = None
    '''Lattice data-blocks 

    :type:  BlendDataLattices bpy_prop_collection of Lattice, (readonly) 
    '''

    libraries = None
    '''Library data-blocks 

    :type:  BlendDataLibraries bpy_prop_collection of Library, (readonly) 
    '''

    lightprobes = None
    '''LightProbe data-blocks 

    :type:  BlendDataProbes bpy_prop_collection of LightProbe, (readonly) 
    '''

    lights = None
    '''Light data-blocks 

    :type:  BlendDataLights bpy_prop_collection of Light, (readonly) 
    '''

    linestyles = None
    '''Line Style data-blocks 

    :type:  BlendDataLineStyles bpy_prop_collection of FreestyleLineStyle, (readonly) 
    '''

    masks = None
    '''Masks data-blocks 

    :type:  BlendDataMasks bpy_prop_collection of Mask, (readonly) 
    '''

    materials = None
    '''Material data-blocks 

    :type:  BlendDataMaterials bpy_prop_collection of Material, (readonly) 
    '''

    meshes = None
    '''Mesh data-blocks 

    :type:  BlendDataMeshes bpy_prop_collection of Mesh, (readonly) 
    '''

    metaballs = None
    '''Metaball data-blocks 

    :type:  BlendDataMetaBalls bpy_prop_collection of MetaBall, (readonly) 
    '''

    movieclips = None
    '''Movie Clip data-blocks 

    :type:  BlendDataMovieClips bpy_prop_collection of MovieClip, (readonly) 
    '''

    node_groups = None
    '''Node group data-blocks 

    :type:  BlendDataNodeTrees bpy_prop_collection of NodeTree, (readonly) 
    '''

    objects = None
    '''Object data-blocks 

    :type:  BlendDataObjects bpy_prop_collection of Object, (readonly) 
    '''

    paint_curves = None
    '''Paint Curves data-blocks 

    :type:  BlendDataPaintCurves bpy_prop_collection of PaintCurve, (readonly) 
    '''

    palettes = None
    '''Palette data-blocks 

    :type:  BlendDataPalettes bpy_prop_collection of Palette, (readonly) 
    '''

    particles = None
    '''Particle data-blocks 

    :type:  BlendDataParticles bpy_prop_collection of ParticleSettings, (readonly) 
    '''

    scenes = None
    '''Scene data-blocks 

    :type:  BlendDataScenes bpy_prop_collection of Scene, (readonly) 
    '''

    screens = None
    '''Screen data-blocks 

    :type:  BlendDataScreens bpy_prop_collection of Screen, (readonly) 
    '''

    shape_keys = None
    '''Shape Key data-blocks 

    :type:  bpy_prop_collection of Key, (readonly) 
    '''

    sounds = None
    '''Sound data-blocks 

    :type:  BlendDataSounds bpy_prop_collection of Sound, (readonly) 
    '''

    speakers = None
    '''Speaker data-blocks 

    :type:  BlendDataSpeakers bpy_prop_collection of Speaker, (readonly) 
    '''

    texts = None
    '''Text data-blocks 

    :type:  BlendDataTexts bpy_prop_collection of Text, (readonly) 
    '''

    textures = None
    '''Texture data-blocks 

    :type:  BlendDataTextures bpy_prop_collection of Texture, (readonly) 
    '''

    use_autopack = None
    '''Automatically pack all external data into .blend file 

    :type:  boolean, default False 
    '''

    version = None
    '''Version of Blender the .blend was saved with 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0), (readonly) 
    '''

    window_managers = None
    '''Window manager data-blocks 

    :type:  BlendDataWindowManagers bpy_prop_collection of WindowManager, (readonly) 
    '''

    workspaces = None
    '''Workspace data-blocks 

    :type:  BlendDataWorkSpaces bpy_prop_collection of WorkSpace, (readonly) 
    '''

    worlds = None
    '''World data-blocks 

    :type:  BlendDataWorlds bpy_prop_collection of World, (readonly) 
    '''

    def batch_remove(self, ids=(id1, id2, ...)):
        '''Note that this function is quicker than individual calls to remove() (from bpy.types.BlendData ID collections), but less safe/versatile (it can break Blender, e.g. by removing all scenes…). 

        :param ids: Iterables of IDs (types can be mixed). 
        :type ids: 
        '''
        pass

    def user_map(self, key_types, value_types):
        '''For list of valid set members for key_types & value_types, see: bpy.types.KeyingSetPath.id_type. 

        :param subset: When passed, only these data-blocks and their users will be included as keys/values in the map. 
        :type subset: sequence
        :param key_types: Filter the keys mapped by ID types. 
        :type key_types: set of strings
        :param value_types: Filter the values in the set by ID types. 
        :type value_types: set of strings
        :rtype: dict 
        :return:  dictionary of bpy.types.ID instances, with sets of ID’s as their values. 
        '''
        pass


class BlendDataActions:
    '''Collection of actions '''

    def new(self, name):
        '''Add a new action to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Action 
        :return:  New action data-block 
        '''
        pass

    def remove(self, action, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a action from the current blendfile 

        :param action: Action to remove 
        :type action: Action, (never None)
        :param do_unlink: Unlink all usages of this action before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this action 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this action 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataArmatures:
    '''Collection of armatures '''

    def new(self, name):
        '''Add a new armature to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Armature 
        :return:  New armature data-block 
        '''
        pass

    def remove(self,
               armature,
               do_unlink=True,
               do_id_user=True,
               do_ui_user=True):
        '''Remove a armature from the current blendfile 

        :param armature: Armature to remove 
        :type armature: Armature, (never None)
        :param do_unlink: Unlink all usages of this armature before deleting it (WARNING: will also delete objects instancing that armature data) 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this armature data 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this armature data 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataBrushes:
    '''Collection of brushes '''

    def new(self, name, mode='TEXTURE_PAINT'):
        '''Add a new brush to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :param mode: Paint Mode for the new brushOBJECT Object Mode.EDIT Edit Mode.POSE Pose Mode.SCULPT Sculpt Mode.VERTEX_PAINT Vertex Paint.WEIGHT_PAINT Weight Paint.TEXTURE_PAINT Texture Paint.PARTICLE_EDIT Particle Edit.EDIT_GPENCIL Edit Mode, Edit Grease Pencil Strokes.SCULPT_GPENCIL Sculpt Mode, Sculpt Grease Pencil Strokes.PAINT_GPENCIL Draw, Paint Grease Pencil Strokes.WEIGHT_GPENCIL Weight Paint, Grease Pencil Weight Paint Strokes. 
        :type mode: enum in ['OBJECT', 'EDIT', 'POSE', 'SCULPT', 'VERTEX_PAINT', 'WEIGHT_PAINT', 'TEXTURE_PAINT', 'PARTICLE_EDIT', 'EDIT_GPENCIL', 'SCULPT_GPENCIL', 'PAINT_GPENCIL', 'WEIGHT_GPENCIL'], (optional)
        :rtype: Brush 
        :return:  New brush data-block 
        '''
        pass

    def remove(self, brush, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a brush from the current blendfile 

        :param brush: Brush to remove 
        :type brush: Brush, (never None)
        :param do_unlink: Unlink all usages of this brush before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this brush 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this brush 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass

    def create_gpencil_data(self, brush):
        '''Add grease pencil brush settings 

        :param brush: Brush 
        :type brush: Brush, (never None)
        '''
        pass


class BlendDataCacheFiles:
    '''Collection of cache files '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataCameras:
    '''Collection of cameras '''

    def new(self, name):
        '''Add a new camera to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Camera 
        :return:  New camera data-block 
        '''
        pass

    def remove(self, camera, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a camera from the current blendfile 

        :param camera: Camera to remove 
        :type camera: Camera, (never None)
        :param do_unlink: Unlink all usages of this camera before deleting it (WARNING: will also delete objects instancing that camera data) 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this camera 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this camera 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataCollections:
    '''Collection of collections '''

    def new(self, name):
        '''Add a new collection to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Collection 
        :return:  New collection data-block 
        '''
        pass

    def remove(self,
               collection,
               do_unlink=True,
               do_id_user=True,
               do_ui_user=True):
        '''Remove a collection from the current blendfile 

        :param collection: Collection to remove 
        :type collection: Collection, (never None)
        :param do_unlink: Unlink all usages of this collection before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this collection 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this collection 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataCurves:
    '''Collection of curves '''

    def new(self, name, type):
        '''Add a new curve to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :param type: Type, The type of curve to add 
        :type type: enum in ['CURVE', 'SURFACE', 'FONT']
        :rtype: Curve 
        :return:  New curve data-block 
        '''
        pass

    def remove(self, curve, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a curve from the current blendfile 

        :param curve: Curve to remove 
        :type curve: Curve, (never None)
        :param do_unlink: Unlink all usages of this curve before deleting it (WARNING: will also delete objects instancing that curve data) 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this curve data 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this curve data 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataFonts:
    '''Collection of fonts '''

    def load(self, filepath, check_existing=False):
        '''Load a new font into the main database 

        :param filepath: path of the font to load 
        :type filepath: string, (never None)
        :param check_existing: Using existing data-block if this file is already loaded 
        :type check_existing: boolean, (optional)
        :rtype: VectorFont 
        :return:  New font data-block 
        '''
        pass

    def remove(self, vfont, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a font from the current blendfile 

        :param vfont: Font to remove 
        :type vfont: VectorFont, (never None)
        :param do_unlink: Unlink all usages of this font before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this font 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this font 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataGreasePencils:
    '''Collection of grease pencils '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass

    def remove(self,
               grease_pencil,
               do_unlink=True,
               do_id_user=True,
               do_ui_user=True):
        '''Remove a grease pencil instance from the current blendfile 

        :param grease_pencil: Grease Pencil to remove 
        :type grease_pencil: GreasePencil, (never None)
        :param do_unlink: Unlink all usages of this grease pencil before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this grease pencil 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this grease pencil 
        :type do_ui_user: boolean, (optional)
        '''
        pass


class BlendDataImages:
    '''Collection of images '''

    def new(self,
            name,
            width,
            height,
            alpha=False,
            float_buffer=False,
            stereo3d=False):
        '''Add a new image to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :param width: Width of the image 
        :type width: int in [1, inf]
        :param height: Height of the image 
        :type height: int in [1, inf]
        :param alpha: Alpha, Use alpha channel 
        :type alpha: boolean, (optional)
        :param float_buffer: Float Buffer, Create an image with floating point color 
        :type float_buffer: boolean, (optional)
        :param stereo3d: Stereo 3D, Create left and right views 
        :type stereo3d: boolean, (optional)
        :rtype: Image 
        :return:  New image data-block 
        '''
        pass

    def load(self, filepath, check_existing=False):
        '''Load a new image into the main database 

        :param filepath: path of the file to load 
        :type filepath: string, (never None)
        :param check_existing: Using existing data-block if this file is already loaded 
        :type check_existing: boolean, (optional)
        :rtype: Image 
        :return:  New image data-block 
        '''
        pass

    def remove(self, image, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove an image from the current blendfile 

        :param image: Image to remove 
        :type image: Image, (never None)
        :param do_unlink: Unlink all usages of this image before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this image 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this image 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataLattices:
    '''Collection of lattices '''

    def new(self, name):
        '''Add a new lattice to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Lattice 
        :return:  New lattices data-block 
        '''
        pass

    def remove(self, lattice, do_unlink=True, do_id_user=True,
               do_ui_user=True):
        '''Remove a lattice from the current blendfile 

        :param lattice: Lattice to remove 
        :type lattice: Lattice, (never None)
        :param do_unlink: Unlink all usages of this lattice before deleting it (WARNING: will also delete objects instancing that lattice data) 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this lattice data 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this lattice data 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataLibraries:
    '''Collection of libraries '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass

    def load(self, filepath, link=False, relative=False):
        '''Returns a context manager which exposes 2 library objects on entering. Each object has attributes matching bpy.data which are lists of strings to be linked. 

        :param filepath: The path to a blend file. 
        :type filepath: string
        :param link: When False reference to the original file is lost. 
        :type link: bool
        :param relative: When True the path is stored relative to the open blend file. 
        :type relative: bool
        '''
        pass

    def write(self,
              filepath,
              datablocks,
              relative_remap=False,
              fake_user=False,
              compress=False):
        '''Write data-blocks into a blend file. 

        :param filepath: The path to write the blend-file. 
        :type filepath: string
        :param datablocks: set of data-blocks (bpy.types.ID instances). 
        :type datablocks: set
        :param relative_remap: When True, make paths relative to the current blend-file. 
        :type relative_remap: bool
        :param fake_user: When True, data-blocks will be written with fake-user flag enabled. 
        :type fake_user: bool
        :param compress: When True, write a compressed blend file. 
        :type compress: bool
        '''
        pass


class BlendDataLights:
    '''Collection of lights '''

    def new(self, name, type):
        '''Add a new light to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :param type: Type, The type of texture to addPOINT Point, Omnidirectional point light source.SUN Sun, Constant direction parallel ray light source.SPOT Spot, Directional cone light source.AREA Area, Directional area light source. 
        :type type: enum in ['POINT', 'SUN', 'SPOT', 'AREA']
        :rtype: Light 
        :return:  New light data-block 
        '''
        pass

    def remove(self, light, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a light from the current blendfile 

        :param light: Light to remove 
        :type light: Light, (never None)
        :param do_unlink: Unlink all usages of this Light before deleting it (WARNING: will also delete objects instancing that light data) 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this light data 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this light data 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataLineStyles:
    '''Collection of line styles '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass

    def new(self, name):
        '''Add a new line style instance to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: FreestyleLineStyle 
        :return:  New line style data-block 
        '''
        pass

    def remove(self,
               linestyle,
               do_unlink=True,
               do_id_user=True,
               do_ui_user=True):
        '''Remove a line style instance from the current blendfile 

        :param linestyle: Line style to remove 
        :type linestyle: FreestyleLineStyle, (never None)
        :param do_unlink: Unlink all usages of this line style before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this line style 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this line style 
        :type do_ui_user: boolean, (optional)
        '''
        pass


class BlendDataMasks:
    '''Collection of masks '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass

    def new(self, name):
        '''Add a new mask with a given name to the main database 

        :param name: Mask, Name of new mask data-block 
        :type name: string, (never None)
        :rtype: Mask 
        :return:  New mask data-block 
        '''
        pass

    def remove(self, mask, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a masks from the current blendfile. 

        :param mask: Mask to remove 
        :type mask: Mask, (never None)
        :param do_unlink: Unlink all usages of this mask before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this mask 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this mask 
        :type do_ui_user: boolean, (optional)
        '''
        pass


class BlendDataMaterials:
    '''Collection of materials '''

    def new(self, name):
        '''Add a new material to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Material 
        :return:  New material data-block 
        '''
        pass

    def create_gpencil_data(self, material):
        '''Add grease pencil material settings 

        :param material: Material 
        :type material: Material, (never None)
        '''
        pass

    def remove(self,
               material,
               do_unlink=True,
               do_id_user=True,
               do_ui_user=True):
        '''Remove a material from the current blendfile 

        :param material: Material to remove 
        :type material: Material, (never None)
        :param do_unlink: Unlink all usages of this material before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this material 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this material 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataMeshes:
    '''Collection of meshes '''

    def new(self, name):
        '''Add a new mesh to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Mesh 
        :return:  New mesh data-block 
        '''
        pass

    def new_from_object(self,
                        depsgraph,
                        object,
                        apply_modifiers,
                        calc_undeformed=False):
        '''Add a new mesh created from object with modifiers applied 

        :param depsgraph: Dependency Graph, Evaluated dependency graph within which to evaluate modifiers 
        :type depsgraph: Depsgraph, (never None)
        :param object: Object to create mesh from 
        :type object: Object, (never None)
        :param apply_modifiers: Apply modifiers 
        :type apply_modifiers: boolean
        :param calc_undeformed: Calculate Undeformed, Calculate undeformed vertex coordinates 
        :type calc_undeformed: boolean, (optional)
        :rtype: Mesh 
        :return:  Mesh created from object, remove it if it is only used for export 
        '''
        pass

    def remove(self, mesh, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a mesh from the current blendfile 

        :param mesh: Mesh to remove 
        :type mesh: Mesh, (never None)
        :param do_unlink: Unlink all usages of this mesh before deleting it (WARNING: will also delete objects instancing that mesh data) 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this mesh data 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this mesh data 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataMetaBalls:
    '''Collection of metaballs '''

    def new(self, name):
        '''Add a new metaball to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: MetaBall 
        :return:  New metaball data-block 
        '''
        pass

    def remove(self,
               metaball,
               do_unlink=True,
               do_id_user=True,
               do_ui_user=True):
        '''Remove a metaball from the current blendfile 

        :param metaball: Metaball to remove 
        :type metaball: MetaBall, (never None)
        :param do_unlink: Unlink all usages of this metaball before deleting it (WARNING: will also delete objects instancing that metaball data) 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this metaball data 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this metaball data 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataMovieClips:
    '''Collection of movie clips '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass

    def remove(self, clip, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a movie clip from the current blendfile. 

        :param clip: Movie clip to remove 
        :type clip: MovieClip, (never None)
        :param do_unlink: Unlink all usages of this movie clip before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this movie clip 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this movie clip 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def load(self, filepath, check_existing=False):
        '''Add a new movie clip to the main database from a file (while check_existing is disabled for consistency with other load functions, behavior with multiple movie-clips using the same file may incorrectly generate proxies) 

        :param filepath: path for the data-block 
        :type filepath: string, (never None)
        :param check_existing: Using existing data-block if this file is already loaded 
        :type check_existing: boolean, (optional)
        :rtype: MovieClip 
        :return:  New movie clip data-block 
        '''
        pass


class BlendDataNodeTrees:
    '''Collection of node trees '''

    def new(self, name, type):
        '''Add a new node tree to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :param type: Type, The type of node_group to add 
        :type type: enum in ['DUMMY']
        :rtype: NodeTree 
        :return:  New node tree data-block 
        '''
        pass

    def remove(self, tree, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a node tree from the current blendfile 

        :param tree: Node tree to remove 
        :type tree: NodeTree, (never None)
        :param do_unlink: Unlink all usages of this node tree before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this node tree 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this node tree 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataObjects:
    '''Collection of objects '''

    def new(self, name, object_data):
        '''Add a new object to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :param object_data: Object data or None for an empty object 
        :type object_data: ID
        :rtype: Object 
        :return:  New object data-block 
        '''
        pass

    def remove(self, object, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a object from the current blendfile 

        :param object: Object to remove 
        :type object: Object, (never None)
        :param do_unlink: Unlink all usages of this object before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this object 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this object 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataPaintCurves:
    '''Collection of paint curves '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataPalettes:
    '''Collection of palettes '''

    def new(self, name):
        '''Add a new palette to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Palette 
        :return:  New palette data-block 
        '''
        pass

    def remove(self, palette, do_unlink=True, do_id_user=True,
               do_ui_user=True):
        '''Remove a palette from the current blendfile 

        :param palette: Palette to remove 
        :type palette: Palette, (never None)
        :param do_unlink: Unlink all usages of this palette before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this palette 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this palette 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataParticles:
    '''Collection of particle settings '''

    def new(self, name):
        '''Add a new particle settings instance to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: ParticleSettings 
        :return:  New particle settings data-block 
        '''
        pass

    def remove(self,
               particle,
               do_unlink=True,
               do_id_user=True,
               do_ui_user=True):
        '''Remove a particle settings instance from the current blendfile 

        :param particle: Particle Settings to remove 
        :type particle: ParticleSettings, (never None)
        :param do_unlink: Unlink all usages of those particle settings before deleting them 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this particle settings 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this particle settings 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataProbes:
    '''Collection of light probes '''

    def new(self, name):
        '''Add a new probe to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: LightProbe 
        :return:  New light probe data-block 
        '''
        pass

    def remove(self,
               lightprobe,
               do_unlink=True,
               do_id_user=True,
               do_ui_user=True):
        '''Remove a probe from the current blendfile 

        :param lightprobe: Probe to remove 
        :type lightprobe: LightProbe, (never None)
        :param do_unlink: Unlink all usages of this probe before deleting it (WARNING: will also delete objects instancing that light probe data) 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this light probe 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this light probe 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataScenes:
    '''Collection of scenes '''

    def new(self, name):
        '''Add a new scene to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Scene 
        :return:  New scene data-block 
        '''
        pass

    def remove(self, scene, do_unlink=True):
        '''Remove a scene from the current blendfile 

        :param scene: Scene to remove 
        :type scene: Scene, (never None)
        :param do_unlink: Unlink all usages of this scene before deleting it 
        :type do_unlink: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataScreens:
    '''Collection of screens '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataSounds:
    '''Collection of sounds '''

    def load(self, filepath, check_existing=False):
        '''Add a new sound to the main database from a file 

        :param filepath: path for the data-block 
        :type filepath: string, (never None)
        :param check_existing: Using existing data-block if this file is already loaded 
        :type check_existing: boolean, (optional)
        :rtype: Sound 
        :return:  New text data-block 
        '''
        pass

    def remove(self, sound, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a sound from the current blendfile 

        :param sound: Sound to remove 
        :type sound: Sound, (never None)
        :param do_unlink: Unlink all usages of this sound before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this sound 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this sound 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataSpeakers:
    '''Collection of speakers '''

    def new(self, name):
        '''Add a new speaker to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Speaker 
        :return:  New speaker data-block 
        '''
        pass

    def remove(self, speaker, do_unlink=True, do_id_user=True,
               do_ui_user=True):
        '''Remove a speaker from the current blendfile 

        :param speaker: Speaker to remove 
        :type speaker: Speaker, (never None)
        :param do_unlink: Unlink all usages of this speaker before deleting it (WARNING: will also delete objects instancing that speaker data) 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this speaker data 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this speaker data 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataTexts:
    '''Collection of texts '''

    def new(self, name):
        '''Add a new text to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: Text 
        :return:  New text data-block 
        '''
        pass

    def remove(self, text, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a text from the current blendfile 

        :param text: Text to remove 
        :type text: Text, (never None)
        :param do_unlink: Unlink all usages of this text before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this text 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this text 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def load(self, filepath, internal=False):
        '''Add a new text to the main database from a file 

        :param filepath: path for the data-block 
        :type filepath: string, (never None)
        :param internal: Make internal, Make text file internal after loading 
        :type internal: boolean, (optional)
        :rtype: Text 
        :return:  New text data-block 
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataTextures:
    '''Collection of textures '''

    def new(self, name, type):
        '''Add a new texture to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :param type: Type, The type of texture to addNONE None.BLEND Blend, Procedural - create a ramp texture.CLOUDS Clouds, Procedural - create a cloud-like fractal noise texture.DISTORTED_NOISE Distorted Noise, Procedural - noise texture distorted by two noise algorithms.IMAGE Image or Movie, Allow for images or movies to be used as textures.MAGIC Magic, Procedural - color texture based on trigonometric functions.MARBLE Marble, Procedural - marble-like noise texture with wave generated bands.MUSGRAVE Musgrave, Procedural - highly flexible fractal noise texture.NOISE Noise, Procedural - random noise, gives a different result every time, for every frame, for every pixel.STUCCI Stucci, Procedural - create a fractal noise texture.VORONOI Voronoi, Procedural - create cell-like patterns based on Worley noise.WOOD Wood, Procedural - wave generated bands or rings, with optional noise. 
        :type type: enum in ['NONE', 'BLEND', 'CLOUDS', 'DISTORTED_NOISE', 'IMAGE', 'MAGIC', 'MARBLE', 'MUSGRAVE', 'NOISE', 'STUCCI', 'VORONOI', 'WOOD']
        :rtype: Texture 
        :return:  New texture data-block 
        '''
        pass

    def remove(self, texture, do_unlink=True, do_id_user=True,
               do_ui_user=True):
        '''Remove a texture from the current blendfile 

        :param texture: Texture to remove 
        :type texture: Texture, (never None)
        :param do_unlink: Unlink all usages of this texture before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this texture 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this texture 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataWindowManagers:
    '''Collection of window managers '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataWorkSpaces:
    '''Collection of workspaces '''

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendDataWorlds:
    '''Collection of worlds '''

    def new(self, name):
        '''Add a new world to the main database 

        :param name: New name for the data-block 
        :type name: string, (never None)
        :rtype: World 
        :return:  New world data-block 
        '''
        pass

    def remove(self, world, do_unlink=True, do_id_user=True, do_ui_user=True):
        '''Remove a world from the current blendfile 

        :param world: World to remove 
        :type world: World, (never None)
        :param do_unlink: Unlink all usages of this world before deleting it 
        :type do_unlink: boolean, (optional)
        :param do_id_user: Decrement user counter of all datablocks used by this world 
        :type do_id_user: boolean, (optional)
        :param do_ui_user: Make sure interface does not reference this world 
        :type do_ui_user: boolean, (optional)
        '''
        pass

    def tag(self, value):
        '''tag 

        :param value: Value 
        :type value: boolean
        '''
        pass


class BlendTexture:
    '''Procedural color blending texture '''

    progression = None
    '''Style of the color blending 

    :type:  enum in [‘LINEAR’, ‘QUADRATIC’, ‘EASING’, ‘DIAGONAL’, ‘SPHERICAL’, ‘QUADRATIC_SPHERE’, ‘RADIAL’], default ‘LINEAR’ 
    '''

    use_flip_axis = None
    '''Flip the texture’s X and Y axis 

    :type:  enum in [‘HORIZONTAL’, ‘VERTICAL’], default ‘HORIZONTAL’ 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class BlenderRNA:
    '''Blender RNA structure definitions '''

    structs = None
    '''

    :type:  bpy_prop_collection of Struct, (readonly) 
    '''


class BoidRule:
    name = None
    '''Boid rule name 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''

    :type:  enum in [‘GOAL’, ‘AVOID’, ‘AVOID_COLLISION’, ‘SEPARATE’, ‘FLOCK’, ‘FOLLOW_LEADER’, ‘AVERAGE_SPEED’, ‘FIGHT’], default ‘GOAL’, (readonly) 
    '''

    use_in_air = None
    '''Use rule when boid is flying 

    :type:  boolean, default False 
    '''

    use_on_land = None
    '''Use rule when boid is on land 

    :type:  boolean, default False 
    '''


class BoidRuleAverageSpeed:
    level = None
    '''How much velocity’s z-component is kept constant 

    :type:  float in [0, 1], default 0.0 
    '''

    speed = None
    '''Percentage of maximum speed 

    :type:  float in [0, 1], default 0.0 
    '''

    wander = None
    '''How fast velocity’s direction is randomized 

    :type:  float in [0, 1], default 0.0 
    '''


class BoidRuleAvoid:
    fear_factor = None
    '''Avoid object if danger from it is above this threshold 

    :type:  float in [0, 100], default 0.0 
    '''

    object = None
    '''Object to avoid 

    :type:  Object 
    '''

    use_predict = None
    '''Predict target movement 

    :type:  boolean, default False 
    '''


class BoidRuleAvoidCollision:
    look_ahead = None
    '''Time to look ahead in seconds 

    :type:  float in [0, 100], default 0.0 
    '''

    use_avoid = None
    '''Avoid collision with other boids 

    :type:  boolean, default False 
    '''

    use_avoid_collision = None
    '''Avoid collision with deflector objects 

    :type:  boolean, default False 
    '''


class BoidRuleFight:
    distance = None
    '''Attack boids at max this distance 

    :type:  float in [0, 100], default 0.0 
    '''

    flee_distance = None
    '''Flee to this distance 

    :type:  float in [0, 100], default 0.0 
    '''


class BoidRuleFollowLeader:
    distance = None
    '''Distance behind leader to follow 

    :type:  float in [0, 100], default 0.0 
    '''

    object = None
    '''Follow this object instead of a boid 

    :type:  Object 
    '''

    queue_count = None
    '''How many boids in a line 

    :type:  int in [0, 100], default 0 
    '''

    use_line = None
    '''Follow leader in a line 

    :type:  boolean, default False 
    '''


class BoidRuleGoal:
    object = None
    '''Goal object 

    :type:  Object 
    '''

    use_predict = None
    '''Predict target movement 

    :type:  boolean, default False 
    '''


class BoidSettings:
    '''Settings for boid physics '''

    accuracy = None
    '''Accuracy of attack 

    :type:  float in [0, 1], default 0.0 
    '''

    active_boid_state = None
    '''

    :type:  BoidRule, (readonly) 
    '''

    active_boid_state_index = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    aggression = None
    '''Boid will fight this times stronger enemy 

    :type:  float in [0, 100], default 0.0 
    '''

    air_acc_max = None
    '''Maximum acceleration in air (relative to maximum speed) 

    :type:  float in [0, 1], default 0.0 
    '''

    air_ave_max = None
    '''Maximum angular velocity in air (relative to 180 degrees) 

    :type:  float in [0, 1], default 0.0 
    '''

    air_personal_space = None
    '''Radius of boids personal space in air (% of particle size) 

    :type:  float in [0, 10], default 0.0 
    '''

    air_speed_max = None
    '''Maximum speed in air 

    :type:  float in [0, 100], default 0.0 
    '''

    air_speed_min = None
    '''Minimum speed in air (relative to maximum speed) 

    :type:  float in [0, 1], default 0.0 
    '''

    bank = None
    '''Amount of rotation around velocity vector on turns 

    :type:  float in [0, 2], default 0.0 
    '''

    health = None
    '''Initial boid health when born 

    :type:  float in [0, 100], default 0.0 
    '''

    height = None
    '''Boid height relative to particle size 

    :type:  float in [0, 2], default 0.0 
    '''

    land_acc_max = None
    '''Maximum acceleration on land (relative to maximum speed) 

    :type:  float in [0, 1], default 0.0 
    '''

    land_ave_max = None
    '''Maximum angular velocity on land (relative to 180 degrees) 

    :type:  float in [0, 1], default 0.0 
    '''

    land_jump_speed = None
    '''Maximum speed for jumping 

    :type:  float in [0, 100], default 0.0 
    '''

    land_personal_space = None
    '''Radius of boids personal space on land (% of particle size) 

    :type:  float in [0, 10], default 0.0 
    '''

    land_smooth = None
    '''How smoothly the boids land 

    :type:  float in [0, 10], default 0.0 
    '''

    land_speed_max = None
    '''Maximum speed on land 

    :type:  float in [0, 100], default 0.0 
    '''

    land_stick_force = None
    '''How strong a force must be to start effecting a boid on land 

    :type:  float in [0, 1000], default 0.0 
    '''

    pitch = None
    '''Amount of rotation around side vector 

    :type:  float in [0, 2], default 0.0 
    '''

    range = None
    '''Maximum distance from which a boid can attack 

    :type:  float in [0, 100], default 0.0 
    '''

    states = None
    '''

    :type:  bpy_prop_collection of BoidState, (readonly) 
    '''

    strength = None
    '''Maximum caused damage on attack per second 

    :type:  float in [0, 100], default 0.0 
    '''

    use_climb = None
    '''Allow boids to climb goal objects 

    :type:  boolean, default False 
    '''

    use_flight = None
    '''Allow boids to move in air 

    :type:  boolean, default False 
    '''

    use_land = None
    '''Allow boids to move on land 

    :type:  boolean, default False 
    '''


class BoidState:
    '''Boid state for boid physics '''

    active_boid_rule = None
    '''

    :type:  BoidRule, (readonly) 
    '''

    active_boid_rule_index = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    falloff = None
    '''

    :type:  float in [0, 10], default 0.0 
    '''

    name = None
    '''Boid state name 

    :type:  string, default “”, (never None) 
    '''

    rule_fuzzy = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    rules = None
    '''

    :type:  bpy_prop_collection of BoidRule, (readonly) 
    '''

    ruleset_type = None
    '''How the rules in the list are evaluated 

    :type:  enum in [‘FUZZY’, ‘RANDOM’, ‘AVERAGE’], default ‘FUZZY’ 
    '''

    volume = None
    '''

    :type:  float in [0, 100], default 0.0 
    '''


class Bone:
    '''Bone in an Armature data-block '''

    bbone_curveinx = None
    '''X-axis handle offset for start of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_curveiny = None
    '''Y-axis handle offset for start of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_curveoutx = None
    '''X-axis handle offset for end of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_curveouty = None
    '''Y-axis handle offset for end of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_custom_handle_end = None
    '''Bone that serves as the end handle for the B-Bone curve 

    :type:  Bone 
    '''

    bbone_custom_handle_start = None
    '''Bone that serves as the start handle for the B-Bone curve 

    :type:  Bone 
    '''

    bbone_easein = None
    '''Length of first Bezier Handle (for B-Bones only) 

    :type:  float in [-5, 5], default 1.0 
    '''

    bbone_easeout = None
    '''Length of second Bezier Handle (for B-Bones only) 

    :type:  float in [-5, 5], default 1.0 
    '''

    bbone_handle_type_end = None
    '''Selects how the end handle of the B-Bone is computed 

    :type:  enum in [‘AUTO’, ‘ABSOLUTE’, ‘RELATIVE’, ‘TANGENT’], default ‘AUTO’ 
    '''

    bbone_handle_type_start = None
    '''Selects how the start handle of the B-Bone is computed 

    :type:  enum in [‘AUTO’, ‘ABSOLUTE’, ‘RELATIVE’, ‘TANGENT’], default ‘AUTO’ 
    '''

    bbone_rollin = None
    '''Roll offset for the start of the B-Bone, adjusts twist 

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    bbone_rollout = None
    '''Roll offset for the end of the B-Bone, adjusts twist 

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    bbone_scalein = None
    '''Scale factor for start of the B-Bone, adjusts thickness (for tapering effects) 

    :type:  float in [0, 5], default 1.0 
    '''

    bbone_scaleout = None
    '''Scale factor for end of the B-Bone, adjusts thickness (for tapering effects) 

    :type:  float in [0, 5], default 1.0 
    '''

    bbone_segments = None
    '''Number of subdivisions of bone (for B-Bones only) 

    :type:  int in [1, 32], default 0 
    '''

    bbone_x = None
    '''B-Bone X size 

    :type:  float in [0, 1000], default 0.0 
    '''

    bbone_z = None
    '''B-Bone Z size 

    :type:  float in [0, 1000], default 0.0 
    '''

    children = None
    '''Bones which are children of this bone 

    :type:  bpy_prop_collection of Bone, (readonly) 
    '''

    envelope_distance = None
    '''Bone deformation distance (for Envelope deform only) 

    :type:  float in [0, 1000], default 0.0 
    '''

    envelope_weight = None
    '''Bone deformation weight (for Envelope deform only) 

    :type:  float in [0, 1000], default 0.0 
    '''

    head = None
    '''Location of head end of the bone relative to its parent 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    head_local = None
    '''Location of head end of the bone relative to armature 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    head_radius = None
    '''Radius of head of bone (for Envelope deform only) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    hide = None
    '''Bone is not visible when it is not in Edit Mode (i.e. in Object or Pose Modes) 

    :type:  boolean, default False 
    '''

    hide_select = None
    '''Bone is able to be selected 

    :type:  boolean, default False 
    '''

    layers = None
    '''Layers bone exists in 

    :type:  boolean array of 32 items, default (False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False) 
    '''

    matrix = None
    '''3x3 bone matrix 

    :type:  float multi-dimensional array of 3 * 3 items in [-inf, inf], default ((0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0)) 
    '''

    matrix_local = None
    '''4x4 bone matrix relative to armature 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    parent = None
    '''Parent bone (in same Armature) 

    :type:  Bone, (readonly) 
    '''

    select = None
    '''

    :type:  boolean, default False 
    '''

    select_head = None
    '''

    :type:  boolean, default False 
    '''

    select_tail = None
    '''

    :type:  boolean, default False 
    '''

    show_wire = None
    '''Bone is always drawn as Wireframe regardless of viewport draw mode (useful for non-obstructive custom bone shapes) 

    :type:  boolean, default False 
    '''

    tail = None
    '''Location of tail end of the bone 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    tail_local = None
    '''Location of tail end of the bone relative to armature 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    tail_radius = None
    '''Radius of tail of bone (for Envelope deform only) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_connect = None
    '''When bone has a parent, bone’s head is stuck to the parent’s tail 

    :type:  boolean, default False, (readonly) 
    '''

    use_cyclic_offset = None
    '''When bone doesn’t have a parent, it receives cyclic offset effects (Deprecated) 

    :type:  boolean, default False 
    '''

    use_deform = None
    '''Enable Bone to deform geometry 

    :type:  boolean, default False 
    '''

    use_endroll_as_inroll = None
    '''Use Roll Out of parent bone as Roll In of its children 

    :type:  boolean, default False 
    '''

    use_envelope_multiply = None
    '''When deforming bone, multiply effects of Vertex Group weights with Envelope influence 

    :type:  boolean, default False 
    '''

    use_inherit_rotation = None
    '''Bone inherits rotation or scale from parent bone 

    :type:  boolean, default False 
    '''

    use_inherit_scale = None
    '''Bone inherits scaling from parent bone 

    :type:  boolean, default False 
    '''

    use_local_location = None
    '''Bone location is set in local space 

    :type:  boolean, default False 
    '''

    use_relative_parent = None
    '''Object children will use relative transform, like deform 

    :type:  boolean, default False 
    '''

    basename = None
    '''The name of this bone before any ‘.’ character (readonly) '''

    center = None
    '''The midpoint between the head and the tail. (readonly) '''

    children = None
    '''A list of all the bones children. Warning: takes O(len(bones)) time. (readonly) '''

    children_recursive = None
    '''A list of all children from this bone. Warning: takes O(len(bones)**2) time. (readonly) '''

    children_recursive_basename = None
    '''Returns a chain of children with the same base name as this bone. Only direct chains are supported, forks caused by multiple children with matching base names will terminate the function and not be returned. Warning: takes O(len(bones)**2) time. (readonly) '''

    length = None
    '''The distance from head to tail, when set the head is moved to fit the length. '''

    parent_recursive = None
    '''A list of parents, starting with the immediate parent (readonly) '''

    vector = None
    '''The direction this bone is pointing. Utility function for (tail - head) (readonly) '''

    x_axis = None
    '''Vector pointing down the x-axis of the bone. (readonly) '''

    y_axis = None
    '''Vector pointing down the y-axis of the bone. (readonly) '''

    z_axis = None
    '''Vector pointing down the z-axis of the bone. (readonly) '''

    def evaluate_envelope(self, point):
        '''Calculate bone envelope at given point 

        :param point: Point, Position in 3d space to evaluate 
        :type point: float array of 3 items in [-inf, inf]
        :rtype: float in [-inf, inf] 
        :return:  Factor, Envelope factor 
        '''
        pass

    def convert_local_to_pose(
            self,
            matrix,
            matrix_local,
            parent_matrix=((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0),
                           (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)),
            parent_matrix_local=((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0),
                                 (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)),
            invert=False):
        '''Transform a matrix from Local to Pose space (or back), taking into account options like Inherit Scale and Local Location. Unlike Object.convert_space, this uses custom rest and pose matrices provided by the caller. If the parent matrices are omitted, the bone is assumed to have no parent. 

        :param matrix: The matrix to transform 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        :param matrix_local: The custom rest matrix of this bone (Bone.matrix_local) 
        :type matrix_local: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        :param parent_matrix: The custom pose matrix of the parent bone (PoseBone.matrix) 
        :type parent_matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf], (optional)
        :param parent_matrix_local: The custom rest matrix of the parent bone (Bone.matrix_local) 
        :type parent_matrix_local: float multi-dimensional array of 4 * 4 items in [-inf, inf], (optional)
        :param invert: Convert from Pose to Local space 
        :type invert: boolean, (optional)
        :rtype: float multi-dimensional array of 4 * 4 items in [-inf, inf] 
        :return:  The transformed matrix 
        '''
        pass

    def parent_index(self, parent_test):
        '''The same as ‘bone in other_bone.parent_recursive’ but saved generating a list. 

        '''
        pass

    def translate(self, vec):
        '''Utility function to add vec to the head and tail of this bone 

        '''
        pass


class BoneGroup:
    '''Groups of Pose Channels (Bones) '''

    color_set = None
    '''Custom color set to use 

    :type:  enum in [‘DEFAULT’, ‘THEME01’, ‘THEME02’, ‘THEME03’, ‘THEME04’, ‘THEME05’, ‘THEME06’, ‘THEME07’, ‘THEME08’, ‘THEME09’, ‘THEME10’, ‘THEME11’, ‘THEME12’, ‘THEME13’, ‘THEME14’, ‘THEME15’, ‘THEME16’, ‘THEME17’, ‘THEME18’, ‘THEME19’, ‘THEME20’, ‘CUSTOM’], default ‘DEFAULT’ 
    '''

    colors = None
    '''Copy of the colors associated with the group’s color set 

    :type:  ThemeBoneColorSet, (readonly, never None) 
    '''

    is_custom_color_set = None
    '''Color set is user-defined instead of a fixed theme color set 

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''


class BoneGroups:
    '''Collection of bone groups '''

    active = None
    '''Active bone group for this pose 

    :type:  BoneGroup 
    '''

    active_index = None
    '''Active index in bone groups array 

    :type:  int in [0, inf], default 0 
    '''

    def new(self, name="Group"):
        '''Add a new bone group to the object 

        :param name: Name of the new group 
        :type name: string, (optional, never None)
        :rtype: BoneGroup 
        :return:  New bone group 
        '''
        pass

    def remove(self, group):
        '''Remove a bone group from this object 

        :param group: Removed bone group 
        :type group: BoneGroup, (never None)
        '''
        pass


class BoolProperty:
    '''RNA boolean property definition '''

    array_dimensions = None
    '''Length of each dimension of the array 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0), (readonly) 
    '''

    array_length = None
    '''Maximum length of the array, 0 means unlimited 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    default = None
    '''Default value for this number 

    :type:  boolean, default False, (readonly) 
    '''

    default_array = None
    '''Default value for this array 

    :type:  boolean array of 3 items, default (False, False, False), (readonly) 
    '''

    is_array = None
    '''

    :type:  boolean, default False, (readonly) 
    '''


class BooleanModifier:
    '''Boolean operations modifier '''

    debug_options = None
    '''Debugging options, only when started with ‘-d’ 

    :type:  enum set in {‘SEPARATE’, ‘NO_DISSOLVE’, ‘NO_CONNECT_REGIONS’}, default {‘SEPARATE’} 
    '''

    double_threshold = None
    '''Threshold for checking overlapping geometry 

    :type:  float in [0, 1], default 0.0 
    '''

    object = None
    '''Mesh object to use for Boolean operation 

    :type:  Object 
    '''

    operation = None
    '''

    :type:  enum in [‘INTERSECT’, ‘UNION’, ‘DIFFERENCE’], default ‘DIFFERENCE’ 
    '''


class BrightContrastModifier:
    '''Bright/contrast modifier data for sequence strip '''

    bright = None
    '''Adjust the luminosity of the colors 

    :type:  float in [-inf, inf], default 0.0 
    '''

    contrast = None
    '''Adjust the difference in luminosity between pixels 

    :type:  float in [-inf, inf], default 0.0 
    '''


class Brush:
    '''Brush data-block for storing brush settings for painting and sculpting '''

    auto_smooth_factor = None
    '''Amount of smoothing to automatically apply to each stroke 

    :type:  float in [0, 1], default 0.0 
    '''

    blend = None
    '''Brush blending mode 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MUL’, ‘COLORBURN’, ‘LINEARBURN’, ‘LIGHTEN’, ‘SCREEN’, ‘COLORDODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFTLIGHT’, ‘HARDLIGHT’, ‘VIVIDLIGHT’, ‘LINEARLIGHT’, ‘PINLIGHT’, ‘DIFFERENCE’, ‘EXCLUSION’, ‘SUB’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘LUMINOSITY’, ‘ERASE_ALPHA’, ‘ADD_ALPHA’], default ‘MIX’ 
    '''

    blur_kernel_radius = None
    '''Radius of kernel used for soften and sharpen in pixels 

    :type:  int in [1, 10000], default 0 
    '''

    blur_mode = None
    '''

    :type:  enum in [‘BOX’, ‘GAUSSIAN’], default ‘GAUSSIAN’ 
    '''

    brush_capabilities = None
    '''Brush’s capabilities 

    :type:  BrushCapabilities, (readonly, never None) 
    '''

    clone_alpha = None
    '''Opacity of clone image display 

    :type:  float in [0, 1], default 0.0 
    '''

    clone_image = None
    '''Image for clone tool 

    :type:  Image 
    '''

    clone_offset = None
    '''

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    color = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    crease_pinch_factor = None
    '''How much the crease brush pinches 

    :type:  float in [0, 1], default 0.666667 
    '''

    cursor_color_add = None
    '''Color of cursor when adding 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    cursor_color_subtract = None
    '''Color of cursor when subtracting 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    cursor_overlay_alpha = None
    '''

    :type:  int in [0, 100], default 0 
    '''

    curve = None
    '''Editable falloff curve 

    :type:  CurveMapping, (readonly, never None) 
    '''

    direction = None
    '''

    :type:  enum in [‘ADD’, ‘SUBTRACT’], default ‘ADD’ 
    '''

    falloff_angle = None
    '''Paint most on faces pointing towards the view according to this angle 

    :type:  float in [0, 1.5708], default 0.0 
    '''

    fill_threshold = None
    '''Threshold above which filling is not propagated 

    :type:  float in [0, 100], default 0.0 
    '''

    gpencil_settings = None
    '''

    :type:  BrushGpencilSettings, (readonly) 
    '''

    gpencil_tool = None
    '''Category of the brush 

    :type:  enum in [‘DRAW’, ‘FILL’, ‘ERASE’], default ‘DRAW’ 
    '''

    grad_spacing = None
    '''Spacing before brush gradient goes full circle 

    :type:  int in [1, 10000], default 0 
    '''

    gradient = None
    '''

    :type:  ColorRamp, (readonly) 
    '''

    gradient_fill_mode = None
    '''

    :type:  enum in [‘LINEAR’, ‘RADIAL’], default ‘LINEAR’ 
    '''

    gradient_stroke_mode = None
    '''

    :type:  enum in [‘PRESSURE’, ‘SPACING_REPEAT’, ‘SPACING_CLAMP’], default ‘PRESSURE’ 
    '''

    height = None
    '''Affectable height of brush (layer height for layer tool, i.e.) 

    :type:  float in [0, 1], default 0.5 
    '''

    icon_filepath = None
    '''File path to brush icon 

    :type:  string, default “”, (never None) 
    '''

    image_paint_capabilities = None
    '''

    :type:  BrushCapabilitiesImagePaint, (readonly, never None) 
    '''

    image_tool = None
    '''

    :type:  enum in [‘DRAW’, ‘SOFTEN’, ‘SMEAR’, ‘CLONE’, ‘FILL’, ‘MASK’], default ‘DRAW’ 
    '''

    jitter = None
    '''Jitter the position of the brush while painting 

    :type:  float in [0, 1000], default 0.0 
    '''

    jitter_absolute = None
    '''Jitter the position of the brush in pixels while painting 

    :type:  int in [0, 1000000], default 0 
    '''

    mask_overlay_alpha = None
    '''

    :type:  int in [0, 100], default 0 
    '''

    mask_stencil_dimension = None
    '''Dimensions of mask stencil in viewport 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    mask_stencil_pos = None
    '''Position of mask stencil in viewport 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    mask_texture = None
    '''

    :type:  Texture 
    '''

    mask_texture_slot = None
    '''

    :type:  BrushTextureSlot, (readonly) 
    '''

    mask_tool = None
    '''

    :type:  enum in [‘DRAW’, ‘SMOOTH’], default ‘DRAW’ 
    '''

    normal_weight = None
    '''How much grab will pull vertexes out of surface during a grab 

    :type:  float in [0, 1], default 0.0 
    '''

    paint_curve = None
    '''Active Paint Curve 

    :type:  PaintCurve 
    '''

    plane_offset = None
    '''Adjust plane on which the brush acts towards or away from the object surface 

    :type:  float in [-2, 2], default 0.0 
    '''

    plane_trim = None
    '''If a vertex is further away from offset plane than this, then it is not affected 

    :type:  float in [0, 1], default 0.5 
    '''

    rake_factor = None
    '''How much grab will follow cursor rotation 

    :type:  float in [0, 10], default 0.0 
    '''

    rate = None
    '''Interval between paints for Airbrush 

    :type:  float in [0.0001, 10000], default 0.0 
    '''

    sculpt_capabilities = None
    '''

    :type:  BrushCapabilitiesSculpt, (readonly, never None) 
    '''

    sculpt_plane = None
    '''

    :type:  enum in [‘AREA’, ‘VIEW’, ‘X’, ‘Y’, ‘Z’], default ‘AREA’ 
    '''

    sculpt_tool = None
    '''

    :type:  enum in [‘DRAW’, ‘CLAY’, ‘CLAY_STRIPS’, ‘LAYER’, ‘INFLATE’, ‘BLOB’, ‘CREASE’, ‘SMOOTH’, ‘FLATTEN’, ‘FILL’, ‘SCRAPE’, ‘PINCH’, ‘GRAB’, ‘SNAKE_HOOK’, ‘THUMB’, ‘NUDGE’, ‘ROTATE’, ‘MASK’, ‘SIMPLIFY’], default ‘DRAW’ 
    '''

    secondary_color = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    sharp_threshold = None
    '''Threshold below which, no sharpening is done 

    :type:  float in [0, 100], default 0.0 
    '''

    size = None
    '''Radius of the brush in pixels 

    :type:  int in [1, 5000], default 0 
    '''

    smooth_stroke_factor = None
    '''Higher values give a smoother stroke 

    :type:  float in [0.5, 0.99], default 0.0 
    '''

    smooth_stroke_radius = None
    '''Minimum distance from last point before stroke continues 

    :type:  int in [10, 200], default 0 
    '''

    spacing = None
    '''Spacing between brush daubs as a percentage of brush diameter 

    :type:  int in [1, 1000], default 0 
    '''

    stencil_dimension = None
    '''Dimensions of stencil in viewport 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    stencil_pos = None
    '''Position of stencil in viewport 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    strength = None
    '''How powerful the effect of the brush is when applied 

    :type:  float in [0, 10], default 0.5 
    '''

    stroke_method = None
    '''

    :type:  enum in [‘DOTS’, ‘DRAG_DOT’, ‘SPACE’, ‘AIRBRUSH’, ‘ANCHORED’, ‘LINE’, ‘CURVE’], default ‘DOTS’ 
    '''

    texture = None
    '''

    :type:  Texture 
    '''

    texture_overlay_alpha = None
    '''

    :type:  int in [0, 100], default 0 
    '''

    texture_sample_bias = None
    '''Value added to texture samples 

    :type:  float in [-1, 1], default 0.0 
    '''

    texture_slot = None
    '''

    :type:  BrushTextureSlot, (readonly) 
    '''

    topology_rake_factor = None
    '''Automatically align edges to the brush direction to to generate cleaner topology and define sharp features dynamic topology. Best used on low-poly meshes as it has a performance impact 

    :type:  float in [0, 1], default 0.0 
    '''

    unprojected_radius = None
    '''Radius of brush in Blender units 

    :type:  float in [0.001, inf], default 0.0 
    '''

    use_accumulate = None
    '''Accumulate stroke daubs on top of each other 

    :type:  boolean, default False 
    '''

    use_adaptive_space = None
    '''Space daubs according to surface orientation instead of screen space 

    :type:  boolean, default False 
    '''

    use_airbrush = None
    '''Keep applying paint effect while holding mouse (spray) 

    :type:  boolean, default False 
    '''

    use_alpha = None
    '''When this is disabled, lock alpha while painting 

    :type:  boolean, default False 
    '''

    use_anchor = None
    '''Keep the brush anchored to the initial location 

    :type:  boolean, default False 
    '''

    use_cursor_overlay = None
    '''Show cursor in viewport 

    :type:  boolean, default False 
    '''

    use_cursor_overlay_override = None
    '''Don’t show overlay during a stroke 

    :type:  boolean, default False 
    '''

    use_curve = None
    '''Define the stroke curve with a bezier curve. Dabs are separated according to spacing 

    :type:  boolean, default False 
    '''

    use_custom_icon = None
    '''Set the brush icon from an image file 

    :type:  boolean, default False 
    '''

    use_edge_to_edge = None
    '''Drag anchor brush from edge-to-edge 

    :type:  boolean, default False 
    '''

    use_frontface = None
    '''Brush only affects vertexes that face the viewer 

    :type:  boolean, default False 
    '''

    use_frontface_falloff = None
    '''Blend brush influence by how much they face the front 

    :type:  boolean, default False 
    '''

    use_gradient = None
    '''Use Gradient by utilizing a sampling method 

    :type:  boolean, default False 
    '''

    use_inverse_smooth_pressure = None
    '''Lighter pressure causes more smoothing to be applied 

    :type:  boolean, default False 
    '''

    use_line = None
    '''Draw a line with dabs separated according to spacing 

    :type:  boolean, default False 
    '''

    use_locked_size = None
    '''Measure brush size relative to the view or the scene 

    :type:  enum in [‘VIEW’, ‘SCENE’], default ‘VIEW’ 
    '''

    use_offset_pressure = None
    '''Enable tablet pressure sensitivity for offset 

    :type:  boolean, default False 
    '''

    use_original_normal = None
    '''When locked keep using normal of surface where stroke was initiated 

    :type:  boolean, default False 
    '''

    use_paint_grease_pencil = None
    '''Use this brush in grease pencil drawing mode 

    :type:  boolean, default False 
    '''

    use_paint_image = None
    '''Use this brush in texture paint mode 

    :type:  boolean, default False 
    '''

    use_paint_sculpt = None
    '''Use this brush in sculpt mode 

    :type:  boolean, default False 
    '''

    use_paint_vertex = None
    '''Use this brush in vertex paint mode 

    :type:  boolean, default False 
    '''

    use_paint_weight = None
    '''Use this brush in weight paint mode 

    :type:  boolean, default False 
    '''

    use_persistent = None
    '''Sculpt on a persistent layer of the mesh 

    :type:  boolean, default False 
    '''

    use_plane_trim = None
    '''Enable Plane Trim 

    :type:  boolean, default False 
    '''

    use_pressure_jitter = None
    '''Enable tablet pressure sensitivity for jitter 

    :type:  boolean, default False 
    '''

    use_pressure_masking = None
    '''Pen pressure makes texture influence smaller 

    :type:  enum in [‘NONE’, ‘RAMP’, ‘CUTOFF’], default ‘NONE’ 
    '''

    use_pressure_size = None
    '''Enable tablet pressure sensitivity for size 

    :type:  boolean, default False 
    '''

    use_pressure_spacing = None
    '''Enable tablet pressure sensitivity for spacing 

    :type:  boolean, default False 
    '''

    use_pressure_strength = None
    '''Enable tablet pressure sensitivity for strength 

    :type:  boolean, default False 
    '''

    use_primary_overlay = None
    '''Show texture in viewport 

    :type:  boolean, default False 
    '''

    use_primary_overlay_override = None
    '''Don’t show overlay during a stroke 

    :type:  boolean, default False 
    '''

    use_projected = None
    '''Apply brush influence in 2D circle instead of a sphere 

    :type:  boolean, default False 
    '''

    use_relative_jitter = None
    '''Jittering happens in screen space, not relative to brush size 

    :type:  boolean, default False 
    '''

    use_restore_mesh = None
    '''Allow a single dot to be carefully positioned 

    :type:  boolean, default False 
    '''

    use_secondary_overlay = None
    '''Show texture in viewport 

    :type:  boolean, default False 
    '''

    use_secondary_overlay_override = None
    '''Don’t show overlay during a stroke 

    :type:  boolean, default False 
    '''

    use_smooth_stroke = None
    '''Brush lags behind mouse and follows a smoother path 

    :type:  boolean, default False 
    '''

    use_space = None
    '''Limit brush application to the distance specified by spacing 

    :type:  boolean, default False 
    '''

    use_space_attenuation = None
    '''Automatically adjust strength to give consistent results for different spacings 

    :type:  boolean, default False 
    '''

    vertex_paint_capabilities = None
    '''

    :type:  BrushCapabilitiesVertexPaint, (readonly, never None) 
    '''

    vertex_tool = None
    '''

    :type:  enum in [‘DRAW’, ‘BLUR’, ‘AVERAGE’, ‘SMEAR’], default ‘DRAW’ 
    '''

    weight = None
    '''Vertex weight when brush is applied 

    :type:  float in [0, 1], default 1.0 
    '''

    weight_paint_capabilities = None
    '''

    :type:  BrushCapabilitiesWeightPaint, (readonly, never None) 
    '''

    weight_tool = None
    '''

    :type:  enum in [‘DRAW’, ‘BLUR’, ‘AVERAGE’, ‘SMEAR’], default ‘DRAW’ 
    '''


class BrushCapabilities:
    '''Read-only indications of supported operations '''

    has_overlay = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_random_texture_angle = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_smooth_stroke = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_spacing = None
    '''

    :type:  boolean, default False, (readonly) 
    '''


class BrushCapabilitiesImagePaint:
    '''Read-only indications of supported operations '''

    has_accumulate = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_color = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_radius = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_space_attenuation = None
    '''

    :type:  boolean, default False, (readonly) 
    '''


class BrushCapabilitiesSculpt:
    '''Read-only indications of which brush operations are supported by the current sculpt tool '''

    has_accumulate = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_auto_smooth = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_direction = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_gravity = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_height = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_jitter = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_normal_weight = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_persistence = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_pinch_factor = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_plane_offset = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_rake_factor = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_random_texture_angle = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_sculpt_plane = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_secondary_color = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_smooth_stroke = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_space_attenuation = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_strength_pressure = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_topology_rake = None
    '''

    :type:  boolean, default False, (readonly) 
    '''


class BrushCapabilitiesVertexPaint:
    '''Read-only indications of supported operations '''

    has_color = None
    '''

    :type:  boolean, default False, (readonly) 
    '''


class BrushCapabilitiesWeightPaint:
    '''Read-only indications of supported operations '''

    has_weight = None
    '''

    :type:  boolean, default False, (readonly) 
    '''


class BrushGpencilSettings:
    '''Settings for grease pencil brush '''

    active_smooth_factor = None
    '''Amount of smoothing while drawing 

    :type:  float in [0, 1], default 0.0 
    '''

    angle = None
    '''Direction of the stroke at which brush gives maximal thickness (0° for horizontal) 

    :type:  float in [-1.5708, 1.5708], default 0.0 
    '''

    angle_factor = None
    '''Reduce brush thickness by this factor when stroke is perpendicular to ‘Angle’ direction 

    :type:  float in [0, 1], default 0.0 
    '''

    curve_jitter = None
    '''Curve used for the jitter effect 

    :type:  CurveMapping, (readonly) 
    '''

    curve_sensitivity = None
    '''Curve used for the sensitivity 

    :type:  CurveMapping, (readonly) 
    '''

    curve_strength = None
    '''Curve used for the strength 

    :type:  CurveMapping, (readonly) 
    '''

    eraser_mode = None
    '''Eraser Mode 

    :type:  enum in [‘SOFT’, ‘HARD’, ‘STROKE’], default ‘SOFT’ 
    '''

    eraser_strength_factor = None
    '''Amount of erasing for strength 

    :type:  float in [0, 100], default 0.0 
    '''

    eraser_thickness_factor = None
    '''Amount of erasing for thickness 

    :type:  float in [0, 100], default 0.0 
    '''

    fill_draw_mode = None
    '''Mode to draw boundary limits 

    :type:  enum in [‘BOTH’, ‘STROKE’, ‘CONTROL’], default ‘BOTH’ 
    '''

    fill_factor = None
    '''Multiplier for fill resolution, higher resolution is more accurate but slower 

    :type:  int in [1, 8], default 0 
    '''

    fill_leak = None
    '''Size in pixels to consider the leak closed 

    :type:  int in [0, 100], default 0 
    '''

    fill_simplify_level = None
    '''Number of simplify steps (large values reduce fill accuracy) 

    :type:  int in [0, 10], default 0 
    '''

    fill_threshold = None
    '''Threshold to consider color transparent for filling 

    :type:  float in [0, 1], default 0.0 
    '''

    gp_icon = None
    '''

    :type:  enum in [‘PENCIL’, ‘PEN’, ‘INK’, ‘INKNOISE’, ‘BLOCK’, ‘MARKER’, ‘FILL’, ‘SOFT’, ‘HARD’, ‘STROKE’], default ‘PENCIL’ 
    '''

    gradient_factor = None
    '''Amount of gradient for Dot strokes (set to 1 for full solid) 

    :type:  float in [0.001, 1], default 1.0 
    '''

    gradient_shape = None
    '''

    :type:  float array of 2 items in [0.01, 1], default (1.0, 1.0) 
    '''

    input_samples = None
    '''Generate intermediate points for very fast mouse movements. Set to 0 to disable 

    :type:  int in [0, 10], default 0 
    '''

    material = None
    '''Material used for strokes drawn using this brush 

    :type:  Material 
    '''

    pen_jitter = None
    '''Jitter factor for new strokes 

    :type:  float in [0, 1], default 0.0 
    '''

    pen_sensitivity_factor = None
    '''Pressure sensitivity factor for new strokes 

    :type:  float in [0.1, 3], default 0.0 
    '''

    pen_smooth_factor = None
    '''Amount of smoothing to apply after finish newly created strokes, to reduce jitter/noise 

    :type:  float in [0, 2], default 0.0 
    '''

    pen_smooth_steps = None
    '''Number of times to smooth newly created strokes 

    :type:  int in [1, 3], default 0 
    '''

    pen_strength = None
    '''Color strength for new strokes (affect alpha factor of color) 

    :type:  float in [0, 1], default 0.0 
    '''

    pen_subdivision_steps = None
    '''Number of times to subdivide newly created strokes, for less jagged strokes 

    :type:  int in [0, 3], default 0 
    '''

    pen_thick_smooth_factor = None
    '''Amount of thickness smoothing to apply after finish newly created strokes, to reduce jitter/noise 

    :type:  float in [0, 2], default 0.0 
    '''

    pen_thick_smooth_steps = None
    '''Number of times to smooth thickness for newly created strokes 

    :type:  int in [1, 3], default 0 
    '''

    random_pressure = None
    '''Randomness factor for pressure in new strokes 

    :type:  float in [0, 1], default 0.0 
    '''

    random_strength = None
    '''Randomness factor strength in new strokes 

    :type:  float in [0, 1], default 0.0 
    '''

    random_subdiv = None
    '''Randomness factor for new strokes after subdivision 

    :type:  float in [0, 1], default 0.0 
    '''

    show_fill = None
    '''Show transparent lines to use as boundary for filling 

    :type:  boolean, default True 
    '''

    show_fill_boundary = None
    '''Show help lines for filling to see boundaries 

    :type:  boolean, default True 
    '''

    show_lasso = None
    '''Do not draw fill color while drawing the stroke 

    :type:  boolean, default False 
    '''

    trim = None
    '''Trim intersecting stroke ends 

    :type:  boolean, default False 
    '''

    use_cursor = None
    '''Enable cursor on screen 

    :type:  boolean, default True 
    '''

    use_default_eraser = None
    '''Use this brush when enable eraser with fast switch key 

    :type:  boolean, default True 
    '''

    use_jitter_pressure = None
    '''Use tablet pressure for jitter 

    :type:  boolean, default False 
    '''

    use_material_pin = None
    '''Keep material assigned to brush 

    :type:  boolean, default False 
    '''

    use_occlude_eraser = None
    '''Erase only strokes visible and not occluded 

    :type:  boolean, default False 
    '''

    use_pressure = None
    '''Use tablet pressure 

    :type:  boolean, default False 
    '''

    use_settings_postprocess = None
    '''Additional post processing options for new strokes 

    :type:  boolean, default False 
    '''

    use_settings_random = None
    '''Random brush settings 

    :type:  boolean, default False 
    '''

    use_settings_stabilizer = None
    '''Draw lines with a delay to allow smooth strokes. Press Shift key to override while drawing 

    :type:  boolean, default True 
    '''

    use_strength_pressure = None
    '''Use tablet pressure for color strength 

    :type:  boolean, default False 
    '''

    uv_random = None
    '''Random factor for autogenerated UV rotation 

    :type:  float in [0, 1], default 0.0 
    '''


class BrushTextureSlot:
    '''Texture slot for textures in a Brush data-block '''

    angle = None
    '''Brush texture rotation 

    :type:  float in [0, 6.28319], default 0.0 
    '''

    has_random_texture_angle = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_texture_angle = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    has_texture_angle_source = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    map_mode = None
    '''

    :type:  enum in [‘VIEW_PLANE’, ‘AREA_PLANE’, ‘TILED’, ‘3D’, ‘RANDOM’, ‘STENCIL’], default ‘VIEW_PLANE’ 
    '''

    mask_map_mode = None
    '''

    :type:  enum in [‘VIEW_PLANE’, ‘TILED’, ‘RANDOM’, ‘STENCIL’], default ‘VIEW_PLANE’ 
    '''

    random_angle = None
    '''Brush texture random angle 

    :type:  float in [0, 6.28319], default 0.0 
    '''

    tex_paint_map_mode = None
    '''

    :type:  enum in [‘VIEW_PLANE’, ‘TILED’, ‘3D’, ‘RANDOM’, ‘STENCIL’], default ‘VIEW_PLANE’ 
    '''

    use_rake = None
    '''

    :type:  boolean, default False 
    '''

    use_random = None
    '''

    :type:  boolean, default False 
    '''


class BuildGpencilModifier:
    '''Animate strokes appearing and disappearing '''

    concurrent_time_alignment = None
    '''When should strokes start to appear/disappear 

    :type:  enum in [‘START’, ‘END’], default ‘START’ 
    '''

    frame_end = None
    '''End Frame (when Restrict Frame Range is enabled) 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    frame_start = None
    '''Start Frame (when Restrict Frame Range is enabled) 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    length = None
    '''Maximum number of frames that the build effect can run for (unless another GP keyframe occurs before this time has elapsed) 

    :type:  float in [1, 1.04857e+06], default 0.0 
    '''

    mode = None
    '''How many strokes are being animated at a time 

    :type:  enum in [‘SEQUENTIAL’, ‘CONCURRENT’], default ‘SEQUENTIAL’ 
    '''

    start_delay = None
    '''Number of frames after each GP keyframe before the modifier has any effect 

    :type:  float in [0, 1.04857e+06], default 0.0 
    '''

    transition = None
    '''How are strokes animated (i.e. are they appearing or disappearing) 

    :type:  enum in [‘GROW’, ‘SHRINK’, ‘FADE’], default ‘GROW’ 
    '''

    use_restrict_frame_range = None
    '''Only modify strokes during the specified frame range 

    :type:  boolean, default False 
    '''


class BuildModifier:
    '''Build effect modifier '''

    frame_duration = None
    '''Total time the build effect requires 

    :type:  float in [1, 1.04857e+06], default 0.0 
    '''

    frame_start = None
    '''Start frame of the effect 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    seed = None
    '''Seed for random if used 

    :type:  int in [1, 1048574], default 0 
    '''

    use_random_order = None
    '''Randomize the faces or edges during build 

    :type:  boolean, default False 
    '''

    use_reverse = None
    '''Deconstruct the mesh instead of building it 

    :type:  boolean, default False 
    '''


class CLIP_UL_tracking_objects:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class CacheFile:
    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    filepath = None
    '''Path to external displacements file 

    :type:  string, default “”, (never None) 
    '''

    forward_axis = None
    '''

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''

    frame = None
    '''The time to use for looking up the data in the cache file, or to determine which file to use in a file sequence 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    frame_offset = None
    '''Subtracted from the current frame to use for looking up the data in the cache file, or to determine which file to use in a file sequence 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    is_sequence = None
    '''Whether the cache is separated in a series of files 

    :type:  boolean, default False 
    '''

    object_paths = None
    '''Paths of the objects inside the Alembic archive 

    :type:  AlembicObjectPaths bpy_prop_collection of AlembicObjectPath, (readonly) 
    '''

    override_frame = None
    '''Whether to use a custom frame for looking up data in the cache file, instead of using the current scene frame 

    :type:  boolean, default False 
    '''

    scale = None
    '''Value by which to enlarge or shrink the object with respect to the world’s origin (only applicable through a Transform Cache constraint) 

    :type:  float in [0.0001, 1000], default 0.0 
    '''

    up_axis = None
    '''

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''


class Camera:
    '''Camera data-block for storing camera settings '''

    angle = None
    '''Camera lens field of view 

    :type:  float in [0.00640536, 3.01675], default 0.0 
    '''

    angle_x = None
    '''Camera lens horizontal field of view 

    :type:  float in [0.00640536, 3.01675], default 0.0 
    '''

    angle_y = None
    '''Camera lens vertical field of view 

    :type:  float in [0.00640536, 3.01675], default 0.0 
    '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    background_images = None
    '''List of background images 

    :type:  CameraBackgroundImages bpy_prop_collection of CameraBackgroundImage, (readonly) 
    '''

    clip_end = None
    '''Camera far clipping distance 

    :type:  float in [1e-06, inf], default 1000.0 
    '''

    clip_start = None
    '''Camera near clipping distance 

    :type:  float in [1e-06, inf], default 0.1 
    '''

    cycles = None
    '''Cycles camera settings 

    :type:  CyclesCameraSettings, (readonly) 
    '''

    display_size = None
    '''Apparent size of the Camera object in the 3D View 

    :type:  float in [0.01, 1000], default 1.0 
    '''

    dof_distance = None
    '''Distance to the focus point for depth of field 

    :type:  float in [0, inf], default 0.0 
    '''

    dof_object = None
    '''Use this object to define the depth of field focal point 

    :type:  Object 
    '''

    gpu_dof = None
    '''

    :type:  GPUDOFSettings, (readonly) 
    '''

    lens = None
    '''Perspective Camera lens value in millimeters 

    :type:  float in [1, inf], default 50.0 
    '''

    lens_unit = None
    '''Unit to edit lens in for the user interface 

    :type:  enum in [‘MILLIMETERS’, ‘FOV’], default ‘MILLIMETERS’ 
    '''

    ortho_scale = None
    '''Orthographic Camera scale (similar to zoom) 

    :type:  float in [0, inf], default 6.0 
    '''

    passepartout_alpha = None
    '''Opacity (alpha) of the darkened overlay in Camera view 

    :type:  float in [0, 1], default 0.5 
    '''

    sensor_fit = None
    '''Method to fit image and field of view angle inside the sensor 

    :type:  enum in [‘AUTO’, ‘HORIZONTAL’, ‘VERTICAL’], default ‘AUTO’ 
    '''

    sensor_height = None
    '''Vertical size of the image sensor area in millimeters 

    :type:  float in [1, inf], default 34.0 
    '''

    sensor_width = None
    '''Horizontal size of the image sensor area in millimeters 

    :type:  float in [1, inf], default 36.0 
    '''

    shift_x = None
    '''Camera horizontal shift 

    :type:  float in [-10, 10], default 0.0 
    '''

    shift_y = None
    '''Camera vertical shift 

    :type:  float in [-10, 10], default 0.0 
    '''

    show_background_images = None
    '''Display reference images behind objects in the 3D View 

    :type:  boolean, default False 
    '''

    show_composition_center = None
    '''Display center composition guide inside the camera view 

    :type:  boolean, default False 
    '''

    show_composition_center_diagonal = None
    '''Display diagonal center composition guide inside the camera view 

    :type:  boolean, default False 
    '''

    show_composition_golden = None
    '''Display golden ratio composition guide inside the camera view 

    :type:  boolean, default False 
    '''

    show_composition_golden_tria_a = None
    '''Display golden triangle A composition guide inside the camera view 

    :type:  boolean, default False 
    '''

    show_composition_golden_tria_b = None
    '''Display golden triangle B composition guide inside the camera view 

    :type:  boolean, default False 
    '''

    show_composition_harmony_tri_a = None
    '''Display harmony A composition guide inside the camera view 

    :type:  boolean, default False 
    '''

    show_composition_harmony_tri_b = None
    '''Display harmony B composition guide inside the camera view 

    :type:  boolean, default False 
    '''

    show_composition_thirds = None
    '''Display rule of thirds composition guide inside the camera view 

    :type:  boolean, default False 
    '''

    show_limits = None
    '''Display the clipping range and focus point on the camera 

    :type:  boolean, default False 
    '''

    show_mist = None
    '''Display a line from the Camera to indicate the mist area 

    :type:  boolean, default False 
    '''

    show_name = None
    '''Show the active Camera’s name in Camera view 

    :type:  boolean, default False 
    '''

    show_passepartout = None
    '''Show a darkened overlay outside the image area in Camera view 

    :type:  boolean, default True 
    '''

    show_safe_areas = None
    '''Show TV title safe and action safe areas in Camera view 

    :type:  boolean, default False 
    '''

    show_safe_center = None
    '''Show safe areas to fit content in a different aspect ratio 

    :type:  boolean, default False 
    '''

    show_sensor = None
    '''Show sensor size (film gate) in Camera view 

    :type:  boolean, default False 
    '''

    stereo = None
    '''

    :type:  CameraStereoData, (readonly, never None) 
    '''

    type = None
    '''Camera types 

    :type:  enum in [‘PERSP’, ‘ORTHO’, ‘PANO’], default ‘PERSP’ 
    '''

    def view_frame(self, scene=None):
        '''Return 4 points for the cameras frame (before object transformation) 

        :param scene: Scene to use for aspect calculation, when omitted 1:1 aspect is used 
        :type scene: Scene, (optional)
        '''
        pass


class CameraBackgroundImage:
    '''Image and settings for display in the 3D View background '''

    alpha = None
    '''Image opacity to blend the image against the background color 

    :type:  float in [0, 1], default 0.0 
    '''

    clip = None
    '''Movie clip displayed and edited in this space 

    :type:  MovieClip 
    '''

    clip_user = None
    '''Parameters defining which frame of the movie clip is displayed 

    :type:  MovieClipUser, (readonly, never None) 
    '''

    display_depth = None
    '''Display under or over everything 

    :type:  enum in [‘BACK’, ‘FRONT’], default ‘BACK’ 
    '''

    frame_method = None
    '''How the image fits in the camera frame 

    :type:  enum in [‘STRETCH’, ‘FIT’, ‘CROP’], default ‘STRETCH’ 
    '''

    image = None
    '''Image displayed and edited in this space 

    :type:  Image 
    '''

    image_user = None
    '''Parameters defining which layer, pass and frame of the image is displayed 

    :type:  ImageUser, (readonly, never None) 
    '''

    offset = None
    '''

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    rotation = None
    '''Rotation for the background image (ortho view only) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    scale = None
    '''Scale the background image 

    :type:  float in [0, inf], default 0.0 
    '''

    show_background_image = None
    '''Show this image as background 

    :type:  boolean, default False 
    '''

    show_expanded = None
    '''Show the expanded in the user interface 

    :type:  boolean, default False 
    '''

    show_on_foreground = None
    '''Show this image in front of objects in viewport 

    :type:  boolean, default False 
    '''

    source = None
    '''Data source used for background 

    :type:  enum in [‘IMAGE’, ‘MOVIE_CLIP’], default ‘IMAGE’ 
    '''

    use_camera_clip = None
    '''Use movie clip from active scene camera 

    :type:  boolean, default False 
    '''

    use_flip_x = None
    '''Flip the background image horizontally 

    :type:  boolean, default False 
    '''

    use_flip_y = None
    '''Flip the background image vertically 

    :type:  boolean, default False 
    '''


class CameraBackgroundImages:
    '''Collection of background images '''

    def new(self):
        '''Add new background image 

        :rtype: CameraBackgroundImage 
        :return:  Image displayed as viewport background 
        '''
        pass

    def remove(self, image):
        '''Remove background image 

        :param image: Image displayed as viewport background 
        :type image: CameraBackgroundImage, (never None)
        '''
        pass

    def clear(self):
        '''Remove all background images 

        '''
        pass


class CameraSolverConstraint:
    '''Lock motion to the reconstructed camera movement '''

    clip = None
    '''Movie Clip to get tracking data from 

    :type:  MovieClip 
    '''

    use_active_clip = None
    '''Use active clip defined in scene 

    :type:  boolean, default False 
    '''


class CameraStereoData:
    '''Stereoscopy settings for a Camera data-block '''

    convergence_distance = None
    '''The converge point for the stereo cameras (often the distance between a projector and the projection screen) 

    :type:  float in [1e-05, inf], default 0.0 
    '''

    convergence_mode = None
    '''

    :type:  enum in [‘OFFAXIS’, ‘PARALLEL’, ‘TOE’], default ‘OFFAXIS’ 
    '''

    interocular_distance = None
    '''Set the distance between the eyes - the stereo plane distance / 30 should be fine 

    :type:  float in [0, inf], default 0.0 
    '''

    pivot = None
    '''

    :type:  enum in [‘LEFT’, ‘RIGHT’, ‘CENTER’], default ‘LEFT’ 
    '''

    pole_merge_angle_from = None
    '''Angle at which interocular distance starts to fade to 0 

    :type:  float in [0, 1.5708], default 0.0 
    '''

    pole_merge_angle_to = None
    '''Angle at which interocular distance is 0 

    :type:  float in [0, 1.5708], default 0.0 
    '''

    use_pole_merge = None
    '''Fade interocular distance to 0 after the given cutoff angle 

    :type:  boolean, default False 
    '''

    use_spherical_stereo = None
    '''Render every pixel rotating the camera around the middle of the interocular distance 

    :type:  boolean, default False 
    '''


class CastModifier:
    '''Modifier to cast to other shapes '''

    cast_type = None
    '''Target object shape 

    :type:  enum in [‘SPHERE’, ‘CYLINDER’, ‘CUBOID’], default ‘SPHERE’ 
    '''

    factor = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    object = None
    '''Control object: if available, its location determines the center of the effect 

    :type:  Object 
    '''

    radius = None
    '''Only deform vertices within this distance from the center of the effect (leave as 0 for infinite.) 

    :type:  float in [0, inf], default 0.0 
    '''

    size = None
    '''Size of projection shape (leave as 0 for auto) 

    :type:  float in [0, inf], default 0.0 
    '''

    use_radius_as_size = None
    '''Use radius as size of projection shape (0 = auto) 

    :type:  boolean, default False 
    '''

    use_transform = None
    '''Use object transform to control projection shape 

    :type:  boolean, default False 
    '''

    use_x = None
    '''

    :type:  boolean, default False 
    '''

    use_y = None
    '''

    :type:  boolean, default False 
    '''

    use_z = None
    '''

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''


class ChannelDriverVariables:
    '''Collection of channel driver Variables '''

    def new(self):
        '''Add a new variable for the driver 

        :rtype: DriverVariable 
        :return:  Newly created Driver Variable 
        '''
        pass

    def remove(self, variable):
        '''Remove an existing variable from the driver 

        :param variable: Variable to remove from the driver 
        :type variable: DriverVariable, (never None)
        '''
        pass


class ChildOfConstraint:
    '''Create constraint-based parent-child relationship '''

    inverse_matrix = None
    '''Transformation matrix to apply before 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    use_location_x = None
    '''Use X Location of Parent 

    :type:  boolean, default False 
    '''

    use_location_y = None
    '''Use Y Location of Parent 

    :type:  boolean, default False 
    '''

    use_location_z = None
    '''Use Z Location of Parent 

    :type:  boolean, default False 
    '''

    use_rotation_x = None
    '''Use X Rotation of Parent 

    :type:  boolean, default False 
    '''

    use_rotation_y = None
    '''Use Y Rotation of Parent 

    :type:  boolean, default False 
    '''

    use_rotation_z = None
    '''Use Z Rotation of Parent 

    :type:  boolean, default False 
    '''

    use_scale_x = None
    '''Use X Scale of Parent 

    :type:  boolean, default False 
    '''

    use_scale_y = None
    '''Use Y Scale of Parent 

    :type:  boolean, default False 
    '''

    use_scale_z = None
    '''Use Z Scale of Parent 

    :type:  boolean, default False 
    '''


class ChildParticle:
    '''Child particle interpolated from simulated or edited particles '''

    pass


class ClampToConstraint:
    '''Constrain an object’s location to the nearest point along the target path '''

    main_axis = None
    '''Main axis of movement 

    :type:  enum in [‘CLAMPTO_AUTO’, ‘CLAMPTO_X’, ‘CLAMPTO_Y’, ‘CLAMPTO_Z’], default ‘CLAMPTO_AUTO’ 
    '''

    target = None
    '''Target Object (Curves only) 

    :type:  Object 
    '''

    use_cyclic = None
    '''Treat curve as cyclic curve (no clamping to curve bounding box) 

    :type:  boolean, default False 
    '''


class ClothCollisionSettings:
    '''Cloth simulation settings for self collision and collision with other objects '''

    collection = None
    '''Limit colliders to this Collection 

    :type:  Collection 
    '''

    collision_quality = None
    '''How many collision iterations should be done. (higher is better quality but slower) 

    :type:  int in [1, 32767], default 0 
    '''

    damping = None
    '''Amount of velocity lost on collision 

    :type:  float in [0, 1], default 1.0 
    '''

    distance_min = None
    '''Minimum distance between collision objects before collision response takes effect 

    :type:  float in [0.001, 1], default 0.0 
    '''

    friction = None
    '''Friction force if a collision happened (higher = less movement) 

    :type:  float in [0, 80], default 0.0 
    '''

    impulse_clamp = None
    '''Clamp collision impulses to avoid instability (0.0 to disable clamping) 

    :type:  float in [0, 100], default 0.0 
    '''

    self_distance_min = None
    '''Minimum distance between cloth faces before collision response takes effect 

    :type:  float in [0.001, 0.1], default 0.0 
    '''

    self_friction = None
    '''Friction with self contact 

    :type:  float in [0, 80], default 0.0 
    '''

    self_impulse_clamp = None
    '''Clamp collision impulses to avoid instability (0.0 to disable clamping) 

    :type:  float in [0, 100], default 0.0 
    '''

    use_collision = None
    '''Enable collisions with other objects 

    :type:  boolean, default False 
    '''

    use_self_collision = None
    '''Enable self collisions 

    :type:  boolean, default False 
    '''

    vertex_group_self_collisions = None
    '''Vertex group to define vertices which are not used during self collisions 

    :type:  string, default “”, (never None) 
    '''


class ClothModifier:
    '''Cloth simulation modifier '''

    collision_settings = None
    '''

    :type:  ClothCollisionSettings, (readonly, never None) 
    '''

    hair_grid_max = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    hair_grid_min = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    hair_grid_resolution = None
    '''

    :type:  int array of 3 items in [-inf, inf], default (0, 0, 0), (readonly) 
    '''

    point_cache = None
    '''

    :type:  PointCache, (readonly, never None) 
    '''

    settings = None
    '''

    :type:  ClothSettings, (readonly, never None) 
    '''

    solver_result = None
    '''

    :type:  ClothSolverResult, (readonly) 
    '''


class ClothSettings:
    '''Cloth simulation settings for an object '''

    air_damping = None
    '''Air has normally some thickness which slows falling things down 

    :type:  float in [0, 10], default 0.0 
    '''

    bending_damping = None
    '''Amount of damping in bending behavior 

    :type:  float in [0, 1000], default 0.0 
    '''

    bending_model = None
    '''Physical model for simulating bending forces 

    :type:  enum in [‘ANGULAR’, ‘LINEAR’], default ‘LINEAR’ 
    '''

    bending_stiffness = None
    '''How much the material resists bending 

    :type:  float in [0, 10000], default 0.0 
    '''

    bending_stiffness_max = None
    '''Maximum bending stiffness value 

    :type:  float in [0, 10000], default 0.0 
    '''

    collider_friction = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    compression_damping = None
    '''Amount of damping in compression behavior 

    :type:  float in [0, 50], default 0.0 
    '''

    compression_stiffness = None
    '''How much the material resists compression 

    :type:  float in [0, 10000], default 0.0 
    '''

    compression_stiffness_max = None
    '''Maximum compression stiffness value 

    :type:  float in [0, 10000], default 0.0 
    '''

    density_strength = None
    '''Influence of target density on the simulation 

    :type:  float in [0, 1], default 0.0 
    '''

    density_target = None
    '''Maximum density of hair 

    :type:  float in [0, 10000], default 0.0 
    '''

    effector_weights = None
    '''

    :type:  EffectorWeights, (readonly) 
    '''

    goal_default = None
    '''Default Goal (vertex target position) value, when no Vertex Group used 

    :type:  float in [0, 1], default 0.0 
    '''

    goal_friction = None
    '''Goal (vertex target position) friction 

    :type:  float in [0, 50], default 0.0 
    '''

    goal_max = None
    '''Goal maximum, vertex group weights are scaled to match this range 

    :type:  float in [0, 1], default 0.0 
    '''

    goal_min = None
    '''Goal minimum, vertex group weights are scaled to match this range 

    :type:  float in [0, 1], default 0.0 
    '''

    goal_spring = None
    '''Goal (vertex target position) spring stiffness 

    :type:  float in [0, 0.999], default 0.0 
    '''

    gravity = None
    '''Gravity or external force vector 

    :type:  float array of 3 items in [-100, 100], default (0.0, 0.0, 0.0) 
    '''

    internal_friction = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    mass = None
    '''Mass of cloth material 

    :type:  float in [0, 10], default 0.0 
    '''

    pin_stiffness = None
    '''Pin (vertex target position) spring stiffness 

    :type:  float in [0, 50], default 0.0 
    '''

    quality = None
    '''Quality of the simulation in steps per frame (higher is better quality but slower) 

    :type:  int in [1, inf], default 0 
    '''

    rest_shape_key = None
    '''Shape key to use the rest spring lengths from 

    :type:  ShapeKey 
    '''

    sewing_force_max = None
    '''Maximum sewing force 

    :type:  float in [0, 10000], default 0.0 
    '''

    shear_damping = None
    '''Amount of damping in shearing behavior 

    :type:  float in [0, 50], default 0.0 
    '''

    shear_stiffness = None
    '''How much the material resists shearing 

    :type:  float in [0, 10000], default 0.0 
    '''

    shear_stiffness_max = None
    '''Maximum shear scaling value 

    :type:  float in [0, 10000], default 0.0 
    '''

    shrink_max = None
    '''Max amount to shrink cloth by 

    :type:  float in [0, 1], default 0.0 
    '''

    shrink_min = None
    '''Factor by which to shrink cloth 

    :type:  float in [0, 1], default 0.0 
    '''

    tension_damping = None
    '''Amount of damping in stretching behavior 

    :type:  float in [0, 50], default 0.0 
    '''

    tension_stiffness = None
    '''How much the material resists stretching 

    :type:  float in [0, 10000], default 0.0 
    '''

    tension_stiffness_max = None
    '''Maximum tension stiffness value 

    :type:  float in [0, 10000], default 0.0 
    '''

    time_scale = None
    '''Cloth speed is multiplied by this value 

    :type:  float in [0, inf], default 0.0 
    '''

    use_dynamic_mesh = None
    '''Make simulation respect deformations in the base mesh 

    :type:  boolean, default False 
    '''

    use_sewing_springs = None
    '''Pulls loose edges together 

    :type:  boolean, default False 
    '''

    vertex_group_bending = None
    '''Vertex group for fine control over bending stiffness 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_mass = None
    '''Vertex Group for pinning of vertices 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_shear_stiffness = None
    '''Vertex group for fine control over shear stiffness 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_shrink = None
    '''Vertex Group for shrinking cloth 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_structural_stiffness = None
    '''Vertex group for fine control over structural stiffness 

    :type:  string, default “”, (never None) 
    '''

    voxel_cell_size = None
    '''Size of the voxel grid cells for interaction effects 

    :type:  float in [0.0001, 10000], default 0.1 
    '''


class ClothSolverResult:
    '''Result of cloth solver iteration '''

    avg_error = None
    '''Average error during substeps 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    avg_iterations = None
    '''Average iterations during substeps 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    max_error = None
    '''Maximum error during substeps 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    max_iterations = None
    '''Maximum iterations during substeps 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    min_error = None
    '''Minimum error during substeps 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    min_iterations = None
    '''Minimum iterations during substeps 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    status = None
    '''Status of the solver iteration 

    :type:  enum set in {‘SUCCESS’, ‘NUMERICAL_ISSUE’, ‘NO_CONVERGENCE’, ‘INVALID_INPUT’}, default {‘SUCCESS’}, (readonly) 
    '''


class CloudsTexture:
    '''Procedural noise texture '''

    cloud_type = None
    '''Determine whether Noise returns grayscale or RGB values 

    :type:  enum in [‘GRAYSCALE’, ‘COLOR’], default ‘GRAYSCALE’ 
    '''

    nabla = None
    '''Size of derivative offset used for calculating normal 

    :type:  float in [0.001, 0.1], default 0.0 
    '''

    noise_basis = None
    '''Noise basis used for turbulence 

    :type:  enum in [‘BLENDER_ORIGINAL’, ‘ORIGINAL_PERLIN’, ‘IMPROVED_PERLIN’, ‘VORONOI_F1’, ‘VORONOI_F2’, ‘VORONOI_F3’, ‘VORONOI_F4’, ‘VORONOI_F2_F1’, ‘VORONOI_CRACKLE’, ‘CELL_NOISE’], default ‘BLENDER_ORIGINAL’ 
    '''

    noise_depth = None
    '''Depth of the cloud calculation 

    :type:  int in [0, 30], default 0 
    '''

    noise_scale = None
    '''Scaling for noise input 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    noise_type = None
    '''

    :type:  enum in [‘SOFT_NOISE’, ‘HARD_NOISE’], default ‘SOFT_NOISE’ 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class Collection:
    '''Collection of Object data-blocks '''

    all_objects = None
    '''Objects that are in this collection and its child collections 

    :type:  bpy_prop_collection of Object, (readonly) 
    '''

    children = None
    '''Collections that are immediate children of this collection 

    :type:  CollectionChildren bpy_prop_collection of Collection, (readonly) 
    '''

    hide_render = None
    '''Disable collection in renders 

    :type:  boolean, default False 
    '''

    hide_select = None
    '''Disable collection for viewport selection 

    :type:  boolean, default False 
    '''

    hide_viewport = None
    '''Disable collection in viewport 

    :type:  boolean, default False 
    '''

    instance_offset = None
    '''Offset from the origin to use when instancing 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    objects = None
    '''Objects that are directly in this collection 

    :type:  CollectionObjects bpy_prop_collection of Object, (readonly) 
    '''

    users_dupli_group = None
    '''The collection instance objects this collection is used in (readonly) '''


class CollectionChildren:
    '''Collection of child collections '''

    def link(self, child):
        '''Add this collection as child of this collection 

        :param child: Collection to add 
        :type child: Collection, (never None)
        '''
        pass

    def unlink(self, child):
        '''Remove this child collection from a collection 

        :param child: Collection to remove 
        :type child: Collection
        '''
        pass


class CollectionObjects:
    '''Collection of collection objects '''

    def link(self, object):
        '''Add this object to a collection 

        :param object: Object to add 
        :type object: Object, (never None)
        '''
        pass

    def unlink(self, object):
        '''Remove this object from a collection 

        :param object: Object to remove 
        :type object: Object
        '''
        pass


class CollectionProperty:
    '''RNA collection property to define lists, arrays and mappings '''

    fixed_type = None
    '''Fixed pointer type, empty if variable type 

    :type:  Struct, (readonly) 
    '''


class CollisionModifier:
    '''Collision modifier defining modifier stack position used for collision '''

    settings = None
    '''

    :type:  CollisionSettings, (readonly, never None) 
    '''


class CollisionSettings:
    '''Collision settings for object in physics simulation '''

    absorption = None
    '''How much of effector force gets lost during collision with this object (in percent) 

    :type:  float in [0, 1], default 0.0 
    '''

    cloth_friction = None
    '''Friction for cloth collisions 

    :type:  float in [0, 80], default 0.0 
    '''

    damping = None
    '''Amount of damping during collision 

    :type:  float in [0, 1], default 0.0 
    '''

    damping_factor = None
    '''Amount of damping during particle collision 

    :type:  float in [0, 1], default 0.0 
    '''

    damping_random = None
    '''Random variation of damping 

    :type:  float in [0, 1], default 0.0 
    '''

    friction_factor = None
    '''Amount of friction during particle collision 

    :type:  float in [0, 1], default 0.0 
    '''

    friction_random = None
    '''Random variation of friction 

    :type:  float in [0, 1], default 0.0 
    '''

    permeability = None
    '''Chance that the particle will pass through the mesh 

    :type:  float in [0, 1], default 0.0 
    '''

    stickiness = None
    '''Amount of stickiness to surface collision 

    :type:  float in [0, 10], default 0.0 
    '''

    thickness_inner = None
    '''Inner face thickness (only used by softbodies) 

    :type:  float in [0.001, 1], default 0.0 
    '''

    thickness_outer = None
    '''Outer face thickness 

    :type:  float in [0.001, 1], default 0.0 
    '''

    use = None
    '''Enable this objects as a collider for physics systems 

    :type:  boolean, default False 
    '''

    use_culling = None
    '''Cloth collision acts with respect to the collider normals (improves penetration recovery) 

    :type:  boolean, default False 
    '''

    use_normal = None
    '''Cloth collision impulses act in the direction of the collider normals (more reliable in some cases) 

    :type:  boolean, default False 
    '''

    use_particle_kill = None
    '''Kill collided particles 

    :type:  boolean, default False 
    '''


class ColorBalanceModifier:
    '''Color balance modifier for sequence strip '''

    color_balance = None
    '''

    :type:  SequenceColorBalanceData, (readonly) 
    '''

    color_multiply = None
    '''Multiply the intensity of each pixel 

    :type:  float in [0, 20], default 1.0 
    '''


class ColorGpencilModifier:
    '''Change Hue/Saturation modifier '''

    create_materials = None
    '''When apply modifier, create new material 

    :type:  boolean, default False 
    '''

    hue = None
    '''Color Hue 

    :type:  float in [0, 2], default 0.0 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    modify_color = None
    '''Set what colors of the stroke are affected 

    :type:  enum in [‘BOTH’, ‘STROKE’, ‘FILL’], default ‘BOTH’ 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    saturation = None
    '''Color Saturation 

    :type:  float in [0, 2], default 0.0 
    '''

    value = None
    '''Color Value 

    :type:  float in [0, 2], default 0.0 
    '''


class ColorManagedDisplaySettings:
    '''Color management specific to display device '''

    display_device = None
    '''Display device name 

    :type:  enum in [‘DEFAULT’], default ‘DEFAULT’ 
    '''


class ColorManagedInputColorspaceSettings:
    '''Input color space settings '''

    name = None
    '''Color space of the image or movie on disk 

    :type:  enum in [‘Filmic Log’, ‘Linear’, ‘Linear ACES’, ‘Non-Color’, ‘Raw’, ‘sRGB’, ‘VD16’, ‘XYZ’], default ‘NONE’ 
    '''


class ColorManagedSequencerColorspaceSettings:
    '''Input color space settings '''

    name = None
    '''Color space that the sequencer operates in 

    :type:  enum in [‘Filmic Log’, ‘Linear’, ‘Linear ACES’, ‘Non-Color’, ‘Raw’, ‘sRGB’, ‘VD16’, ‘XYZ’], default ‘NONE’ 
    '''


class ColorManagedViewSettings:
    '''Color management settings used for displaying images on the display '''

    curve_mapping = None
    '''Color curve mapping applied before display transform 

    :type:  CurveMapping, (readonly) 
    '''

    exposure = None
    '''Exposure (stops) applied before display transform 

    :type:  float in [-32, 32], default 0.0 
    '''

    gamma = None
    '''Amount of gamma modification applied after display transform 

    :type:  float in [0, 5], default 1.0 
    '''

    look = None
    '''Additional transform applied before view transform for an artistic needs 

    :type:  enum in [‘NONE’], default ‘NONE’ 
    '''

    use_curve_mapping = None
    '''Use RGB curved for pre-display transformation 

    :type:  boolean, default False 
    '''

    view_transform = None
    '''View used when converting image to a display space 

    :type:  enum in [‘NONE’], default ‘NONE’ 
    '''


class ColorMapping:
    '''Color mapping settings '''

    blend_color = None
    '''Blend color to mix with texture output color 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    blend_factor = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend_type = None
    '''Mode used to mix with texture output color 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘LIGHTEN’, ‘SCREEN’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    brightness = None
    '''Adjust the brightness of the texture 

    :type:  float in [0, 2], default 0.0 
    '''

    color_ramp = None
    '''

    :type:  ColorRamp, (readonly) 
    '''

    contrast = None
    '''Adjust the contrast of the texture 

    :type:  float in [0, 5], default 0.0 
    '''

    saturation = None
    '''Adjust the saturation of colors in the texture 

    :type:  float in [0, 2], default 0.0 
    '''

    use_color_ramp = None
    '''Toggle color ramp operations 

    :type:  boolean, default False 
    '''


class ColorMixSequence:
    '''Color Mix Sequence '''

    blend_effect = None
    '''Method for controlling how the strip combines with other strips 

    :type:  enum in [‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘LIGHTEN’, ‘DARKEN’, ‘SCREEN’, ‘OVERLAY’, ‘DODGE’, ‘BURN’, ‘LINEAR_BURN’, ‘SOFT_LIGHT’, ‘HARD_LIGHT’, ‘PIN_LIGHT’, ‘LINEAR_LIGHT’, ‘VIVID_LIGHT’, ‘COLOR’, ‘HUE’, ‘SATURATION’, ‘VALUE’, ‘DIFFERENCE’, ‘EXCLUSION’], default ‘ADD’ 
    '''

    factor = None
    '''Percentage of how much the strip’s colors affect other strips 

    :type:  float in [0, 1], default 0.0 
    '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class ColorRamp:
    '''Color ramp mapping a scalar value to a color '''

    color_mode = None
    '''Set color mode to use for interpolation 

    :type:  enum in [‘RGB’, ‘HSV’, ‘HSL’], default ‘RGB’ 
    '''

    elements = None
    '''

    :type:  ColorRampElements bpy_prop_collection of ColorRampElement, (readonly) 
    '''

    hue_interpolation = None
    '''Set color interpolation 

    :type:  enum in [‘NEAR’, ‘FAR’, ‘CW’, ‘CCW’], default ‘NEAR’ 
    '''

    interpolation = None
    '''Set interpolation between color stops 

    :type:  enum in [‘EASE’, ‘CARDINAL’, ‘LINEAR’, ‘B_SPLINE’, ‘CONSTANT’], default ‘LINEAR’ 
    '''

    def evaluate(self, position):
        '''Evaluate ColorRamp 

        :param position: Position, Evaluate ColorRamp at position 
        :type position: float in [0, 1]
        :rtype: float array of 4 items in [-inf, inf] 
        :return:  Color, Color at given position 
        '''
        pass


class ColorRampElement:
    '''Element defining a color at a position in the color ramp '''

    alpha = None
    '''Set alpha of selected color stop 

    :type:  float in [0, inf], default 0.0 
    '''

    color = None
    '''Set color of selected color stop 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    position = None
    '''Set position of selected color stop 

    :type:  float in [0, 1], default 0.0 
    '''


class ColorRampElements:
    '''Collection of Color Ramp Elements '''

    def new(self, position):
        '''Add element to ColorRamp 

        :param position: Position, Position to add element 
        :type position: float in [0, 1]
        :rtype: ColorRampElement 
        :return:  New element 
        '''
        pass

    def remove(self, element):
        '''Delete element from ColorRamp 

        :param element: Element to remove 
        :type element: ColorRampElement, (never None)
        '''
        pass


class ColorSequence:
    '''Sequence strip creating an image filled with a single color '''

    color = None
    '''Effect Strip color 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class CompositorNode:
    def tag_need_exec(self):
        '''Tag the node for compositor update 

        '''
        pass

    def update(self):
        '''

        '''
        pass


class CompositorNodeAlphaOver:
    premul = None
    '''Mix Factor 

    :type:  float in [0, 1], default 0.0 
    '''

    use_premultiply = None
    '''

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeBilateralblur:
    iterations = None
    '''

    :type:  int in [1, 128], default 0 
    '''

    sigma_color = None
    '''

    :type:  float in [0.01, 3], default 0.0 
    '''

    sigma_space = None
    '''

    :type:  float in [0.01, 30], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeBlur:
    aspect_correction = None
    '''Type of aspect correction to use 

    :type:  enum in [‘NONE’, ‘Y’, ‘X’], default ‘NONE’ 
    '''

    factor = None
    '''

    :type:  float in [0, 2], default 0.0 
    '''

    factor_x = None
    '''

    :type:  float in [0, 100], default 0.0 
    '''

    factor_y = None
    '''

    :type:  float in [0, 100], default 0.0 
    '''

    filter_type = None
    '''

    :type:  enum in [‘FLAT’, ‘TENT’, ‘QUAD’, ‘CUBIC’, ‘GAUSS’, ‘FAST_GAUSS’, ‘CATROM’, ‘MITCH’], default ‘FLAT’ 
    '''

    size_x = None
    '''

    :type:  int in [0, 2048], default 0 
    '''

    size_y = None
    '''

    :type:  int in [0, 2048], default 0 
    '''

    use_bokeh = None
    '''Use circular filter (slower) 

    :type:  boolean, default False 
    '''

    use_extended_bounds = None
    '''Extend bounds of the input image to fully fit blurred image 

    :type:  boolean, default False 
    '''

    use_gamma_correction = None
    '''Apply filter on gamma corrected values 

    :type:  boolean, default False 
    '''

    use_relative = None
    '''Use relative (percent) values to define blur radius 

    :type:  boolean, default False 
    '''

    use_variable_size = None
    '''Support variable blur per-pixel when using an image for size input 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeBokehBlur:
    blur_max = None
    '''Blur limit, maximum CoC radius 

    :type:  float in [0, 10000], default 0.0 
    '''

    use_extended_bounds = None
    '''Extend bounds of the input image to fully fit blurred image 

    :type:  boolean, default False 
    '''

    use_variable_size = None
    '''Support variable blur per-pixel when using an image for size input 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeBokehImage:
    angle = None
    '''Angle of the bokeh 

    :type:  float in [-12.5664, 12.5664], default 0.0 
    '''

    catadioptric = None
    '''Level of catadioptric of the bokeh 

    :type:  float in [-0, 1], default 0.0 
    '''

    flaps = None
    '''Number of flaps 

    :type:  int in [3, 24], default 5 
    '''

    rounding = None
    '''Level of rounding of the bokeh 

    :type:  float in [-0, 1], default 0.0 
    '''

    shift = None
    '''Shift of the lens components 

    :type:  float in [-1, 1], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeBoxMask:
    height = None
    '''Height of the box 

    :type:  float in [0, 2], default 0.2 
    '''

    mask_type = None
    '''

    :type:  enum in [‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘NOT’], default ‘ADD’ 
    '''

    rotation = None
    '''Rotation angle of the box 

    :type:  float in [-31.4159, 31.4159], default 0.0 
    '''

    width = None
    '''Width of the box 

    :type:  float in [0, 2], default 0.3 
    '''

    x = None
    '''X position of the middle of the box 

    :type:  float in [-1, 2], default 0.5 
    '''

    y = None
    '''Y position of the middle of the box 

    :type:  float in [-1, 2], default 0.5 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeBrightContrast:
    use_premultiply = None
    '''Keep output image premultiplied alpha 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeChannelMatte:
    color_space = None
    '''

    :type:  enum in [‘RGB’, ‘HSV’, ‘YUV’, ‘YCC’], default ‘RGB’ 
    '''

    limit_channel = None
    '''Limit by this channel’s value 

    :type:  enum in [‘R’, ‘G’, ‘B’], default ‘R’ 
    '''

    limit_max = None
    '''Values higher than this setting are 100% opaque 

    :type:  float in [-inf, inf], default 0.0 
    '''

    limit_method = None
    '''Algorithm to use to limit channel 

    :type:  enum in [‘SINGLE’, ‘MAX’], default ‘SINGLE’ 
    '''

    limit_min = None
    '''Values lower than this setting are 100% keyed 

    :type:  float in [-inf, inf], default 0.0 
    '''

    matte_channel = None
    '''Channel used to determine matte 

    :type:  enum in [‘R’, ‘G’, ‘B’], default ‘R’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeChromaMatte:
    gain = None
    '''Alpha falloff 

    :type:  float in [0, 1], default 0.0 
    '''

    lift = None
    '''Alpha lift 

    :type:  float in [0, 1], default 0.0 
    '''

    shadow_adjust = None
    '''Adjusts the brightness of any shadows captured 

    :type:  float in [0, 1], default 0.0 
    '''

    threshold = None
    '''Tolerance below which colors will be considered as exact matches 

    :type:  float in [0, 0.523599], default 0.0 
    '''

    tolerance = None
    '''Tolerance for a color to be considered a keying color 

    :type:  float in [0.0174533, 1.39626], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeColorBalance:
    correction_method = None
    '''

    :type:  enum in [‘LIFT_GAMMA_GAIN’, ‘OFFSET_POWER_SLOPE’], default ‘LIFT_GAMMA_GAIN’ 
    '''

    gain = None
    '''Correction for Highlights 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''

    gamma = None
    '''Correction for Midtones 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''

    lift = None
    '''Correction for Shadows 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''

    offset = None
    '''Correction for Shadows 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    offset_basis = None
    '''Support negative color by using this as the RGB basis 

    :type:  float in [-inf, inf], default 0.0 
    '''

    power = None
    '''Correction for Midtones 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''

    slope = None
    '''Correction for Highlights 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeColorCorrection:
    blue = None
    '''Blue channel active 

    :type:  boolean, default True 
    '''

    green = None
    '''Green channel active 

    :type:  boolean, default True 
    '''

    highlights_contrast = None
    '''Highlights contrast 

    :type:  float in [0, 4], default 1.0 
    '''

    highlights_gain = None
    '''Highlights gain 

    :type:  float in [0, 4], default 1.0 
    '''

    highlights_gamma = None
    '''Highlights gamma 

    :type:  float in [0, 4], default 1.0 
    '''

    highlights_lift = None
    '''Highlights lift 

    :type:  float in [-1, 1], default 0.0 
    '''

    highlights_saturation = None
    '''Highlights saturation 

    :type:  float in [0, 4], default 1.0 
    '''

    master_contrast = None
    '''Master contrast 

    :type:  float in [0, 4], default 1.0 
    '''

    master_gain = None
    '''Master gain 

    :type:  float in [0, 4], default 1.0 
    '''

    master_gamma = None
    '''Master gamma 

    :type:  float in [0, 4], default 1.0 
    '''

    master_lift = None
    '''Master lift 

    :type:  float in [-1, 1], default 0.0 
    '''

    master_saturation = None
    '''Master saturation 

    :type:  float in [0, 4], default 1.0 
    '''

    midtones_contrast = None
    '''Midtones contrast 

    :type:  float in [0, 4], default 1.0 
    '''

    midtones_end = None
    '''End of midtones 

    :type:  float in [0, 1], default 0.7 
    '''

    midtones_gain = None
    '''Midtones gain 

    :type:  float in [0, 4], default 1.0 
    '''

    midtones_gamma = None
    '''Midtones gamma 

    :type:  float in [0, 4], default 1.0 
    '''

    midtones_lift = None
    '''Midtones lift 

    :type:  float in [-1, 1], default 0.0 
    '''

    midtones_saturation = None
    '''Midtones saturation 

    :type:  float in [0, 4], default 1.0 
    '''

    midtones_start = None
    '''Start of midtones 

    :type:  float in [0, 1], default 0.2 
    '''

    red = None
    '''Red channel active 

    :type:  boolean, default True 
    '''

    shadows_contrast = None
    '''Shadows contrast 

    :type:  float in [0, 4], default 1.0 
    '''

    shadows_gain = None
    '''Shadows gain 

    :type:  float in [0, 4], default 1.0 
    '''

    shadows_gamma = None
    '''Shadows gamma 

    :type:  float in [0, 4], default 1.0 
    '''

    shadows_lift = None
    '''Shadows lift 

    :type:  float in [-1, 1], default 0.0 
    '''

    shadows_saturation = None
    '''Shadows saturation 

    :type:  float in [0, 4], default 1.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeColorMatte:
    color_hue = None
    '''Hue tolerance for colors to be considered a keying color 

    :type:  float in [0, 1], default 0.0 
    '''

    color_saturation = None
    '''Saturation Tolerance for the color 

    :type:  float in [0, 1], default 0.0 
    '''

    color_value = None
    '''Value Tolerance for the color 

    :type:  float in [0, 1], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeColorSpill:
    channel = None
    '''

    :type:  enum in [‘R’, ‘G’, ‘B’], default ‘R’ 
    '''

    limit_channel = None
    '''

    :type:  enum in [‘R’, ‘G’, ‘B’], default ‘R’ 
    '''

    limit_method = None
    '''

    :type:  enum in [‘SIMPLE’, ‘AVERAGE’], default ‘SIMPLE’ 
    '''

    ratio = None
    '''Scale limit by value 

    :type:  float in [0.5, 1.5], default 0.0 
    '''

    unspill_blue = None
    '''Blue spillmap scale 

    :type:  float in [0, 1.5], default 0.0 
    '''

    unspill_green = None
    '''Green spillmap scale 

    :type:  float in [0, 1.5], default 0.0 
    '''

    unspill_red = None
    '''Red spillmap scale 

    :type:  float in [0, 1.5], default 0.0 
    '''

    use_unspill = None
    '''Compensate all channels (differently) by hand 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeCombHSVA:
    def update(self):
        '''

        '''
        pass


class CompositorNodeCombRGBA:
    def update(self):
        '''

        '''
        pass


class CompositorNodeCombYCCA:
    mode = None
    '''

    :type:  enum in [‘ITUBT601’, ‘ITUBT709’, ‘JFIF’], default ‘ITUBT601’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeCombYUVA:
    def update(self):
        '''

        '''
        pass


class CompositorNodeComposite:
    use_alpha = None
    '''Colors are treated alpha premultiplied, or colors output straight (alpha gets set to 1) 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeCornerPin:
    def update(self):
        '''

        '''
        pass


class CompositorNodeCrop:
    max_x = None
    '''

    :type:  int in [0, 10000], default 0 
    '''

    max_y = None
    '''

    :type:  int in [0, 10000], default 0 
    '''

    min_x = None
    '''

    :type:  int in [0, 10000], default 0 
    '''

    min_y = None
    '''

    :type:  int in [0, 10000], default 0 
    '''

    rel_max_x = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    rel_max_y = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    rel_min_x = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    rel_min_y = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    relative = None
    '''Use relative values to crop image 

    :type:  boolean, default False 
    '''

    use_crop_size = None
    '''Whether to crop the size of the input image 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeCryptomatte:
    add = None
    '''Add object or material to matte, by picking a color from the Pick output 

    :type:  float array of 3 items in [-inf, inf], default (1.0, 1.0, 1.0) 
    '''

    matte_id = None
    '''List of object and material crypto IDs to include in matte 

    :type:  string, default “”, (never None) 
    '''

    remove = None
    '''Remove object or material from matte, by picking a color from the Pick output 

    :type:  float array of 3 items in [-inf, inf], default (1.0, 1.0, 1.0) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeCurveRGB:
    mapping = None
    '''

    :type:  CurveMapping, (readonly) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeCurveVec:
    mapping = None
    '''

    :type:  CurveMapping, (readonly) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeCustomGroup:
    '''Custom Compositor Group Node for Python nodes '''

    interface = None
    '''Interface socket data 

    :type:  PropertyGroup, (readonly) 
    '''

    node_tree = None
    '''

    :type:  NodeTree 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeDBlur:
    angle = None
    '''

    :type:  float in [0, 6.28319], default 0.0 
    '''

    center_x = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    center_y = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    distance = None
    '''

    :type:  float in [-1, 1], default 0.0 
    '''

    iterations = None
    '''

    :type:  int in [1, 32], default 0 
    '''

    spin = None
    '''

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    use_wrap = None
    '''

    :type:  boolean, default False 
    '''

    zoom = None
    '''

    :type:  float in [0, 100], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeDefocus:
    angle = None
    '''Bokeh shape rotation offset 

    :type:  float in [0, 1.5708], default 0.0 
    '''

    blur_max = None
    '''Blur limit, maximum CoC radius 

    :type:  float in [0, 10000], default 0.0 
    '''

    bokeh = None
    '''

    :type:  enum in [‘OCTAGON’, ‘HEPTAGON’, ‘HEXAGON’, ‘PENTAGON’, ‘SQUARE’, ‘TRIANGLE’, ‘CIRCLE’], default ‘CIRCLE’ 
    '''

    f_stop = None
    '''Amount of focal blur, 128=infinity=perfect focus, half the value doubles the blur radius 

    :type:  float in [0, 128], default 0.0 
    '''

    scene = None
    '''Scene from which to select the active camera (render scene if undefined) 

    :type:  Scene 
    '''

    threshold = None
    '''CoC radius threshold, prevents background bleed on in-focus midground, 0=off 

    :type:  float in [0, 100], default 0.0 
    '''

    use_gamma_correction = None
    '''Enable gamma correction before and after main process 

    :type:  boolean, default False 
    '''

    use_preview = None
    '''Enable low quality mode, useful for preview 

    :type:  boolean, default False 
    '''

    use_zbuffer = None
    '''Disable when using an image as input instead of actual z-buffer (auto enabled if node not image based, eg. time node) 

    :type:  boolean, default False 
    '''

    z_scale = None
    '''Scale the Z input when not using a z-buffer, controls maximum blur designated by the color white or input value 1 

    :type:  float in [0, 1000], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeDespeckle:
    threshold = None
    '''Threshold for detecting pixels to despeckle 

    :type:  float in [0, 1], default 0.0 
    '''

    threshold_neighbor = None
    '''Threshold for the number of neighbor pixels that must match 

    :type:  float in [0, 1], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeDiffMatte:
    falloff = None
    '''Color distances below this additional threshold are partially keyed 

    :type:  float in [0, 1], default 0.0 
    '''

    tolerance = None
    '''Color distances below this threshold are keyed 

    :type:  float in [0, 1], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeDilateErode:
    distance = None
    '''Distance to grow/shrink (number of iterations) 

    :type:  int in [-5000, 5000], default 0 
    '''

    edge = None
    '''Edge to inset 

    :type:  float in [-100, 100], default 0.0 
    '''

    falloff = None
    '''Falloff type the feather 

    :type:  enum in [‘SMOOTH’, ‘SPHERE’, ‘ROOT’, ‘INVERSE_SQUARE’, ‘SHARP’, ‘LINEAR’], default ‘SMOOTH’ 
    '''

    mode = None
    '''Growing/shrinking mode 

    :type:  enum in [‘STEP’, ‘THRESHOLD’, ‘DISTANCE’, ‘FEATHER’], default ‘STEP’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeDisplace:
    def update(self):
        '''

        '''
        pass


class CompositorNodeDistanceMatte:
    channel = None
    '''

    :type:  enum in [‘RGB’, ‘YCC’], default ‘RGB’ 
    '''

    falloff = None
    '''Color distances below this additional threshold are partially keyed 

    :type:  float in [0, 1], default 0.0 
    '''

    tolerance = None
    '''Color distances below this threshold are keyed 

    :type:  float in [0, 1], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeDoubleEdgeMask:
    edge_mode = None
    '''

    :type:  enum in [‘BLEED_OUT’, ‘KEEP_IN’], default ‘BLEED_OUT’ 
    '''

    inner_mode = None
    '''

    :type:  enum in [‘ALL’, ‘ADJACENT_ONLY’], default ‘ALL’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeEllipseMask:
    height = None
    '''Height of the ellipse 

    :type:  float in [0, 2], default 0.2 
    '''

    mask_type = None
    '''

    :type:  enum in [‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘NOT’], default ‘ADD’ 
    '''

    rotation = None
    '''Rotation angle of the ellipse 

    :type:  float in [-31.4159, 31.4159], default 0.0 
    '''

    width = None
    '''Width of the ellipse 

    :type:  float in [0, 2], default 0.3 
    '''

    x = None
    '''X position of the middle of the ellipse 

    :type:  float in [-1, 2], default 0.5 
    '''

    y = None
    '''Y position of the middle of the ellipse 

    :type:  float in [-1, 2], default 0.5 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeFilter:
    filter_type = None
    '''

    :type:  enum in [‘SOFTEN’, ‘SHARPEN’, ‘LAPLACE’, ‘SOBEL’, ‘PREWITT’, ‘KIRSCH’, ‘SHADOW’], default ‘SOFTEN’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeFlip:
    axis = None
    '''

    :type:  enum in [‘X’, ‘Y’, ‘XY’], default ‘X’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeGamma:
    def update(self):
        '''

        '''
        pass


class CompositorNodeGlare:
    angle_offset = None
    '''Streak angle offset 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    color_modulation = None
    '''Amount of Color Modulation, modulates colors of streaks and ghosts for a spectral dispersion effect 

    :type:  float in [0, 1], default 0.0 
    '''

    fade = None
    '''Streak fade-out factor 

    :type:  float in [0.75, 1], default 0.0 
    '''

    glare_type = None
    '''

    :type:  enum in [‘GHOSTS’, ‘STREAKS’, ‘FOG_GLOW’, ‘SIMPLE_STAR’], default ‘SIMPLE_STAR’ 
    '''

    iterations = None
    '''

    :type:  int in [2, 5], default 0 
    '''

    mix = None
    '''-1 is original image only, 0 is exact 50/50 mix, 1 is processed image only 

    :type:  float in [-1, 1], default 0.0 
    '''

    quality = None
    '''If not set to high quality, the effect will be applied to a low-res copy of the source image 

    :type:  enum in [‘HIGH’, ‘MEDIUM’, ‘LOW’], default ‘HIGH’ 
    '''

    size = None
    '''Glow/glare size (not actual size; relative to initial size of bright area of pixels) 

    :type:  int in [6, 9], default 0 
    '''

    streaks = None
    '''Total number of streaks 

    :type:  int in [1, 16], default 0 
    '''

    threshold = None
    '''The glare filter will only be applied to pixels brighter than this value 

    :type:  float in [0, 1000], default 0.0 
    '''

    use_rotate_45 = None
    '''Simple star filter: add 45 degree rotation offset 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeGroup:
    interface = None
    '''Interface socket data 

    :type:  PropertyGroup, (readonly) 
    '''

    node_tree = None
    '''

    :type:  NodeTree 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeHueCorrect:
    mapping = None
    '''

    :type:  CurveMapping, (readonly) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeHueSat:
    def update(self):
        '''

        '''
        pass


class CompositorNodeIDMask:
    index = None
    '''Pass index number to convert to alpha 

    :type:  int in [0, 32767], default 0 
    '''

    use_antialiasing = None
    '''Apply an anti-aliasing filter to the mask 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeImage:
    frame_duration = None
    '''Number of images of a movie to use 

    :type:  int in [0, 1048574], default 0 
    '''

    frame_offset = None
    '''Offset the number of the frame to use in the animation 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    frame_start = None
    '''Global starting frame of the movie/sequence, assuming first picture has a #1 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    has_layers = None
    '''True if this image has any named layer 

    :type:  boolean, default False, (readonly) 
    '''

    has_views = None
    '''True if this image has multiple views 

    :type:  boolean, default False, (readonly) 
    '''

    image = None
    '''

    :type:  Image 
    '''

    layer = None
    '''

    :type:  enum in [‘PLACEHOLDER’], default ‘PLACEHOLDER’ 
    '''

    use_auto_refresh = None
    '''Always refresh image on frame changes 

    :type:  boolean, default False 
    '''

    use_cyclic = None
    '''Cycle the images in the movie 

    :type:  boolean, default False 
    '''

    use_straight_alpha_output = None
    '''Put Node output buffer to straight alpha instead of premultiplied 

    :type:  boolean, default False 
    '''

    view = None
    '''

    :type:  enum in [‘ALL’], default ‘ALL’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeInpaint:
    distance = None
    '''Distance to inpaint (number of iterations) 

    :type:  int in [1, 10000], default 0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeInvert:
    invert_alpha = None
    '''

    :type:  boolean, default False 
    '''

    invert_rgb = None
    '''

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeKeying:
    blur_post = None
    '''Matte blur size which applies after clipping and dilate/eroding 

    :type:  int in [0, 2048], default 0 
    '''

    blur_pre = None
    '''Chroma pre-blur size which applies before running keyer 

    :type:  int in [0, 2048], default 0 
    '''

    clip_black = None
    '''Value of non-scaled matte pixel which considers as fully background pixel 

    :type:  float in [0, 1], default 0.0 
    '''

    clip_white = None
    '''Value of non-scaled matte pixel which considers as fully foreground pixel 

    :type:  float in [0, 1], default 0.0 
    '''

    despill_balance = None
    '''Balance between non-key colors used to detect amount of key color to be removed 

    :type:  float in [0, 1], default 0.0 
    '''

    despill_factor = None
    '''Factor of despilling screen color from image 

    :type:  float in [0, 1], default 0.0 
    '''

    dilate_distance = None
    '''Matte dilate/erode side 

    :type:  int in [-100, 100], default 0 
    '''

    edge_kernel_radius = None
    '''Radius of kernel used to detect whether pixel belongs to edge 

    :type:  int in [0, 100], default 0 
    '''

    edge_kernel_tolerance = None
    '''Tolerance to pixels inside kernel which are treating as belonging to the same plane 

    :type:  float in [0, 1], default 0.0 
    '''

    feather_distance = None
    '''Distance to grow/shrink the feather 

    :type:  int in [-100, 100], default 0 
    '''

    feather_falloff = None
    '''Falloff type the feather 

    :type:  enum in [‘SMOOTH’, ‘SPHERE’, ‘ROOT’, ‘INVERSE_SQUARE’, ‘SHARP’, ‘LINEAR’], default ‘SMOOTH’ 
    '''

    screen_balance = None
    '''Balance between two non-primary channels primary channel is comparing against 

    :type:  float in [0, 1], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeKeyingScreen:
    clip = None
    '''

    :type:  MovieClip 
    '''

    tracking_object = None
    '''

    :type:  string, default “”, (never None) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeLensdist:
    use_fit = None
    '''For positive distortion factor only: scale image such that black areas are not visible 

    :type:  boolean, default False 
    '''

    use_jitter = None
    '''Enable/disable jittering (faster, but also noisier) 

    :type:  boolean, default False 
    '''

    use_projector = None
    '''Enable/disable projector mode (the effect is applied in horizontal direction only) 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeLevels:
    channel = None
    '''

    :type:  enum in [‘COMBINED_RGB’, ‘RED’, ‘GREEN’, ‘BLUE’, ‘LUMINANCE’], default ‘COMBINED_RGB’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeLumaMatte:
    limit_max = None
    '''Values higher than this setting are 100% opaque 

    :type:  float in [-inf, inf], default 0.0 
    '''

    limit_min = None
    '''Values lower than this setting are 100% keyed 

    :type:  float in [-inf, inf], default 0.0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeMapRange:
    use_clamp = None
    '''Clamp result of the node to 0..1 range 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeMapUV:
    alpha = None
    '''

    :type:  int in [0, 100], default 0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeMapValue:
    max = None
    '''

    :type:  float array of 1 items in [-1000, 1000], default (0.0) 
    '''

    min = None
    '''

    :type:  float array of 1 items in [-1000, 1000], default (0.0) 
    '''

    offset = None
    '''

    :type:  float array of 1 items in [-1000, 1000], default (0.0) 
    '''

    size = None
    '''

    :type:  float array of 1 items in [-1000, 1000], default (0.0) 
    '''

    use_max = None
    '''

    :type:  boolean, default False 
    '''

    use_min = None
    '''

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeMask:
    mask = None
    '''

    :type:  Mask 
    '''

    motion_blur_samples = None
    '''Number of motion blur samples 

    :type:  int in [1, 64], default 0 
    '''

    motion_blur_shutter = None
    '''Exposure for motion blur as a factor of FPS 

    :type:  float in [0, 1], default 0.0 
    '''

    size_source = None
    '''Where to get the mask size from for aspect/size information 

    :type:  enum in [‘SCENE’, ‘FIXED’, ‘FIXED_SCENE’], default ‘SCENE’ 
    '''

    size_x = None
    '''

    :type:  int in [1, 10000], default 0 
    '''

    size_y = None
    '''

    :type:  int in [1, 10000], default 0 
    '''

    use_feather = None
    '''Use feather information from the mask 

    :type:  boolean, default False 
    '''

    use_motion_blur = None
    '''Use multi-sampled motion blur of the mask 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeMath:
    operation = None
    '''

    :type:  enum in [‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘POWER’, ‘LOGARITHM’, ‘SQRT’, ‘ABSOLUTE’, ‘MINIMUM’, ‘MAXIMUM’, ‘LESS_THAN’, ‘GREATER_THAN’, ‘ROUND’, ‘FLOOR’, ‘CEIL’, ‘FRACT’, ‘MODULO’, ‘SINE’, ‘COSINE’, ‘TANGENT’, ‘ARCSINE’, ‘ARCCOSINE’, ‘ARCTANGENT’, ‘ARCTAN2’], default ‘ADD’ 
    '''

    use_clamp = None
    '''Clamp result of the node to 0..1 range 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeMixRGB:
    blend_type = None
    '''

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    use_alpha = None
    '''Include alpha of second input in this operation 

    :type:  boolean, default False 
    '''

    use_clamp = None
    '''Clamp result of the node to 0..1 range 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeMovieClip:
    clip = None
    '''

    :type:  MovieClip 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeMovieDistortion:
    clip = None
    '''

    :type:  MovieClip 
    '''

    distortion_type = None
    '''Distortion to use to filter image 

    :type:  enum in [‘UNDISTORT’, ‘DISTORT’], default ‘UNDISTORT’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeNormal:
    def update(self):
        '''

        '''
        pass


class CompositorNodeNormalize:
    def update(self):
        '''

        '''
        pass


class CompositorNodeOutputFile:
    active_input_index = None
    '''Active input index in details view list 

    :type:  int in [-inf, inf], default 0 
    '''

    base_path = None
    '''Base output path for the image 

    :type:  string, default “”, (never None) 
    '''

    file_slots = None
    '''

    :type:  CompositorNodeOutputFileFileSlots bpy_prop_collection of NodeOutputFileSlotFile, (readonly) 
    '''

    format = None
    '''

    :type:  ImageFormatSettings, (readonly) 
    '''

    layer_slots = None
    '''

    :type:  CompositorNodeOutputFileLayerSlots bpy_prop_collection of NodeOutputFileSlotLayer, (readonly) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeOutputFileFileSlots:
    '''Collection of File Output node slots '''

    def new(self, name):
        '''Add a file slot to this node 

        :param name: Name 
        :type name: string, (never None)
        :rtype: NodeSocket 
        :return:  New socket 
        '''
        pass

    def remove(self, socket):
        '''Remove a file slot from this node 

        :param socket: The socket to remove 
        :type socket: NodeSocket
        '''
        pass

    def clear(self):
        '''Remove all file slots from this node 

        '''
        pass

    def move(self, from_index, to_index):
        '''Move a file slot to another position 

        :param from_index: From Index, Index of the socket to move 
        :type from_index: int in [0, inf]
        :param to_index: To Index, Target index for the socket 
        :type to_index: int in [0, inf]
        '''
        pass


class CompositorNodeOutputFileLayerSlots:
    '''Collection of File Output node slots '''

    def new(self, name):
        '''Add a file slot to this node 

        :param name: Name 
        :type name: string, (never None)
        :rtype: NodeSocket 
        :return:  New socket 
        '''
        pass

    def remove(self, socket):
        '''Remove a file slot from this node 

        :param socket: The socket to remove 
        :type socket: NodeSocket
        '''
        pass

    def clear(self):
        '''Remove all file slots from this node 

        '''
        pass

    def move(self, from_index, to_index):
        '''Move a file slot to another position 

        :param from_index: From Index, Index of the socket to move 
        :type from_index: int in [0, inf]
        :param to_index: To Index, Target index for the socket 
        :type to_index: int in [0, inf]
        '''
        pass


class CompositorNodePixelate:
    def update(self):
        '''

        '''
        pass


class CompositorNodePlaneTrackDeform:
    clip = None
    '''

    :type:  MovieClip 
    '''

    motion_blur_samples = None
    '''Number of motion blur samples 

    :type:  int in [1, 64], default 0 
    '''

    motion_blur_shutter = None
    '''Exposure for motion blur as a factor of FPS 

    :type:  float in [0, 1], default 0.0 
    '''

    plane_track_name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    tracking_object = None
    '''

    :type:  string, default “”, (never None) 
    '''

    use_motion_blur = None
    '''Use multi-sampled motion blur of the mask 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodePremulKey:
    mapping = None
    '''Conversion between premultiplied alpha and key alpha 

    :type:  enum in [‘STRAIGHT_TO_PREMUL’, ‘PREMUL_TO_STRAIGHT’], default ‘STRAIGHT_TO_PREMUL’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeRGB:
    def update(self):
        '''

        '''
        pass


class CompositorNodeRGBToBW:
    def update(self):
        '''

        '''
        pass


class CompositorNodeRLayers:
    layer = None
    '''

    :type:  enum in [‘PLACEHOLDER’], default ‘PLACEHOLDER’ 
    '''

    scene = None
    '''

    :type:  Scene 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeRotate:
    filter_type = None
    '''Method to use to filter rotation 

    :type:  enum in [‘NEAREST’, ‘BILINEAR’, ‘BICUBIC’], default ‘NEAREST’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeScale:
    frame_method = None
    '''How the image fits in the camera frame 

    :type:  enum in [‘STRETCH’, ‘FIT’, ‘CROP’], default ‘STRETCH’ 
    '''

    offset_x = None
    '''Offset image horizontally (factor of image size) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    offset_y = None
    '''Offset image vertically (factor of image size) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    space = None
    '''Coordinate space to scale relative to 

    :type:  enum in [‘RELATIVE’, ‘ABSOLUTE’, ‘SCENE_SIZE’, ‘RENDER_SIZE’], default ‘RELATIVE’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeSepHSVA:
    def update(self):
        '''

        '''
        pass


class CompositorNodeSepRGBA:
    def update(self):
        '''

        '''
        pass


class CompositorNodeSepYCCA:
    mode = None
    '''

    :type:  enum in [‘ITUBT601’, ‘ITUBT709’, ‘JFIF’], default ‘ITUBT601’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeSepYUVA:
    def update(self):
        '''

        '''
        pass


class CompositorNodeSetAlpha:
    def update(self):
        '''

        '''
        pass


class CompositorNodeSplitViewer:
    axis = None
    '''

    :type:  enum in [‘X’, ‘Y’], default ‘X’ 
    '''

    factor = None
    '''

    :type:  int in [0, 100], default 0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeStabilize:
    clip = None
    '''

    :type:  MovieClip 
    '''

    filter_type = None
    '''Method to use to filter stabilization 

    :type:  enum in [‘NEAREST’, ‘BILINEAR’, ‘BICUBIC’], default ‘NEAREST’ 
    '''

    invert = None
    '''Invert stabilization to re-introduce motion to the frame 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeSunBeams:
    ray_length = None
    '''Length of rays as a factor of the image size 

    :type:  float in [0, 100], default 0.0 
    '''

    source = None
    '''Source point of rays as a factor of the image width & height 

    :type:  float array of 2 items in [-100, 100], default (0.0, 0.0) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeSwitch:
    check = None
    '''Off: first socket, On: second socket 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeSwitchView:
    def update(self):
        '''

        '''
        pass


class CompositorNodeTexture:
    node_output = None
    '''For node-based textures, which output node to use 

    :type:  int in [-32768, 32767], default 0 
    '''

    texture = None
    '''

    :type:  Texture 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeTime:
    curve = None
    '''

    :type:  CurveMapping, (readonly) 
    '''

    frame_end = None
    '''

    :type:  int in [-32768, 32767], default 0 
    '''

    frame_start = None
    '''

    :type:  int in [-32768, 32767], default 0 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeTonemap:
    adaptation = None
    '''If 0, global; if 1, based on pixel intensity 

    :type:  float in [0, 1], default 0.0 
    '''

    contrast = None
    '''Set to 0 to use estimate from input image 

    :type:  float in [0, 1], default 0.0 
    '''

    correction = None
    '''If 0, same for all channels; if 1, each independent 

    :type:  float in [0, 1], default 0.0 
    '''

    gamma = None
    '''If not used, set to 1 

    :type:  float in [0.001, 3], default 0.0 
    '''

    intensity = None
    '''If less than zero, darkens image; otherwise, makes it brighter 

    :type:  float in [-8, 8], default 0.0 
    '''

    key = None
    '''The value the average luminance is mapped to 

    :type:  float in [0, 1], default 0.0 
    '''

    offset = None
    '''Normally always 1, but can be used as an extra control to alter the brightness curve 

    :type:  float in [0.001, 10], default 0.0 
    '''

    tonemap_type = None
    '''

    :type:  enum in [‘RD_PHOTORECEPTOR’, ‘RH_SIMPLE’], default ‘RH_SIMPLE’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeTrackPos:
    clip = None
    '''

    :type:  MovieClip 
    '''

    frame_relative = None
    '''Frame to be used for relative position 

    :type:  int in [-32768, 32767], default 0 
    '''

    position = None
    '''Which marker position to use for output 

    :type:  enum in [‘ABSOLUTE’, ‘RELATIVE_START’, ‘RELATIVE_FRAME’, ‘ABSOLUTE_FRAME’], default ‘ABSOLUTE’ 
    '''

    track_name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    tracking_object = None
    '''

    :type:  string, default “”, (never None) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeTransform:
    filter_type = None
    '''Method to use to filter transform 

    :type:  enum in [‘NEAREST’, ‘BILINEAR’, ‘BICUBIC’], default ‘NEAREST’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeTranslate:
    use_relative = None
    '''Use relative (fraction of input image size) values to define translation 

    :type:  boolean, default False 
    '''

    wrap_axis = None
    '''Wrap image on a specific axis 

    :type:  enum in [‘NONE’, ‘XAXIS’, ‘YAXIS’, ‘BOTH’], default ‘NONE’ 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeTree:
    '''Node tree consisting of linked nodes used for compositing '''

    chunk_size = None
    '''Max size of a tile (smaller values gives better distribution of multiple threads, but more overhead) 

    :type:  enum in [‘32’, ‘64’, ‘128’, ‘256’, ‘512’, ‘1024’], default ‘32’ 
    '''

    edit_quality = None
    '''Quality when editing 

    :type:  enum in [‘HIGH’, ‘MEDIUM’, ‘LOW’], default ‘HIGH’ 
    '''

    render_quality = None
    '''Quality when rendering 

    :type:  enum in [‘HIGH’, ‘MEDIUM’, ‘LOW’], default ‘HIGH’ 
    '''

    use_groupnode_buffer = None
    '''Enable buffering of group nodes 

    :type:  boolean, default False 
    '''

    use_opencl = None
    '''Enable GPU calculations 

    :type:  boolean, default False 
    '''

    use_two_pass = None
    '''Use two pass execution during editing: first calculate fast nodes, second pass calculate all nodes 

    :type:  boolean, default False 
    '''

    use_viewer_border = None
    '''Use boundaries for viewer nodes and composite backdrop 

    :type:  boolean, default False 
    '''


class CompositorNodeValToRGB:
    color_ramp = None
    '''

    :type:  ColorRamp, (readonly) 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeValue:
    def update(self):
        '''

        '''
        pass


class CompositorNodeVecBlur:
    factor = None
    '''Scaling factor for motion vectors (actually, ‘shutter speed’, in frames) 

    :type:  float in [0, 20], default 0.0 
    '''

    samples = None
    '''

    :type:  int in [1, 256], default 0 
    '''

    speed_max = None
    '''Maximum speed, or zero for none 

    :type:  int in [0, 1024], default 0 
    '''

    speed_min = None
    '''Minimum speed for a pixel to be blurred (used to separate background from foreground) 

    :type:  int in [0, 1024], default 0 
    '''

    use_curved = None
    '''Interpolate between frames in a Bezier curve, rather than linearly 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeViewer:
    center_x = None
    '''

    :type:  float in [0, 1], default 0.5 
    '''

    center_y = None
    '''

    :type:  float in [0, 1], default 0.5 
    '''

    tile_order = None
    '''Tile order 

    :type:  enum in [‘CENTEROUT’, ‘RANDOM’, ‘BOTTOMUP’, ‘RULE_OF_THIRDS’], default ‘CENTEROUT’ 
    '''

    use_alpha = None
    '''Colors are treated alpha premultiplied, or colors output straight (alpha gets set to 1) 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class CompositorNodeZcombine:
    use_alpha = None
    '''Take Alpha channel into account when doing the Z operation 

    :type:  boolean, default False 
    '''

    use_antialias_z = None
    '''Anti-alias the z-buffer to try to avoid artifacts, mostly useful for Blender renders 

    :type:  boolean, default False 
    '''

    def update(self):
        '''

        '''
        pass


class ConsoleLine:
    '''Input line for the interactive console '''

    body = None
    '''Text in the line 

    :type:  string, default “”, (never None) 
    '''

    current_character = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''

    type = None
    '''Console line type when used in scrollback 

    :type:  enum in [‘OUTPUT’, ‘INPUT’, ‘INFO’, ‘ERROR’], default ‘OUTPUT’ 
    '''


class Constraint:
    '''Constraint modifying the transformation of objects and bones '''

    active = None
    '''Constraint is the one being edited 

    :type:  boolean, default False 
    '''

    error_location = None
    '''Amount of residual error in Blender space unit for constraints that work on position 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    error_rotation = None
    '''Amount of residual error in radians for constraints that work on orientation 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    influence = None
    '''Amount of influence constraint will have on the final solution 

    :type:  float in [0, 1], default 0.0 
    '''

    is_proxy_local = None
    '''Constraint was added in this proxy instance (i.e. did not belong to source Armature) 

    :type:  boolean, default False, (readonly) 
    '''

    is_valid = None
    '''Constraint has valid settings and can be evaluated 

    :type:  boolean, default False, (readonly) 
    '''

    mute = None
    '''Enable/Disable Constraint 

    :type:  boolean, default False 
    '''

    name = None
    '''Constraint name 

    :type:  string, default “”, (never None) 
    '''

    owner_space = None
    '''Space that owner is evaluated in 

    :type:  enum in [‘WORLD’, ‘POSE’, ‘LOCAL_WITH_PARENT’, ‘LOCAL’], default ‘WORLD’ 
    '''

    show_expanded = None
    '''Constraint’s panel is expanded in UI 

    :type:  boolean, default False 
    '''

    target_space = None
    '''Space that target is evaluated in 

    :type:  enum in [‘WORLD’, ‘POSE’, ‘LOCAL_WITH_PARENT’, ‘LOCAL’], default ‘WORLD’ 
    '''

    type = None
    '''

    :type:  enum in [‘CAMERA_SOLVER’, ‘FOLLOW_TRACK’, ‘OBJECT_SOLVER’, ‘COPY_LOCATION’, ‘COPY_ROTATION’, ‘COPY_SCALE’, ‘COPY_TRANSFORMS’, ‘LIMIT_DISTANCE’, ‘LIMIT_LOCATION’, ‘LIMIT_ROTATION’, ‘LIMIT_SCALE’, ‘MAINTAIN_VOLUME’, ‘TRANSFORM’, ‘TRANSFORM_CACHE’, ‘CLAMP_TO’, ‘DAMPED_TRACK’, ‘IK’, ‘LOCKED_TRACK’, ‘SPLINE_IK’, ‘STRETCH_TO’, ‘TRACK_TO’, ‘ACTION’, ‘ARMATURE’, ‘CHILD_OF’, ‘FLOOR’, ‘FOLLOW_PATH’, ‘PIVOT’, ‘SHRINKWRAP’], default ‘CAMERA_SOLVER’, (readonly) 
    '''


class ConstraintTarget:
    '''Target object for multi-target constraints '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''


class ConstraintTargetBone:
    '''Target bone for multi-target constraints '''

    subtarget = None
    '''Target armature bone 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target armature 

    :type:  Object 
    '''

    weight = None
    '''Blending weight of this bone 

    :type:  float in [0, 1], default 0.0 
    '''


class Context:
    '''Current windowmanager and data context '''

    area = None
    '''

    :type:  Area, (readonly) 
    '''

    blend_data = None
    '''

    :type:  BlendData, (readonly) 
    '''

    collection = None
    '''

    :type:  Collection, (readonly) 
    '''

    depsgraph = None
    '''

    :type:  Depsgraph, (readonly) 
    '''

    engine = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    gizmo_group = None
    '''

    :type:  GizmoGroup, (readonly) 
    '''

    layer_collection = None
    '''

    :type:  LayerCollection, (readonly) 
    '''

    mode = None
    '''

    :type:  enum in [‘EDIT_MESH’, ‘EDIT_CURVE’, ‘EDIT_SURFACE’, ‘EDIT_TEXT’, ‘EDIT_ARMATURE’, ‘EDIT_METABALL’, ‘EDIT_LATTICE’, ‘POSE’, ‘SCULPT’, ‘PAINT_WEIGHT’, ‘PAINT_VERTEX’, ‘PAINT_TEXTURE’, ‘PARTICLE’, ‘OBJECT’, ‘PAINT_GPENCIL’, ‘EDIT_GPENCIL’, ‘SCULPT_GPENCIL’, ‘WEIGHT_GPENCIL’], default ‘EDIT_MESH’, (readonly) 
    '''

    preferences = None
    '''

    :type:  Preferences, (readonly) 
    '''

    region = None
    '''

    :type:  Region, (readonly) 
    '''

    region_data = None
    '''

    :type:  RegionView3D, (readonly) 
    '''

    scene = None
    '''

    :type:  Scene, (readonly) 
    '''

    screen = None
    '''

    :type:  Screen, (readonly) 
    '''

    space_data = None
    '''

    :type:  Space, (readonly) 
    '''

    tool_settings = None
    '''

    :type:  ToolSettings, (readonly) 
    '''

    view_layer = None
    '''

    :type:  ViewLayer, (readonly) 
    '''

    window = None
    '''

    :type:  Window, (readonly) 
    '''

    window_manager = None
    '''

    :type:  WindowManager, (readonly) 
    '''

    workspace = None
    '''

    :type:  WorkSpace, (readonly) 
    '''

    def copy(self):
        '''

        '''
        pass


class ControlFluidSettings:
    '''Fluid simulation settings for objects controlling the motion of fluid in the simulation '''

    attraction_radius = None
    '''Force field radius around the control object 

    :type:  float in [0, 10], default 0.0 
    '''

    attraction_strength = None
    '''Force strength for directional attraction towards the control object 

    :type:  float in [-10, 10], default 0.0 
    '''

    end_time = None
    '''Time when the control particles are deactivated 

    :type:  float in [0, inf], default 0.0 
    '''

    quality = None
    '''Quality which is used for object sampling (higher = better but slower) 

    :type:  float in [5, 100], default 0.0 
    '''

    start_time = None
    '''Time when the control particles are activated 

    :type:  float in [0, inf], default 0.0 
    '''

    use = None
    '''Object contributes to the fluid simulation 

    :type:  boolean, default False 
    '''

    use_reverse_frames = None
    '''Reverse control object movement 

    :type:  boolean, default False 
    '''

    velocity_radius = None
    '''Force field radius around the control object 

    :type:  float in [0, 10], default 0.0 
    '''

    velocity_strength = None
    '''Force strength of how much of the control object’s velocity is influencing the fluid velocity 

    :type:  float in [0, 10], default 0.0 
    '''


class CopyLocationConstraint:
    '''Copy the location of the target '''

    head_tail = None
    '''Target along length of bone: Head=0, Tail=1 

    :type:  float in [0, 1], default 0.0 
    '''

    invert_x = None
    '''Invert the X location 

    :type:  boolean, default False 
    '''

    invert_y = None
    '''Invert the Y location 

    :type:  boolean, default False 
    '''

    invert_z = None
    '''Invert the Z location 

    :type:  boolean, default False 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    use_bbone_shape = None
    '''Follow shape of B-Bone segments when calculating Head/Tail position 

    :type:  boolean, default False 
    '''

    use_offset = None
    '''Add original location into copied location 

    :type:  boolean, default False 
    '''

    use_x = None
    '''Copy the target’s X location 

    :type:  boolean, default False 
    '''

    use_y = None
    '''Copy the target’s Y location 

    :type:  boolean, default False 
    '''

    use_z = None
    '''Copy the target’s Z location 

    :type:  boolean, default False 
    '''


class CopyRotationConstraint:
    '''Copy the rotation of the target '''

    invert_x = None
    '''Invert the X rotation 

    :type:  boolean, default False 
    '''

    invert_y = None
    '''Invert the Y rotation 

    :type:  boolean, default False 
    '''

    invert_z = None
    '''Invert the Z rotation 

    :type:  boolean, default False 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    use_offset = None
    '''Add original rotation into copied rotation 

    :type:  boolean, default False 
    '''

    use_x = None
    '''Copy the target’s X rotation 

    :type:  boolean, default False 
    '''

    use_y = None
    '''Copy the target’s Y rotation 

    :type:  boolean, default False 
    '''

    use_z = None
    '''Copy the target’s Z rotation 

    :type:  boolean, default False 
    '''


class CopyScaleConstraint:
    '''Copy the scale of the target '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    use_add = None
    '''Use addition instead of multiplication to combine scale (2.7 compatibility) 

    :type:  boolean, default False 
    '''

    use_offset = None
    '''Combine original scale with copied scale 

    :type:  boolean, default False 
    '''

    use_x = None
    '''Copy the target’s X scale 

    :type:  boolean, default False 
    '''

    use_y = None
    '''Copy the target’s Y scale 

    :type:  boolean, default False 
    '''

    use_z = None
    '''Copy the target’s Z scale 

    :type:  boolean, default False 
    '''


class CopyTransformsConstraint:
    '''Copy all the transforms of the target '''

    head_tail = None
    '''Target along length of bone: Head=0, Tail=1 

    :type:  float in [0, 1], default 0.0 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    use_bbone_shape = None
    '''Follow shape of B-Bone segments when calculating Head/Tail position 

    :type:  boolean, default False 
    '''


class CorrectiveSmoothModifier:
    '''Correct distortion caused by deformation '''

    factor = None
    '''Smooth factor effect 

    :type:  float in [-inf, inf], default 0.0 
    '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    is_bind = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    iterations = None
    '''

    :type:  int in [-32768, 32767], default 0 
    '''

    rest_source = None
    '''Select the source of rest positions 

    :type:  enum in [‘ORCO’, ‘BIND’], default ‘ORCO’ 
    '''

    smooth_type = None
    '''Method used for smoothing 

    :type:  enum in [‘SIMPLE’, ‘LENGTH_WEIGHTED’], default ‘SIMPLE’ 
    '''

    use_only_smooth = None
    '''Apply smoothing without reconstructing the surface 

    :type:  boolean, default False 
    '''

    use_pin_boundary = None
    '''Excludes boundary vertices from being smoothed 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines influence of modifier per point 

    :type:  string, default “”, (never None) 
    '''


class CrossSequence:
    '''Cross Sequence '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class Curve:
    '''Curve data-block storing curves, splines and NURBS '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    bevel_depth = None
    '''Bevel depth when not using a bevel object 

    :type:  float in [-inf, inf], default 0.0 
    '''

    bevel_factor_end = None
    '''Factor that defines to where beveling of spline happens (0=to the very beginning, 1=to the very end) 

    :type:  float in [0, 1], default 0.0 
    '''

    bevel_factor_mapping_end = None
    '''Determines how the end bevel factor is mapped to a spline 

    :type:  enum in [‘RESOLUTION’, ‘SEGMENTS’, ‘SPLINE’], default ‘RESOLUTION’ 
    '''

    bevel_factor_mapping_start = None
    '''Determines how the start bevel factor is mapped to a spline 

    :type:  enum in [‘RESOLUTION’, ‘SEGMENTS’, ‘SPLINE’], default ‘RESOLUTION’ 
    '''

    bevel_factor_start = None
    '''Factor that defines from where beveling of spline happens (0=from the very beginning, 1=from the very end) 

    :type:  float in [0, 1], default 0.0 
    '''

    bevel_object = None
    '''Curve object name that defines the bevel shape 

    :type:  Object 
    '''

    bevel_resolution = None
    '''Bevel resolution when depth is non-zero and no specific bevel object has been defined 

    :type:  int in [0, 32], default 0 
    '''

    cycles = None
    '''Cycles mesh settings 

    :type:  CyclesMeshSettings, (readonly) 
    '''

    dimensions = None
    '''Select 2D or 3D curve type 

    :type:  enum in [‘2D’, ‘3D’], default ‘2D’ 
    '''

    eval_time = None
    '''Parametric position along the length of the curve that Objects ‘following’ it should be at (position is evaluated by dividing by the ‘Path Length’ value) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    extrude = None
    '''Amount of curve extrusion when not using a bevel object 

    :type:  float in [0, inf], default 0.0 
    '''

    fill_mode = None
    '''Mode of filling curve 

    :type:  enum in [‘FULL’, ‘BACK’, ‘FRONT’, ‘HALF’], default ‘FULL’ 
    '''

    is_editmode = None
    '''True when used in editmode 

    :type:  boolean, default False, (readonly) 
    '''

    materials = None
    '''

    :type:  IDMaterials bpy_prop_collection of Material, (readonly) 
    '''

    offset = None
    '''Offset the curve to adjust the width of a text 

    :type:  float in [-inf, inf], default 0.0 
    '''

    path_duration = None
    '''The number of frames that are needed to traverse the path, defining the maximum value for the ‘Evaluation Time’ setting 

    :type:  int in [1, 1048574], default 0 
    '''

    render_resolution_u = None
    '''Surface resolution in U direction used while rendering (zero uses preview resolution) 

    :type:  int in [0, 1024], default 0 
    '''

    render_resolution_v = None
    '''Surface resolution in V direction used while rendering (zero uses preview resolution) 

    :type:  int in [0, 1024], default 0 
    '''

    resolution_u = None
    '''Surface resolution in U direction 

    :type:  int in [1, 1024], default 0 
    '''

    resolution_v = None
    '''Surface resolution in V direction 

    :type:  int in [1, 1024], default 0 
    '''

    shape_keys = None
    '''

    :type:  Key, (readonly) 
    '''

    splines = None
    '''Collection of splines in this curve data object 

    :type:  CurveSplines bpy_prop_collection of Spline, (readonly) 
    '''

    taper_object = None
    '''Curve object name that defines the taper (width) 

    :type:  Object 
    '''

    texspace_location = None
    '''Texture space location 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    texspace_size = None
    '''Texture space size 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    twist_mode = None
    '''The type of tilt calculation for 3D Curves 

    :type:  enum in [‘Z_UP’, ‘MINIMUM’, ‘TANGENT’], default ‘Z_UP’ 
    '''

    twist_smooth = None
    '''Smoothing iteration for tangents 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_auto_texspace = None
    '''Adjust active object’s texture space automatically when transforming object 

    :type:  boolean, default False 
    '''

    use_deform_bounds = None
    '''Option for curve-deform: Use the mesh bounds to clamp the deformation 

    :type:  boolean, default False 
    '''

    use_fill_caps = None
    '''Fill caps for beveled curves 

    :type:  boolean, default False 
    '''

    use_fill_deform = None
    '''Fill curve after applying shape keys and all modifiers 

    :type:  boolean, default False 
    '''

    use_map_taper = None
    '''Map effect of taper object on actually beveled curve 

    :type:  boolean, default False 
    '''

    use_path = None
    '''Enable the curve to become a translation path 

    :type:  boolean, default False 
    '''

    use_path_follow = None
    '''Make curve path children to rotate along the path 

    :type:  boolean, default False 
    '''

    use_radius = None
    '''Option for paths and curve-deform: apply the curve radius with path following it and deforming 

    :type:  boolean, default False 
    '''

    use_stretch = None
    '''Option for curve-deform: make deformed child to stretch along entire path 

    :type:  boolean, default False 
    '''

    use_uv_as_generated = None
    '''Uses the UV values as Generated textured coordinates 

    :type:  boolean, default False 
    '''

    def transform(self, matrix, shape_keys=False):
        '''Transform curve by a matrix 

        :param matrix: Matrix 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        :param shape_keys: Transform Shape Keys 
        :type shape_keys: boolean, (optional)
        '''
        pass

    def validate_material_indices(self):
        '''Validate material indices of splines or letters, return True when the curve has had invalid indices corrected (to default 0) 

        :rtype: boolean 
        :return:  Result 
        '''
        pass

    def update_gpu_tag(self):
        '''update_gpu_tag 

        '''
        pass


class CurveMap:
    '''Curve in a curve mapping '''

    extend = None
    '''Extrapolate the curve or extend it horizontally 

    :type:  enum in [‘HORIZONTAL’, ‘EXTRAPOLATED’], default ‘HORIZONTAL’ 
    '''

    points = None
    '''

    :type:  CurveMapPoints bpy_prop_collection of CurveMapPoint, (readonly) 
    '''

    def evaluate(self, position):
        '''Evaluate curve at given location 

        :param position: Position, Position to evaluate curve at 
        :type position: float in [-inf, inf]
        :rtype: float in [-inf, inf] 
        :return:  Value, Value of curve at given location 
        '''
        pass


class CurveMapPoint:
    '''Point of a curve used for a curve mapping '''

    handle_type = None
    '''Curve interpolation at this point: Bezier or vector 

    :type:  enum in [‘AUTO’, ‘AUTO_CLAMPED’, ‘VECTOR’], default ‘AUTO’ 
    '''

    location = None
    '''X/Y coordinates of the curve point 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    select = None
    '''Selection state of the curve point 

    :type:  boolean, default False 
    '''


class CurveMapPoints:
    '''Collection of Curve Map Points '''

    def new(self, position, value):
        '''Add point to CurveMap 

        :param position: Position, Position to add point 
        :type position: float in [-inf, inf]
        :param value: Value, Value of point 
        :type value: float in [-inf, inf]
        :rtype: CurveMapPoint 
        :return:  New point 
        '''
        pass

    def remove(self, point):
        '''Delete point from CurveMap 

        :param point: PointElement to remove 
        :type point: CurveMapPoint, (never None)
        '''
        pass


class CurveMapping:
    '''Curve mapping to map color, vector and scalar values to other values using a user defined curve '''

    black_level = None
    '''For RGB curves, the color that black is mapped to 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    clip_max_x = None
    '''

    :type:  float in [-100, 100], default 0.0 
    '''

    clip_max_y = None
    '''

    :type:  float in [-100, 100], default 0.0 
    '''

    clip_min_x = None
    '''

    :type:  float in [-100, 100], default 0.0 
    '''

    clip_min_y = None
    '''

    :type:  float in [-100, 100], default 0.0 
    '''

    curves = None
    '''

    :type:  bpy_prop_collection of CurveMap, (readonly) 
    '''

    tone = None
    '''Tone of the curve 

    :type:  enum in [‘STANDARD’, ‘FILMLIKE’], default ‘STANDARD’ 
    '''

    use_clip = None
    '''Force the curve view to fit a defined boundary 

    :type:  boolean, default False 
    '''

    white_level = None
    '''For RGB curves, the color that white is mapped to 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    def update(self):
        '''Update curve mapping after making changes 

        '''
        pass

    def initialize(self):
        '''Initialize curve 

        '''
        pass


class CurveModifier:
    '''Curve deformation modifier '''

    deform_axis = None
    '''The axis that the curve deforms along 

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''

    object = None
    '''Curve object to deform with 

    :type:  Object 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines influence of modifier per point 

    :type:  string, default “”, (never None) 
    '''


class CurvePaintSettings:
    corner_angle = None
    '''Angles above this are considered corners 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    curve_type = None
    '''Type of curve to use for new strokes 

    :type:  enum in [‘POLY’, ‘BEZIER’], default ‘POLY’ 
    '''

    depth_mode = None
    '''Method of projecting depth 

    :type:  enum in [‘CURSOR’, ‘SURFACE’], default ‘CURSOR’ 
    '''

    error_threshold = None
    '''Allow deviation for a smoother, less precise line 

    :type:  int in [1, 100], default 0 
    '''

    fit_method = None
    '''Curve fitting method 

    :type:  enum in [‘REFIT’, ‘SPLIT’], default ‘REFIT’ 
    '''

    radius_max = None
    '''Radius to use when the maximum pressure is applied (or when a tablet isn’t used) 

    :type:  float in [0, 100], default 0.0 
    '''

    radius_min = None
    '''Minimum radius when the minimum pressure is applied (also the minimum when tapering) 

    :type:  float in [0, 100], default 0.0 
    '''

    radius_taper_end = None
    '''Taper factor for the radius of each point along the curve 

    :type:  float in [0, 10], default 0.0 
    '''

    radius_taper_start = None
    '''Taper factor for the radius of each point along the curve 

    :type:  float in [0, 1], default 0.0 
    '''

    surface_offset = None
    '''Offset the stroke from the surface 

    :type:  float in [-10, 10], default 0.0 
    '''

    surface_plane = None
    '''Plane for projected stroke 

    :type:  enum in [‘NORMAL_VIEW’, ‘NORMAL_SURFACE’, ‘VIEW’], default ‘NORMAL_VIEW’ 
    '''

    use_corners_detect = None
    '''Detect corners and use non-aligned handles 

    :type:  boolean, default False 
    '''

    use_offset_absolute = None
    '''Apply a fixed offset (don’t scale by the radius) 

    :type:  boolean, default False 
    '''

    use_pressure_radius = None
    '''Map tablet pressure to curve radius 

    :type:  boolean, default False 
    '''

    use_stroke_endpoints = None
    '''Use the start of the stroke for the depth 

    :type:  boolean, default False 
    '''


class CurveSplines:
    '''Collection of curve splines '''

    active = None
    '''Active curve spline 

    :type:  Spline 
    '''

    def new(self, type):
        '''Add a new spline to the curve 

        :param type: type for the new spline 
        :type type: enum in ['POLY', 'BEZIER', 'BSPLINE', 'CARDINAL', 'NURBS']
        :rtype: Spline 
        :return:  The newly created spline 
        '''
        pass

    def remove(self, spline):
        '''Remove a spline from a curve 

        :param spline: The spline to remove 
        :type spline: Spline, (never None)
        '''
        pass

    def clear(self):
        '''Remove all splines from a curve 

        '''
        pass


class CurvesModifier:
    '''RGB curves modifier for sequence strip '''

    curve_mapping = None
    '''

    :type:  CurveMapping, (readonly) 
    '''


class CyclesCameraSettings:
    aperture_blades = None
    '''Number of blades in aperture for polygonal bokeh (at least 3) 

    :type:  int in [0, 100], default 0 
    '''

    aperture_fstop = None
    '''F-stop ratio (lower numbers give more defocus, higher numbers give a sharper image) 

    :type:  float in [0, inf], default 5.6 
    '''

    aperture_ratio = None
    '''Distortion to simulate anamorphic lens bokeh 

    :type:  float in [0.01, inf], default 1.0 
    '''

    aperture_rotation = None
    '''Rotation of blades in aperture 

    :type:  float in [-inf, inf], default 0.0 
    '''

    aperture_size = None
    '''Radius of the aperture for depth of field (higher values give more defocus) 

    :type:  float in [0, inf], default 0.0 
    '''

    aperture_type = None
    '''Use f-stop number or aperture radius 

    :type:  enum in [‘RADIUS’, ‘FSTOP’], default ‘RADIUS’ 
    '''

    fisheye_fov = None
    '''Field of view for the fisheye lens 

    :type:  float in [0.1745, 31.4159], default 3.14159 
    '''

    fisheye_lens = None
    '''Lens focal length (mm) 

    :type:  float in [0.01, 100], default 10.5 
    '''

    latitude_max = None
    '''Maximum latitude (vertical angle) for the equirectangular lens 

    :type:  float in [-1.5708, 1.5708], default 1.5708 
    '''

    latitude_min = None
    '''Minimum latitude (vertical angle) for the equirectangular lens 

    :type:  float in [-1.5708, 1.5708], default -1.5708 
    '''

    longitude_max = None
    '''Maximum longitude (horizontal angle) for the equirectangular lens 

    :type:  float in [-3.14159, 3.14159], default 3.14159 
    '''

    longitude_min = None
    '''Minimum longitude (horizontal angle) for the equirectangular lens 

    :type:  float in [-3.14159, 3.14159], default -3.14159 
    '''

    panorama_type = None
    '''Distortion to use for the calculation 

    :type:  enum in [‘EQUIRECTANGULAR’, ‘FISHEYE_EQUIDISTANT’, ‘FISHEYE_EQUISOLID’, ‘MIRRORBALL’], default ‘FISHEYE_EQUISOLID’ 
    '''


class CyclesCurveRenderSettings:
    cull_backfacing = None
    '''Do not test the back-face of each strand 

    :type:  boolean, default True 
    '''

    maximum_width = None
    '''Maximum extension that strand radius can be increased by 

    :type:  float in [0, 100], default 0.1 
    '''

    minimum_width = None
    '''Minimal pixel width for strands (0 - deactivated) 

    :type:  float in [0, 100], default 0.0 
    '''

    primitive = None
    '''Type of primitive used for hair rendering 

    :type:  enum in [‘TRIANGLES’, ‘LINE_SEGMENTS’, ‘CURVE_SEGMENTS’], default ‘LINE_SEGMENTS’ 
    '''

    resolution = None
    '''Resolution of generated mesh 

    :type:  int in [3, 64], default 3 
    '''

    shape = None
    '''Form of hair 

    :type:  enum in [‘RIBBONS’, ‘THICK’], default ‘THICK’ 
    '''

    subdivisions = None
    '''Number of subdivisions used in Cardinal curve intersection (power of 2) 

    :type:  int in [0, 24], default 4 
    '''

    use_curves = None
    '''Activate Cycles hair rendering for particle system 

    :type:  boolean, default True 
    '''


class CyclesLightSettings:
    cast_shadow = None
    '''Light casts shadows 

    :type:  boolean, default True 
    '''

    is_portal = None
    '''Use this area light to guide sampling of the background, note that this will make the light invisible 

    :type:  boolean, default False 
    '''

    max_bounces = None
    '''Maximum number of bounces the light will contribute to the render 

    :type:  int in [0, 1024], default 1024 
    '''

    samples = None
    '''Number of light samples to render for each AA sample 

    :type:  int in [1, 10000], default 1 
    '''

    use_multiple_importance_sampling = None
    '''Use multiple importance sampling for the light, reduces noise for area lights and sharp glossy materials 

    :type:  boolean, default True 
    '''


class CyclesMaterialSettings:
    displacement_method = None
    '''Method to use for the displacement 

    :type:  enum in [‘BUMP’, ‘DISPLACEMENT’, ‘BOTH’], default ‘BUMP’ 
    '''

    homogeneous_volume = None
    '''When using volume rendering, assume volume has the same density everywhere (not using any textures), for faster rendering 

    :type:  boolean, default False 
    '''

    sample_as_light = None
    '''Use multiple importance sampling for this material, disabling may reduce overall noise for large objects that emit little light compared to other light sources 

    :type:  boolean, default True 
    '''

    use_transparent_shadow = None
    '''Use transparent shadows for this material if it contains a Transparent BSDF, disabling will render faster but not give accurate shadows 

    :type:  boolean, default True 
    '''

    volume_interpolation = None
    '''Interpolation method to use for smoke/fire volumes 

    :type:  enum in [‘LINEAR’, ‘CUBIC’], default ‘LINEAR’ 
    '''

    volume_sampling = None
    '''Sampling method to use for volumes 

    :type:  enum in [‘DISTANCE’, ‘EQUIANGULAR’, ‘MULTIPLE_IMPORTANCE’], default ‘MULTIPLE_IMPORTANCE’ 
    '''


class CyclesMeshSettings:
    pass


class CyclesObjectSettings:
    dicing_rate = None
    '''Multiplier for scene dicing rate (located in the Subdivision panel) 

    :type:  float in [0.1, 1000], default 1.0 
    '''

    is_holdout = None
    '''Render objects as a holdout or matte, creating a hole in the image with zero alpha, to fill out in compositing with real footage or another render 

    :type:  boolean, default False 
    '''

    is_shadow_catcher = None
    '''Only render shadows on this object, for compositing renders into real footage 

    :type:  boolean, default False 
    '''

    motion_steps = None
    '''Control accuracy of motion blur, more steps gives more memory usage (actual number of steps is 2^(steps - 1)) 

    :type:  int in [1, inf], default 1 
    '''

    use_adaptive_subdivision = None
    '''Use adaptive render time subdivision 

    :type:  boolean, default False 
    '''

    use_camera_cull = None
    '''Allow this object and its duplicators to be culled by camera space culling 

    :type:  boolean, default False 
    '''

    use_deform_motion = None
    '''Use deformation motion blur for this object 

    :type:  boolean, default True 
    '''

    use_distance_cull = None
    '''Allow this object and its duplicators to be culled by distance from camera 

    :type:  boolean, default False 
    '''

    use_motion_blur = None
    '''Use motion blur for this object 

    :type:  boolean, default True 
    '''


class CyclesRenderLayerSettings:
    denoising_diffuse_direct = None
    '''Denoise the direct diffuse lighting 

    :type:  boolean, default True 
    '''

    denoising_diffuse_indirect = None
    '''Denoise the indirect diffuse lighting 

    :type:  boolean, default True 
    '''

    denoising_feature_strength = None
    '''Controls removal of noisy image feature passes (lower values preserve more detail, but aren’t as smooth) 

    :type:  float in [0, 1], default 0.5 
    '''

    denoising_glossy_direct = None
    '''Denoise the direct glossy lighting 

    :type:  boolean, default True 
    '''

    denoising_glossy_indirect = None
    '''Denoise the indirect glossy lighting 

    :type:  boolean, default True 
    '''

    denoising_neighbor_frames = None
    '''Number of neighboring frames to use for denoising animations (more frames produce smoother results at the cost of performance) 

    :type:  int in [0, 7], default 0 
    '''

    denoising_radius = None
    '''Size of the image area that’s used to denoise a pixel (higher values are smoother, but might lose detail and are slower) 

    :type:  int in [1, 25], default 8 
    '''

    denoising_relative_pca = None
    '''When removing pixels that don’t carry information, use a relative threshold instead of an absolute one (can help to reduce artifacts, but might cause detail loss around edges) 

    :type:  boolean, default False 
    '''

    denoising_store_passes = None
    '''Store the denoising feature passes and the noisy image 

    :type:  boolean, default False 
    '''

    denoising_strength = None
    '''Controls neighbor pixel weighting for the denoising filter (lower values preserve more detail, but aren’t as smooth) 

    :type:  float in [0, 1], default 0.5 
    '''

    denoising_subsurface_direct = None
    '''Denoise the direct subsurface lighting 

    :type:  boolean, default True 
    '''

    denoising_subsurface_indirect = None
    '''Denoise the indirect subsurface lighting 

    :type:  boolean, default True 
    '''

    denoising_transmission_direct = None
    '''Denoise the direct transmission lighting 

    :type:  boolean, default True 
    '''

    denoising_transmission_indirect = None
    '''Denoise the indirect transmission lighting 

    :type:  boolean, default True 
    '''

    pass_crypto_accurate = None
    '''Generate a more accurate Cryptomatte pass. CPU only, may render slower and use more memory 

    :type:  boolean, default True 
    '''

    pass_crypto_depth = None
    '''Sets how many unique objects can be distinguished per pixel 

    :type:  int in [2, 16], default 6 
    '''

    pass_debug_bvh_intersections = None
    '''Store Debug BVH Intersections 

    :type:  boolean, default False 
    '''

    pass_debug_bvh_traversed_instances = None
    '''Store Debug BVH Traversed Instances pass 

    :type:  boolean, default False 
    '''

    pass_debug_bvh_traversed_nodes = None
    '''Store Debug BVH Traversed Nodes pass 

    :type:  boolean, default False 
    '''

    pass_debug_ray_bounces = None
    '''Store Debug Ray Bounces pass 

    :type:  boolean, default False 
    '''

    pass_debug_render_time = None
    '''Render time in milliseconds per sample and pixel 

    :type:  boolean, default False 
    '''

    use_denoising = None
    '''Denoise the rendered image 

    :type:  boolean, default False 
    '''

    use_pass_crypto_asset = None
    '''Render cryptomatte asset pass, for isolating groups of objects with the same parent 

    :type:  boolean, default False 
    '''

    use_pass_crypto_material = None
    '''Render cryptomatte material pass, for isolating materials in compositing 

    :type:  boolean, default False 
    '''

    use_pass_crypto_object = None
    '''Render cryptomatte object pass, for isolating objects in compositing 

    :type:  boolean, default False 
    '''

    use_pass_volume_direct = None
    '''Deliver direct volumetric scattering pass 

    :type:  boolean, default False 
    '''

    use_pass_volume_indirect = None
    '''Deliver indirect volumetric scattering pass 

    :type:  boolean, default False 
    '''


class CyclesRenderSettings:
    aa_samples = None
    '''Number of antialiasing samples to render for each pixel 

    :type:  int in [1, 2097151], default 128 
    '''

    ao_bounces = None
    '''Approximate indirect light with background tinted ambient occlusion at the specified bounce, 0 disables this feature 

    :type:  int in [0, 1024], default 0 
    '''

    ao_bounces_render = None
    '''Approximate indirect light with background tinted ambient occlusion at the specified bounce, 0 disables this feature 

    :type:  int in [0, 1024], default 0 
    '''

    ao_samples = None
    '''Number of ambient occlusion samples to render for each AA sample 

    :type:  int in [1, 1024], default 1 
    '''

    bake_type = None
    '''Type of pass to bake 

    :type:  enum in [‘COMBINED’, ‘AO’, ‘SHADOW’, ‘NORMAL’, ‘UV’, ‘ROUGHNESS’, ‘EMIT’, ‘ENVIRONMENT’, ‘DIFFUSE’, ‘GLOSSY’, ‘TRANSMISSION’, ‘SUBSURFACE’], default ‘COMBINED’ 
    '''

    blur_glossy = None
    '''Adaptively blur glossy shaders after blurry bounces, to reduce noise at the cost of accuracy 

    :type:  float in [0, 10], default 1.0 
    '''

    camera_cull_margin = None
    '''Margin for the camera space culling 

    :type:  float in [0, 5], default 0.1 
    '''

    caustics_reflective = None
    '''Use reflective caustics, resulting in a brighter image (more noise but added realism) 

    :type:  boolean, default True 
    '''

    caustics_refractive = None
    '''Use refractive caustics, resulting in a brighter image (more noise but added realism) 

    :type:  boolean, default True 
    '''

    debug_bvh_layout = None
    '''

    :type:  enum in [‘BVH2’, ‘BVH4’, ‘BVH8’], default ‘BVH8’ 
    '''

    debug_bvh_time_steps = None
    '''Split BVH primitives by this number of time steps to speed up render time in cost of memory 

    :type:  int in [0, 16], default 0 
    '''

    debug_bvh_type = None
    '''Choose between faster updates, or faster render 

    :type:  enum in [‘DYNAMIC_BVH’, ‘STATIC_BVH’], default ‘DYNAMIC_BVH’ 
    '''

    debug_cancel_timeout = None
    '''

    :type:  float in [0.01, 10], default 0.1 
    '''

    debug_opencl_device_type = None
    '''

    :type:  enum in [‘NONE’, ‘ALL’, ‘DEFAULT’, ‘CPU’, ‘GPU’, ‘ACCELERATOR’], default ‘ALL’ 
    '''

    debug_opencl_kernel_type = None
    '''

    :type:  enum in [‘DEFAULT’, ‘MEGA’, ‘SPLIT’], default ‘DEFAULT’ 
    '''

    debug_opencl_mem_limit = None
    '''Artificial limit on OpenCL memory usage in MB (0 to disable limit) 

    :type:  int in [-inf, inf], default 0 
    '''

    debug_reset_timeout = None
    '''

    :type:  float in [0.01, 10], default 0.1 
    '''

    debug_text_timeout = None
    '''

    :type:  float in [0.01, 10], default 1.0 
    '''

    debug_tile_size = None
    '''

    :type:  int in [1, 4096], default 1024 
    '''

    debug_use_cpu_avx = None
    '''

    :type:  boolean, default True 
    '''

    debug_use_cpu_avx2 = None
    '''

    :type:  boolean, default True 
    '''

    debug_use_cpu_split_kernel = None
    '''

    :type:  boolean, default False 
    '''

    debug_use_cpu_sse2 = None
    '''

    :type:  boolean, default True 
    '''

    debug_use_cpu_sse3 = None
    '''

    :type:  boolean, default True 
    '''

    debug_use_cpu_sse41 = None
    '''

    :type:  boolean, default True 
    '''

    debug_use_cuda_adaptive_compile = None
    '''

    :type:  boolean, default False 
    '''

    debug_use_cuda_split_kernel = None
    '''

    :type:  boolean, default False 
    '''

    debug_use_hair_bvh = None
    '''Use special type BVH optimized for hair (uses more ram but renders faster) 

    :type:  boolean, default True 
    '''

    debug_use_opencl_debug = None
    '''

    :type:  boolean, default False 
    '''

    debug_use_spatial_splits = None
    '''Use BVH spatial splits: longer builder time, faster render 

    :type:  boolean, default False 
    '''

    device = None
    '''Device to use for rendering 

    :type:  enum in [‘CPU’, ‘GPU’], default ‘CPU’ 
    '''

    dicing_camera = None
    '''Camera to use as reference point when subdividing geometry, useful to avoid crawling artifacts in animations when the scene camera is moving 

    :type:  Object 
    '''

    dicing_rate = None
    '''Size of a micropolygon in pixels 

    :type:  float in [0.1, 1000], default 1.0 
    '''

    diffuse_bounces = None
    '''Maximum number of diffuse reflection bounces, bounded by total maximum 

    :type:  int in [0, 1024], default 4 
    '''

    diffuse_samples = None
    '''Number of diffuse bounce samples to render for each AA sample 

    :type:  int in [1, 1024], default 1 
    '''

    distance_cull_margin = None
    '''Cull objects which are further away from camera than this distance 

    :type:  float in [0, inf], default 50.0 
    '''

    feature_set = None
    '''Feature set to use for rendering 

    :type:  enum in [‘SUPPORTED’, ‘EXPERIMENTAL’], default ‘SUPPORTED’ 
    '''

    film_exposure = None
    '''Image brightness scale 

    :type:  float in [0, 10], default 1.0 
    '''

    film_transparent = None
    '''World background is transparent, for compositing the render over another background 

    :type:  boolean, default False 
    '''

    film_transparent_glass = None
    '''Render transmissive surfaces as transparent, for compositing glass over another background 

    :type:  boolean, default False 
    '''

    film_transparent_roughness = None
    '''For transparent transmission, keep surfaces with roughness above the threshold opaque 

    :type:  float in [0, 1], default 0.1 
    '''

    filter_type = None
    '''Pixel filter type 

    :type:  enum in [‘BOX’, ‘GAUSSIAN’, ‘BLACKMAN_HARRIS’], default ‘BLACKMAN_HARRIS’ 
    '''

    filter_width = None
    '''Pixel filter width 

    :type:  float in [0.01, 10], default 1.5 
    '''

    glossy_bounces = None
    '''Maximum number of glossy reflection bounces, bounded by total maximum 

    :type:  int in [0, 1024], default 4 
    '''

    glossy_samples = None
    '''Number of glossy bounce samples to render for each AA sample 

    :type:  int in [1, 1024], default 1 
    '''

    light_sampling_threshold = None
    '''Probabilistically terminate light samples when the light contribution is below this threshold (more noise but faster rendering). Zero disables the test and never ignores lights 

    :type:  float in [0, 1], default 0.01 
    '''

    max_bounces = None
    '''Total maximum number of bounces 

    :type:  int in [0, 1024], default 12 
    '''

    max_subdivisions = None
    '''Stop subdividing when this level is reached even if the dice rate would produce finer tessellation 

    :type:  int in [0, 16], default 12 
    '''

    mesh_light_samples = None
    '''Number of mesh emission light samples to render for each AA sample 

    :type:  int in [1, 1024], default 1 
    '''

    motion_blur_position = None
    '''Offset for the shutter’s time interval, allows to change the motion blur trails 

    :type:  enum in [‘START’, ‘CENTER’, ‘END’], default ‘CENTER’ 
    '''

    offscreen_dicing_scale = None
    '''Multiplier for dicing rate of geometry outside of the camera view. The dicing rate of objects is gradually increased the further they are outside the camera view. Lower values provide higher quality reflections and shadows for off screen objects, while higher values use less memory 

    :type:  float in [1, inf], default 4.0 
    '''

    pixel_filter_type = None
    '''Pixel filter type 

    :type:  enum in [‘BOX’, ‘GAUSSIAN’, ‘BLACKMAN_HARRIS’], default ‘BLACKMAN_HARRIS’ 
    '''

    preview_aa_samples = None
    '''Number of antialiasing samples to render in the viewport, unlimited if 0 

    :type:  int in [0, 2097151], default 32 
    '''

    preview_dicing_rate = None
    '''Size of a micropolygon in pixels during preview render 

    :type:  float in [0.1, 1000], default 8.0 
    '''

    preview_pause = None
    '''Pause all viewport preview renders 

    :type:  boolean, default False 
    '''

    preview_samples = None
    '''Number of samples to render in the viewport, unlimited if 0 

    :type:  int in [0, inf], default 32 
    '''

    preview_start_resolution = None
    '''Resolution to start rendering preview at, progressively increasing it to the full viewport size 

    :type:  int in [8, 16384], default 64 
    '''

    progressive = None
    '''Method to sample lights and materials 

    :type:  enum in [‘BRANCHED_PATH’, ‘PATH’], default ‘PATH’ 
    '''

    rolling_shutter_duration = None
    '''Scanline “exposure” time for the rolling shutter effect 

    :type:  float in [0, 1], default 0.1 
    '''

    rolling_shutter_type = None
    '''Type of rolling shutter effect matching CMOS-based cameras 

    :type:  enum in [‘NONE’, ‘TOP’], default ‘NONE’ 
    '''

    sample_all_lights_direct = None
    '''Sample all lights (for direct samples), rather than randomly picking one 

    :type:  boolean, default True 
    '''

    sample_all_lights_indirect = None
    '''Sample all lights (for indirect samples), rather than randomly picking one 

    :type:  boolean, default True 
    '''

    sample_clamp_direct = None
    '''If non-zero, the maximum value for a direct sample, higher values will be scaled down to avoid too much noise and slow convergence at the cost of accuracy 

    :type:  float in [0, inf], default 0.0 
    '''

    sample_clamp_indirect = None
    '''If non-zero, the maximum value for an indirect sample, higher values will be scaled down to avoid too much noise and slow convergence at the cost of accuracy 

    :type:  float in [0, inf], default 10.0 
    '''

    samples = None
    '''Number of samples to render for each pixel 

    :type:  int in [1, inf], default 128 
    '''

    sampling_pattern = None
    '''Random sampling pattern used by the integrator 

    :type:  enum in [‘SOBOL’, ‘CORRELATED_MUTI_JITTER’], default ‘SOBOL’ 
    '''

    seed = None
    '''Seed value for integrator to get different noise patterns 

    :type:  int in [0, inf], default 0 
    '''

    shading_system = None
    '''Use Open Shading Language (CPU rendering only) 

    :type:  boolean, default False 
    '''

    subsurface_samples = None
    '''Number of subsurface scattering samples to render for each AA sample 

    :type:  int in [1, 1024], default 1 
    '''

    texture_limit = None
    '''Limit texture size used by viewport rendering 

    :type:  enum in [‘OFF’, ‘128’, ‘256’, ‘512’, ‘1024’, ‘2048’, ‘4096’, ‘8192’], default ‘OFF’ 
    '''

    texture_limit_render = None
    '''Limit texture size used by final rendering 

    :type:  enum in [‘OFF’, ‘128’, ‘256’, ‘512’, ‘1024’, ‘2048’, ‘4096’, ‘8192’], default ‘OFF’ 
    '''

    tile_order = None
    '''Tile order for rendering 

    :type:  enum in [‘CENTER’, ‘RIGHT_TO_LEFT’, ‘LEFT_TO_RIGHT’, ‘TOP_TO_BOTTOM’, ‘BOTTOM_TO_TOP’, ‘HILBERT_SPIRAL’], default ‘HILBERT_SPIRAL’ 
    '''

    transmission_bounces = None
    '''Maximum number of transmission bounces, bounded by total maximum 

    :type:  int in [0, 1024], default 12 
    '''

    transmission_samples = None
    '''Number of transmission bounce samples to render for each AA sample 

    :type:  int in [1, 1024], default 1 
    '''

    transparent_max_bounces = None
    '''Maximum number of transparent bounces 

    :type:  int in [0, 1024], default 8 
    '''

    use_animated_seed = None
    '''Use different seed values (and hence noise patterns) at different frames 

    :type:  boolean, default False 
    '''

    use_bvh_embree = None
    '''Use Embree as ray accelerator 

    :type:  boolean, default False 
    '''

    use_camera_cull = None
    '''Allow objects to be culled based on the camera frustum 

    :type:  boolean, default False 
    '''

    use_distance_cull = None
    '''Allow objects to be culled based on the distance from camera 

    :type:  boolean, default False 
    '''

    use_layer_samples = None
    '''How to use per view layer sample settings 

    :type:  enum in [‘USE’, ‘BOUNDED’, ‘IGNORE’], default ‘USE’ 
    '''

    use_progressive_refine = None
    '''Instead of rendering each tile until it is finished, refine the whole image progressively (this renders somewhat slower, but time can be saved by manually stopping the render when the noise is low enough) 

    :type:  boolean, default False 
    '''

    use_square_samples = None
    '''Square sampling values for easier artist control 

    :type:  boolean, default False 
    '''

    volume_bounces = None
    '''Maximum number of volumetric scattering events 

    :type:  int in [0, 1024], default 0 
    '''

    volume_max_steps = None
    '''Maximum number of steps through the volume before giving up, to avoid extremely long render times with big objects or small step sizes 

    :type:  int in [2, 65536], default 1024 
    '''

    volume_samples = None
    '''Number of volume scattering samples to render for each AA sample 

    :type:  int in [1, 1024], default 1 
    '''

    volume_step_size = None
    '''Distance between volume shader samples when rendering the volume (lower values give more accurate and detailed results, but also increased render time) 

    :type:  float in [1e-07, 100000], default 0.1 
    '''


class CyclesVisibilitySettings:
    camera = None
    '''Object visibility for camera rays 

    :type:  boolean, default True 
    '''

    diffuse = None
    '''Object visibility for diffuse reflection rays 

    :type:  boolean, default True 
    '''

    glossy = None
    '''Object visibility for glossy reflection rays 

    :type:  boolean, default True 
    '''

    scatter = None
    '''Object visibility for volume scatter rays 

    :type:  boolean, default True 
    '''

    shadow = None
    '''Object visibility for shadow rays 

    :type:  boolean, default True 
    '''

    transmission = None
    '''Object visibility for transmission rays 

    :type:  boolean, default True 
    '''


class CyclesWorldSettings:
    homogeneous_volume = None
    '''When using volume rendering, assume volume has the same density everywhere(not using any textures), for faster rendering 

    :type:  boolean, default False 
    '''

    max_bounces = None
    '''Maximum number of bounces the background light will contribute to the render 

    :type:  int in [0, 1024], default 1024 
    '''

    sample_map_resolution = None
    '''Importance map size is resolution x resolution/2; higher values potentially produce less noise, at the cost of memory and speed 

    :type:  int in [4, 8192], default 1024 
    '''

    samples = None
    '''Number of light samples to render for each AA sample 

    :type:  int in [1, 10000], default 1 
    '''

    sampling_method = None
    '''How to sample the background light 

    :type:  enum in [‘NONE’, ‘AUTOMATIC’, ‘MANUAL’], default ‘AUTOMATIC’ 
    '''

    volume_interpolation = None
    '''Interpolation method to use for volumes 

    :type:  enum in [‘LINEAR’, ‘CUBIC’], default ‘LINEAR’ 
    '''

    volume_sampling = None
    '''Sampling method to use for volumes 

    :type:  enum in [‘DISTANCE’, ‘EQUIANGULAR’, ‘MULTIPLE_IMPORTANCE’], default ‘EQUIANGULAR’ 
    '''


class DampedTrackConstraint:
    '''Point toward target by taking the shortest rotation path '''

    head_tail = None
    '''Target along length of bone: Head=0, Tail=1 

    :type:  float in [0, 1], default 0.0 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    track_axis = None
    '''Axis that points to the target object 

    :type:  enum in [‘TRACK_X’, ‘TRACK_Y’, ‘TRACK_Z’, ‘TRACK_NEGATIVE_X’, ‘TRACK_NEGATIVE_Y’, ‘TRACK_NEGATIVE_Z’], default ‘TRACK_X’ 
    '''

    use_bbone_shape = None
    '''Follow shape of B-Bone segments when calculating Head/Tail position 

    :type:  boolean, default False 
    '''


class DataTransferModifier:
    '''Modifier transferring some data from a source mesh '''

    data_types_edges = None
    '''Which edge data layers to transfer 

    :type:  enum set in {‘SHARP_EDGE’, ‘SEAM’, ‘CREASE’, ‘BEVEL_WEIGHT_EDGE’, ‘FREESTYLE_EDGE’}, default {‘SHARP_EDGE’} 
    '''

    data_types_loops = None
    '''Which face corner data layers to transfer 

    :type:  enum set in {‘CUSTOM_NORMAL’, ‘VCOL’, ‘UV’}, default {‘CUSTOM_NORMAL’} 
    '''

    data_types_polys = None
    '''Which poly data layers to transfer 

    :type:  enum set in {‘SMOOTH’, ‘FREESTYLE_FACE’}, default {‘SMOOTH’} 
    '''

    data_types_verts = None
    '''Which vertex data layers to transfer 

    :type:  enum set in {‘VGROUP_WEIGHTS’, ‘BEVEL_WEIGHT_VERT’}, default {‘VGROUP_WEIGHTS’} 
    '''

    edge_mapping = None
    '''Method used to map source edges to destination ones 

    :type:  enum in [‘TOPOLOGY’, ‘VERT_NEAREST’, ‘NEAREST’, ‘POLY_NEAREST’, ‘EDGEINTERP_VNORPROJ’], default ‘NEAREST’ 
    '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    islands_precision = None
    '''Factor controlling precision of islands handling (typically, 0.1 should be enough, higher values can make things really slow) 

    :type:  float in [0, 1], default 0.0 
    '''

    layers_uv_select_dst = None
    '''How to match source and destination layers 

    :type:  enum in [‘ACTIVE’, ‘NAME’, ‘INDEX’], default ‘NAME’ 
    '''

    layers_uv_select_src = None
    '''Which layers to transfer, in case of multi-layers types 

    :type:  enum in [‘ACTIVE’, ‘ALL’, ‘BONE_SELECT’, ‘BONE_DEFORM’], default ‘ALL’ 
    '''

    layers_vcol_select_dst = None
    '''How to match source and destination layers 

    :type:  enum in [‘ACTIVE’, ‘NAME’, ‘INDEX’], default ‘NAME’ 
    '''

    layers_vcol_select_src = None
    '''Which layers to transfer, in case of multi-layers types 

    :type:  enum in [‘ACTIVE’, ‘ALL’, ‘BONE_SELECT’, ‘BONE_DEFORM’], default ‘ALL’ 
    '''

    layers_vgroup_select_dst = None
    '''How to match source and destination layers 

    :type:  enum in [‘ACTIVE’, ‘NAME’, ‘INDEX’], default ‘NAME’ 
    '''

    layers_vgroup_select_src = None
    '''Which layers to transfer, in case of multi-layers types 

    :type:  enum in [‘ACTIVE’, ‘ALL’, ‘BONE_SELECT’, ‘BONE_DEFORM’], default ‘ALL’ 
    '''

    loop_mapping = None
    '''Method used to map source faces’ corners to destination ones 

    :type:  enum in [‘TOPOLOGY’, ‘NEAREST_NORMAL’, ‘NEAREST_POLYNOR’, ‘NEAREST_POLY’, ‘POLYINTERP_NEAREST’, ‘POLYINTERP_LNORPROJ’], default ‘NEAREST_POLYNOR’ 
    '''

    max_distance = None
    '''Maximum allowed distance between source and destination element, for non-topology mappings 

    :type:  float in [0, inf], default 1.0 
    '''

    mix_factor = None
    '''Factor to use when applying data to destination (exact behavior depends on mix mode) 

    :type:  float in [0, 1], default 1.0 
    '''

    mix_mode = None
    '''How to affect destination elements with source values 

    :type:  enum in [‘REPLACE’, ‘ABOVE_THRESHOLD’, ‘BELOW_THRESHOLD’, ‘MIX’, ‘ADD’, ‘SUB’, ‘MUL’], default ‘REPLACE’ 
    '''

    object = None
    '''Object to transfer data from 

    :type:  Object 
    '''

    poly_mapping = None
    '''Method used to map source faces to destination ones 

    :type:  enum in [‘TOPOLOGY’, ‘NEAREST’, ‘NORMAL’, ‘POLYINTERP_PNORPROJ’], default ‘NEAREST’ 
    '''

    ray_radius = None
    '''‘Width’ of rays (especially useful when raycasting against vertices or edges) 

    :type:  float in [0, inf], default 0.0 
    '''

    use_edge_data = None
    '''Enable edge data transfer 

    :type:  boolean, default False 
    '''

    use_loop_data = None
    '''Enable face corner data transfer 

    :type:  boolean, default False 
    '''

    use_max_distance = None
    '''Source elements must be closer than given distance from destination one 

    :type:  boolean, default False 
    '''

    use_object_transform = None
    '''Evaluate source and destination meshes in global space 

    :type:  boolean, default True 
    '''

    use_poly_data = None
    '''Enable face data transfer 

    :type:  boolean, default False 
    '''

    use_vert_data = None
    '''Enable vertex data transfer 

    :type:  boolean, default False 
    '''

    vert_mapping = None
    '''Method used to map source vertices to destination ones 

    :type:  enum in [‘TOPOLOGY’, ‘NEAREST’, ‘EDGE_NEAREST’, ‘EDGEINTERP_NEAREST’, ‘POLY_NEAREST’, ‘POLYINTERP_NEAREST’, ‘POLYINTERP_VNORPROJ’], default ‘NEAREST’ 
    '''

    vertex_group = None
    '''Vertex group name for selecting the affected areas 

    :type:  string, default “”, (never None) 
    '''


class DecimateModifier:
    '''Decimation modifier '''

    angle_limit = None
    '''Only dissolve angles below this (planar only) 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    decimate_type = None
    '''

    :type:  enum in [‘COLLAPSE’, ‘UNSUBDIV’, ‘DISSOLVE’], default ‘COLLAPSE’ 
    '''

    delimit = None
    '''Limit merging geometry 

    :type:  enum set in {‘NORMAL’, ‘MATERIAL’, ‘SEAM’, ‘SHARP’, ‘UV’}, default {‘NORMAL’} 
    '''

    face_count = None
    '''The current number of faces in the decimated mesh 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    invert_vertex_group = None
    '''Invert vertex group influence (collapse only) 

    :type:  boolean, default False 
    '''

    iterations = None
    '''Number of times reduce the geometry (unsubdivide only) 

    :type:  int in [0, 32767], default 0 
    '''

    ratio = None
    '''Ratio of triangles to reduce to (collapse only) 

    :type:  float in [0, 1], default 0.0 
    '''

    symmetry_axis = None
    '''Axis of symmetry 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    use_collapse_triangulate = None
    '''Keep triangulated faces resulting from decimation (collapse only) 

    :type:  boolean, default False 
    '''

    use_dissolve_boundaries = None
    '''Dissolve all vertices inbetween face boundaries (planar only) 

    :type:  boolean, default False 
    '''

    use_symmetry = None
    '''Maintain symmetry on an axis 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name (collapse only) 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_factor = None
    '''Vertex group strength 

    :type:  float in [0, 1000], default 0.0 
    '''


class Depsgraph:
    ids = None
    '''All evaluated datablocks 

    :type:  bpy_prop_collection of ID, (readonly) 
    '''

    mode = None
    '''Evaluation mode 

    :type:  enum in [‘VIEWPORT’, ‘RENDER’], default ‘VIEWPORT’, (readonly) 
    '''

    object_instances = None
    '''All object instances to display or render (WARNING: only use this as an iterator, never as a sequence, and do not keep any references to its items) 

    :type:  bpy_prop_collection of DepsgraphObjectInstance, (readonly) 
    '''

    objects = None
    '''Evaluated objects in the dependency graph 

    :type:  bpy_prop_collection of Object, (readonly) 
    '''

    scene = None
    '''Original scene dependency graph is built for 

    :type:  Scene, (readonly) 
    '''

    scene_eval = None
    '''Original scene dependency graph is built for 

    :type:  Scene, (readonly) 
    '''

    updates = None
    '''Updates to datablocks 

    :type:  bpy_prop_collection of DepsgraphUpdate, (readonly) 
    '''

    view_layer = None
    '''Original view layer dependency graph is built for 

    :type:  ViewLayer, (readonly) 
    '''

    view_layer_eval = None
    '''Original view layer dependency graph is built for 

    :type:  ViewLayer, (readonly) 
    '''

    def debug_relations_graphviz(self, filename):
        '''debug_relations_graphviz 

        :param filename: File Name, File in which to store graphviz debug output 
        :type filename: string, (never None)
        '''
        pass

    def debug_stats_gnuplot(self, filename, output_filename):
        '''debug_stats_gnuplot 

        :param filename: File Name, File in which to store graphviz debug output 
        :type filename: string, (never None)
        :param output_filename: Output File Name, File name where gnuplot script will save the result 
        :type output_filename: string, (never None)
        '''
        pass

    def debug_tag_update(self):
        '''debug_tag_update 

        '''
        pass

    def debug_stats(self):
        '''Report the number of elements in the Dependency Graph 

        :rtype: string, (never None) 
        :return:  result 
        '''
        pass

    def id_eval_get(self, id):
        '''id_eval_get 

        :param id: Original ID to get evaluated complementary part for 
        :type id: ID
        :rtype: ID 
        :return:  Evaluated ID for the given original one 
        '''
        pass

    def id_type_updated(self, id_type):
        '''id_type_updated 

        :param id_type: ID Type 
        :type id_type: enum in ['ACTION', 'ARMATURE', 'BRUSH', 'CAMERA', 'CACHEFILE', 'CURVE', 'FONT', 'GREASEPENCIL', 'COLLECTION', 'IMAGE', 'KEY', 'LIGHT', 'LIBRARY', 'LINESTYLE', 'LATTICE', 'MASK', 'MATERIAL', 'META', 'MESH', 'MOVIECLIP', 'NODETREE', 'OBJECT', 'PAINTCURVE', 'PALETTE', 'PARTICLE', 'LIGHT_PROBE', 'SCENE', 'SOUND', 'SPEAKER', 'TEXT', 'TEXTURE', 'WINDOWMANAGER', 'WORLD', 'WORKSPACE']
        :rtype: boolean 
        :return:  Updated, True if any datablock with this type was added, updated or removed 
        '''
        pass


class DepsgraphObjectInstance:
    '''Extended information about dependency graph object iterator (WARNING: all data here is evaluated one, not original .blend IDs…) '''

    instance_object = None
    '''Evaluated object which is being instanced by this iterator 

    :type:  Object, (readonly) 
    '''

    is_instance = None
    '''Denotes if the object is generated by another object 

    :type:  boolean, default False, (readonly) 
    '''

    matrix_world = None
    '''Generated transform matrix in world space 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)), (readonly) 
    '''

    object = None
    '''Evaluated object the iterator points to 

    :type:  Object, (readonly) 
    '''

    orco = None
    '''Generated coordinates in parent object space 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    parent = None
    '''If the object is an instance, the parent object that generated it 

    :type:  Object, (readonly) 
    '''

    particle_system = None
    '''Evaluated particle system that this object was instanced from 

    :type:  ParticleSystem, (readonly) 
    '''

    persistent_id = None
    '''Persistent identifier for inter-frame matching of objects with motion blur 

    :type:  int array of 16 items in [-inf, inf], default (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (readonly) 
    '''

    random_id = None
    '''Random id for this instance, typically for randomized shading 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    show_particles = None
    '''Particles part of the object should be visible in the render 

    :type:  boolean, default False, (readonly) 
    '''

    show_self = None
    '''The object geometry itself should be visible in the render 

    :type:  boolean, default False, (readonly) 
    '''

    uv = None
    '''UV coordinates in parent object space 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''


class DepsgraphUpdate:
    '''Information about ID that was updated '''

    id = None
    '''Updated datablock 

    :type:  ID, (readonly) 
    '''

    is_updated_geometry = None
    '''Object geometry is updated 

    :type:  boolean, default False, (readonly) 
    '''

    is_updated_transform = None
    '''Object transformation is updated 

    :type:  boolean, default False, (readonly) 
    '''


class DisplaceModifier:
    '''Displacement modifier '''

    direction = None
    '''

    :type:  enum in [‘X’, ‘Y’, ‘Z’, ‘NORMAL’, ‘CUSTOM_NORMAL’, ‘RGB_TO_XYZ’], default ‘X’ 
    '''

    mid_level = None
    '''Material value that gives no displacement 

    :type:  float in [-inf, inf], default 0.0 
    '''

    space = None
    '''

    :type:  enum in [‘LOCAL’, ‘GLOBAL’], default ‘LOCAL’ 
    '''

    strength = None
    '''Amount to displace geometry 

    :type:  float in [-inf, inf], default 0.0 
    '''

    texture = None
    '''

    :type:  Texture 
    '''

    texture_coords = None
    '''

    :type:  enum in [‘LOCAL’, ‘GLOBAL’, ‘OBJECT’, ‘UV’], default ‘LOCAL’ 
    '''

    texture_coords_object = None
    '''Object to set the texture coordinates 

    :type:  Object 
    '''

    uv_layer = None
    '''UV map name 

    :type:  string, default “”, (never None) 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines influence of modifier per point 

    :type:  string, default “”, (never None) 
    '''


class DisplaySafeAreas:
    '''Safe areas used in 3D view and the sequencer '''

    action = None
    '''Safe area for general elements 

    :type:  float array of 2 items in [0, 1], default (0.035, 0.035) 
    '''

    action_center = None
    '''Safe area for general elements in a different aspect ratio 

    :type:  float array of 2 items in [0, 1], default (0.15, 0.05) 
    '''

    title = None
    '''Safe area for text and graphics 

    :type:  float array of 2 items in [0, 1], default (0.1, 0.05) 
    '''

    title_center = None
    '''Safe area for text and graphics in a different aspect ratio 

    :type:  float array of 2 items in [0, 1], default (0.175, 0.05) 
    '''


class DistortedNoiseTexture:
    '''Procedural distorted noise texture '''

    distortion = None
    '''Amount of distortion 

    :type:  float in [0, 10], default 0.0 
    '''

    nabla = None
    '''Size of derivative offset used for calculating normal 

    :type:  float in [0.001, 0.1], default 0.0 
    '''

    noise_basis = None
    '''Noise basis used for turbulence 

    :type:  enum in [‘BLENDER_ORIGINAL’, ‘ORIGINAL_PERLIN’, ‘IMPROVED_PERLIN’, ‘VORONOI_F1’, ‘VORONOI_F2’, ‘VORONOI_F3’, ‘VORONOI_F4’, ‘VORONOI_F2_F1’, ‘VORONOI_CRACKLE’, ‘CELL_NOISE’], default ‘BLENDER_ORIGINAL’ 
    '''

    noise_distortion = None
    '''Noise basis for the distortion 

    :type:  enum in [‘BLENDER_ORIGINAL’, ‘ORIGINAL_PERLIN’, ‘IMPROVED_PERLIN’, ‘VORONOI_F1’, ‘VORONOI_F2’, ‘VORONOI_F3’, ‘VORONOI_F4’, ‘VORONOI_F2_F1’, ‘VORONOI_CRACKLE’, ‘CELL_NOISE’], default ‘BLENDER_ORIGINAL’ 
    '''

    noise_scale = None
    '''Scaling for noise input 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class DomainFluidSettings:
    '''Fluid simulation settings for the domain of a fluid simulation '''

    compressibility = None
    '''Allowed compressibility due to gravitational force for standing fluid (directly affects simulation step size) 

    :type:  float in [0.001, 0.1], default 0.0 
    '''

    end_time = None
    '''Simulation time of the last blender frame (in seconds) 

    :type:  float in [0, inf], default 0.0 
    '''

    filepath = None
    '''Directory (and/or filename prefix) to store baked fluid simulation files in 

    :type:  string, default “”, (never None) 
    '''

    fluid_mesh_vertices = None
    '''Vertices of the fluid mesh generated by simulation 

    :type:  bpy_prop_collection of FluidVertexVelocity, (readonly) 
    '''

    frame_offset = None
    '''Offset when reading baked cache 

    :type:  int in [-inf, inf], default 0 
    '''

    generate_particles = None
    '''Amount of particles to generate (0=off, 1=normal, >1=more) 

    :type:  float in [0, 10], default 0.0 
    '''

    gravity = None
    '''Gravity in X, Y and Z direction 

    :type:  float array of 3 items in [-1000.1, 1000.1], default (0.0, 0.0, 0.0) 
    '''

    grid_levels = None
    '''Number of coarsened grids to use (-1 for automatic) 

    :type:  int in [-1, 4], default 0 
    '''

    memory_estimate = None
    '''Estimated amount of memory needed for baking the domain 

    :type:  string, default “”, (readonly, never None) 
    '''

    partial_slip_factor = None
    '''Amount of mixing between no- and free-slip, 0 is no slip and 1 is free slip 

    :type:  float in [0, 1], default 0.0 
    '''

    preview_resolution = None
    '''Preview resolution in X,Y and Z direction 

    :type:  int in [1, 100], default 0 
    '''

    render_display_mode = None
    '''How to display the mesh for rendering 

    :type:  enum in [‘GEOMETRY’, ‘PREVIEW’, ‘FINAL’], default ‘GEOMETRY’ 
    '''

    resolution = None
    '''Domain resolution in X,Y and Z direction 

    :type:  int in [1, 1024], default 0 
    '''

    simulation_rate = None
    '''Fluid motion rate (0 = stationary, 1 = normal speed) 

    :type:  float in [0, 100], default 0.0 
    '''

    simulation_scale = None
    '''Size of the simulation domain in meters 

    :type:  float in [0.001, 10], default 0.0 
    '''

    slip_type = None
    '''

    :type:  enum in [‘NOSLIP’, ‘PARTIALSLIP’, ‘FREESLIP’], default ‘NOSLIP’ 
    '''

    start_time = None
    '''Simulation time of the first blender frame (in seconds) 

    :type:  float in [0, inf], default 0.0 
    '''

    surface_smooth = None
    '''Amount of surface smoothing (a value of 0 is off, 1 is normal smoothing and more than 1 is extra smoothing) 

    :type:  float in [0, 5], default 0.0 
    '''

    surface_subdivisions = None
    '''Number of isosurface subdivisions (this is necessary for the inclusion of particles into the surface generation - WARNING: can lead to longer computation times !) 

    :type:  int in [0, 5], default 0 
    '''

    threads = None
    '''Override number of threads for the simulation, 0 is automatic 

    :type:  int in [0, 1024], default 0 
    '''

    tracer_particles = None
    '''Number of tracer particles to generate 

    :type:  int in [0, 10000], default 0 
    '''

    use_reverse_frames = None
    '''Reverse fluid frames 

    :type:  boolean, default False 
    '''

    use_speed_vectors = None
    '''Generate speed vectors for vector blur 

    :type:  boolean, default False 
    '''

    use_surface_noobs = None
    '''Removes the air gap between fluid surface and obstacles - WARNING: Can result in a dissolving surface in other areas 

    :type:  boolean, default False 
    '''

    use_time_override = None
    '''Use a custom start and end time (in seconds) instead of the scene’s timeline 

    :type:  boolean, default False 
    '''

    viewport_display_mode = None
    '''How to display the mesh in the viewport 

    :type:  enum in [‘GEOMETRY’, ‘PREVIEW’, ‘FINAL’], default ‘GEOMETRY’ 
    '''

    viscosity_base = None
    '''Viscosity setting: value that is multiplied by 10 to the power of (exponent*-1) 

    :type:  float in [0, 10], default 0.0 
    '''

    viscosity_exponent = None
    '''Negative exponent for the viscosity value (to simplify entering small values e.g. 5*10^-6) 

    :type:  int in [0, 10], default 0 
    '''


class DopeSheet:
    '''Settings for filtering the channels shown in animation editors '''

    filter_collection = None
    '''Collection that included object should be a member of 

    :type:  Collection 
    '''

    filter_fcurve_name = None
    '''F-Curve live filtering string 

    :type:  string, default “”, (never None) 
    '''

    filter_text = None
    '''Live filtering string 

    :type:  string, default “”, (never None) 
    '''

    show_armatures = None
    '''Include visualization of armature related animation data 

    :type:  boolean, default False 
    '''

    show_cache_files = None
    '''Include visualization of cache file related animation data 

    :type:  boolean, default False 
    '''

    show_cameras = None
    '''Include visualization of camera related animation data 

    :type:  boolean, default False 
    '''

    show_curves = None
    '''Include visualization of curve related animation data 

    :type:  boolean, default False 
    '''

    show_datablock_filters = None
    '''Show options for whether channels related to certain types of data are included 

    :type:  boolean, default False 
    '''

    show_expanded_summary = None
    '''Collapse summary when shown, so all other channels get hidden (Dope Sheet editors only) 

    :type:  boolean, default False 
    '''

    show_gpencil = None
    '''Include visualization of Grease Pencil related animation data and frames 

    :type:  boolean, default False 
    '''

    show_gpencil_3d_only = None
    '''Only show Grease Pencil data-blocks used as part of the active scene 

    :type:  boolean, default False 
    '''

    show_hidden = None
    '''Include channels from objects/bone that are not visible 

    :type:  boolean, default False 
    '''

    show_lattices = None
    '''Include visualization of lattice related animation data 

    :type:  boolean, default False 
    '''

    show_lights = None
    '''Include visualization of light related animation data 

    :type:  boolean, default False 
    '''

    show_linestyles = None
    '''Include visualization of Line Style related Animation data 

    :type:  boolean, default False 
    '''

    show_materials = None
    '''Include visualization of material related animation data 

    :type:  boolean, default False 
    '''

    show_meshes = None
    '''Include visualization of mesh related animation data 

    :type:  boolean, default False 
    '''

    show_metaballs = None
    '''Include visualization of metaball related animation data 

    :type:  boolean, default False 
    '''

    show_missing_nla = None
    '''Include animation data-blocks with no NLA data (NLA editor only) 

    :type:  boolean, default False 
    '''

    show_modifiers = None
    '''Include visualization of animation data related to data-blocks linked to modifiers 

    :type:  boolean, default False 
    '''

    show_nodes = None
    '''Include visualization of node related animation data 

    :type:  boolean, default False 
    '''

    show_only_errors = None
    '''Only include F-Curves and drivers that are disabled or have errors 

    :type:  boolean, default False 
    '''

    show_only_selected = None
    '''Only include channels relating to selected objects and data 

    :type:  boolean, default False 
    '''

    show_particles = None
    '''Include visualization of particle related animation data 

    :type:  boolean, default False 
    '''

    show_scenes = None
    '''Include visualization of scene related animation data 

    :type:  boolean, default False 
    '''

    show_shapekeys = None
    '''Include visualization of shape key related animation data 

    :type:  boolean, default False 
    '''

    show_speakers = None
    '''Include visualization of speaker related animation data 

    :type:  boolean, default False 
    '''

    show_summary = None
    '''Display an additional ‘summary’ line (Dope Sheet editors only) 

    :type:  boolean, default False 
    '''

    show_textures = None
    '''Include visualization of texture related animation data 

    :type:  boolean, default False 
    '''

    show_transforms = None
    '''Include visualization of object-level animation data (mostly transforms) 

    :type:  boolean, default False 
    '''

    show_worlds = None
    '''Include visualization of world related animation data 

    :type:  boolean, default False 
    '''

    source = None
    '''ID-Block representing source data, usually ID_SCE (i.e. Scene) 

    :type:  ID, (readonly) 
    '''

    use_datablock_sort = None
    '''Alphabetically sorts data-blocks - mainly objects in the scene (disable to increase viewport speed) 

    :type:  boolean, default False 
    '''

    use_multi_word_filter = None
    '''Perform fuzzy/multi-word matching (WARNING: May be slow) 

    :type:  boolean, default False 
    '''


class Driver:
    '''Driver for the value of a setting based on an external value '''

    expression = None
    '''Expression to use for Scripted Expression 

    :type:  string, default “”, (never None) 
    '''

    is_simple_expression = None
    '''The scripted expression can be evaluated without using the full python interpreter 

    :type:  boolean, default False, (readonly) 
    '''

    is_valid = None
    '''Driver could not be evaluated in past, so should be skipped 

    :type:  boolean, default False 
    '''

    type = None
    '''Driver type 

    :type:  enum in [‘AVERAGE’, ‘SUM’, ‘SCRIPTED’, ‘MIN’, ‘MAX’], default ‘AVERAGE’ 
    '''

    use_self = None
    '''Include a ‘self’ variable in the name-space, so drivers can easily reference the data being modified (object, bone, etc…) 

    :type:  boolean, default False 
    '''

    variables = None
    '''Properties acting as inputs for this driver 

    :type:  ChannelDriverVariables bpy_prop_collection of DriverVariable, (readonly) 
    '''


class DriverTarget:
    '''Source of input values for driver variables '''

    bone_target = None
    '''Name of PoseBone to use as target 

    :type:  string, default “”, (never None) 
    '''

    data_path = None
    '''RNA Path (from ID-block) to property used 

    :type:  string, default “”, (never None) 
    '''

    id = None
    '''ID-block that the specific property used can be found from (id_type property must be set first) 

    :type:  ID 
    '''

    id_type = None
    '''Type of ID-block that can be used 

    :type:  enum in [‘ACTION’, ‘ARMATURE’, ‘BRUSH’, ‘CAMERA’, ‘CACHEFILE’, ‘CURVE’, ‘FONT’, ‘GREASEPENCIL’, ‘COLLECTION’, ‘IMAGE’, ‘KEY’, ‘LIGHT’, ‘LIBRARY’, ‘LINESTYLE’, ‘LATTICE’, ‘MASK’, ‘MATERIAL’, ‘META’, ‘MESH’, ‘MOVIECLIP’, ‘NODETREE’, ‘OBJECT’, ‘PAINTCURVE’, ‘PALETTE’, ‘PARTICLE’, ‘LIGHT_PROBE’, ‘SCENE’, ‘SOUND’, ‘SPEAKER’, ‘TEXT’, ‘TEXTURE’, ‘WINDOWMANAGER’, ‘WORLD’, ‘WORKSPACE’], default ‘OBJECT’ 
    '''

    transform_space = None
    '''Space in which transforms are used 

    :type:  enum in [‘WORLD_SPACE’, ‘TRANSFORM_SPACE’, ‘LOCAL_SPACE’], default ‘WORLD_SPACE’ 
    '''

    transform_type = None
    '''Driver variable type 

    :type:  enum in [‘LOC_X’, ‘LOC_Y’, ‘LOC_Z’, ‘ROT_X’, ‘ROT_Y’, ‘ROT_Z’, ‘SCALE_X’, ‘SCALE_Y’, ‘SCALE_Z’], default ‘LOC_X’ 
    '''


class DriverVariable:
    '''Variable from some source/target for driver relationship '''

    is_name_valid = None
    '''Is this a valid name for a driver variable 

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''Name to use in scripted expressions/functions (no spaces or dots are allowed, and must start with a letter) 

    :type:  string, default “”, (never None) 
    '''

    targets = None
    '''Sources of input data for evaluating this variable 

    :type:  bpy_prop_collection of DriverTarget, (readonly) 
    '''

    type = None
    '''Driver variable type 

    :type:  enum in [‘SINGLE_PROP’, ‘TRANSFORMS’, ‘ROTATION_DIFF’, ‘LOC_DIFF’], default ‘SINGLE_PROP’ 
    '''


class DynamicPaintBrushSettings:
    '''Brush settings '''

    invert_proximity = None
    '''Proximity falloff is applied inside the volume 

    :type:  boolean, default False 
    '''

    paint_alpha = None
    '''Paint alpha 

    :type:  float in [0, 1], default 0.0 
    '''

    paint_color = None
    '''Color of the paint 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    paint_distance = None
    '''Maximum distance from brush to mesh surface to affect paint 

    :type:  float in [0, 500], default 0.0 
    '''

    paint_ramp = None
    '''Color ramp used to define proximity falloff 

    :type:  ColorRamp, (readonly) 
    '''

    paint_source = None
    '''

    :type:  enum in [‘PARTICLE_SYSTEM’, ‘POINT’, ‘DISTANCE’, ‘VOLUME_DISTANCE’, ‘VOLUME’], default ‘VOLUME’ 
    '''

    paint_wetness = None
    '''Paint wetness, visible in wetmap (some effects only affect wet paint) 

    :type:  float in [0, 1], default 0.0 
    '''

    particle_system = None
    '''The particle system to paint with 

    :type:  ParticleSystem 
    '''

    proximity_falloff = None
    '''Proximity falloff type 

    :type:  enum in [‘SMOOTH’, ‘CONSTANT’, ‘RAMP’], default ‘CONSTANT’ 
    '''

    ray_direction = None
    '''Ray direction to use for projection (if brush object is located in that direction it’s painted) 

    :type:  enum in [‘CANVAS’, ‘BRUSH’, ‘Z_AXIS’], default ‘CANVAS’ 
    '''

    smooth_radius = None
    '''Smooth falloff added after solid radius 

    :type:  float in [0, 10], default 0.0 
    '''

    smudge_strength = None
    '''Smudge effect strength 

    :type:  float in [0, 1], default 0.0 
    '''

    solid_radius = None
    '''Radius that will be painted solid 

    :type:  float in [0.01, 10], default 0.0 
    '''

    use_absolute_alpha = None
    '''Only increase alpha value if paint alpha is higher than existing 

    :type:  boolean, default False 
    '''

    use_negative_volume = None
    '''Negate influence inside the volume 

    :type:  boolean, default False 
    '''

    use_paint_erase = None
    '''Erase / remove paint instead of adding it 

    :type:  boolean, default False 
    '''

    use_particle_radius = None
    '''Use radius from particle settings 

    :type:  boolean, default False 
    '''

    use_proximity_project = None
    '''Brush is projected to canvas from defined direction within brush proximity 

    :type:  boolean, default False 
    '''

    use_proximity_ramp_alpha = None
    '''Only read color ramp alpha 

    :type:  boolean, default False 
    '''

    use_smudge = None
    '''Make this brush to smudge existing paint as it moves 

    :type:  boolean, default False 
    '''

    use_velocity_alpha = None
    '''Multiply brush influence by velocity color ramp alpha 

    :type:  boolean, default False 
    '''

    use_velocity_color = None
    '''Replace brush color by velocity color ramp 

    :type:  boolean, default False 
    '''

    use_velocity_depth = None
    '''Multiply brush intersection depth (displace, waves) by velocity ramp alpha 

    :type:  boolean, default False 
    '''

    velocity_max = None
    '''Velocity considered as maximum influence (Blender units per frame) 

    :type:  float in [0.0001, 10], default 0.0 
    '''

    velocity_ramp = None
    '''Color ramp used to define brush velocity effect 

    :type:  ColorRamp, (readonly) 
    '''

    wave_clamp = None
    '''Maximum level of surface intersection used to influence waves (use 0.0 to disable) 

    :type:  float in [0, 50], default 0.0 
    '''

    wave_factor = None
    '''Multiplier for wave influence of this brush 

    :type:  float in [-2, 2], default 0.0 
    '''

    wave_type = None
    '''

    :type:  enum in [‘CHANGE’, ‘DEPTH’, ‘FORCE’, ‘REFLECT’], default ‘DEPTH’ 
    '''


class DynamicPaintCanvasSettings:
    '''Dynamic Paint canvas settings '''

    canvas_surfaces = None
    '''Paint surface list 

    :type:  DynamicPaintSurfaces bpy_prop_collection of DynamicPaintSurface, (readonly) 
    '''


class DynamicPaintModifier:
    '''Dynamic Paint modifier '''

    brush_settings = None
    '''

    :type:  DynamicPaintBrushSettings, (readonly) 
    '''

    canvas_settings = None
    '''

    :type:  DynamicPaintCanvasSettings, (readonly) 
    '''

    ui_type = None
    '''

    :type:  enum in [‘CANVAS’, ‘BRUSH’], default ‘CANVAS’ 
    '''


class DynamicPaintSurface:
    '''A canvas surface layer '''

    brush_collection = None
    '''Only use brush objects from this collection 

    :type:  Collection 
    '''

    brush_influence_scale = None
    '''Adjust influence brush objects have on this surface 

    :type:  float in [0, 1], default 0.0 
    '''

    brush_radius_scale = None
    '''Adjust radius of proximity brushes or particles for this surface 

    :type:  float in [0, 10], default 0.0 
    '''

    color_dry_threshold = None
    '''The wetness level when colors start to shift to the background 

    :type:  float in [0, 1], default 0.0 
    '''

    color_spread_speed = None
    '''How fast colors get mixed within wet paint 

    :type:  float in [0, 2], default 0.0 
    '''

    depth_clamp = None
    '''Maximum level of depth intersection in object space (use 0.0 to disable) 

    :type:  float in [0, 50], default 0.0 
    '''

    displace_factor = None
    '''Strength of displace when applied to the mesh 

    :type:  float in [-50, 50], default 0.0 
    '''

    displace_type = None
    '''

    :type:  enum in [‘DISPLACE’, ‘DEPTH’], default ‘DISPLACE’ 
    '''

    dissolve_speed = None
    '''Approximately in how many frames should dissolve happen 

    :type:  int in [1, 10000], default 0 
    '''

    drip_acceleration = None
    '''How much surface acceleration affects dripping 

    :type:  float in [-200, 200], default 0.0 
    '''

    drip_velocity = None
    '''How much surface velocity affects dripping 

    :type:  float in [-200, 200], default 0.0 
    '''

    dry_speed = None
    '''Approximately in how many frames should drying happen 

    :type:  int in [1, 10000], default 0 
    '''

    effect_ui = None
    '''

    :type:  enum in [‘SPREAD’, ‘DRIP’, ‘SHRINK’], default ‘SPREAD’ 
    '''

    effector_weights = None
    '''

    :type:  EffectorWeights, (readonly) 
    '''

    frame_end = None
    '''Simulation end frame 

    :type:  int in [1, 1048574], default 0 
    '''

    frame_start = None
    '''Simulation start frame 

    :type:  int in [1, 1048574], default 0 
    '''

    frame_substeps = None
    '''Do extra frames between scene frames to ensure smooth motion 

    :type:  int in [0, 20], default 0 
    '''

    image_fileformat = None
    '''

    :type:  enum in [‘PNG’, ‘OPENEXR’], default ‘PNG’ 
    '''

    image_output_path = None
    '''Directory to save the textures 

    :type:  string, default “”, (never None) 
    '''

    image_resolution = None
    '''Output image resolution 

    :type:  int in [16, 4096], default 0 
    '''

    init_color = None
    '''Initial color of the surface 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    init_color_type = None
    '''

    :type:  enum in [‘NONE’, ‘COLOR’, ‘TEXTURE’, ‘VERTEX_COLOR’], default ‘NONE’ 
    '''

    init_layername = None
    '''

    :type:  string, default “”, (never None) 
    '''

    init_texture = None
    '''

    :type:  Texture 
    '''

    is_active = None
    '''Toggle whether surface is processed or ignored 

    :type:  boolean, default False 
    '''

    is_cache_user = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''Surface name 

    :type:  string, default “”, (never None) 
    '''

    output_name_a = None
    '''Name used to save output from this surface 

    :type:  string, default “”, (never None) 
    '''

    output_name_b = None
    '''Name used to save output from this surface 

    :type:  string, default “”, (never None) 
    '''

    point_cache = None
    '''

    :type:  PointCache, (readonly, never None) 
    '''

    preview_id = None
    '''

    :type:  enum in [‘PAINT’, ‘WETMAP’], default ‘PAINT’ 
    '''

    show_preview = None
    '''Display surface preview in 3D-views 

    :type:  boolean, default False 
    '''

    shrink_speed = None
    '''How fast shrink effect moves on the canvas surface 

    :type:  float in [0.001, 10], default 0.0 
    '''

    spread_speed = None
    '''How fast spread effect moves on the canvas surface 

    :type:  float in [0.001, 10], default 0.0 
    '''

    surface_format = None
    '''Surface Format 

    :type:  enum in [‘VERTEX’, ‘IMAGE’], default ‘VERTEX’ 
    '''

    surface_type = None
    '''Surface Type 

    :type:  enum in [‘PAINT’], default ‘PAINT’ 
    '''

    use_antialiasing = None
    '''Use 5x multisampling to smooth paint edges 

    :type:  boolean, default False 
    '''

    use_color_preview = None
    '''Whether this surface has some color preview for 3D view 

    :type:  boolean, default False, (readonly) 
    '''

    use_dissolve = None
    '''Enable to make surface changes disappear over time 

    :type:  boolean, default False 
    '''

    use_dissolve_log = None
    '''Use logarithmic dissolve (makes high values to fade faster than low values) 

    :type:  boolean, default False 
    '''

    use_drip = None
    '''Process drip effect (drip wet paint to gravity direction) 

    :type:  boolean, default False 
    '''

    use_dry_log = None
    '''Use logarithmic drying (makes high values to dry faster than low values) 

    :type:  boolean, default False 
    '''

    use_drying = None
    '''Enable to make surface wetness dry over time 

    :type:  boolean, default False 
    '''

    use_incremental_displace = None
    '''New displace is added cumulatively on top of existing 

    :type:  boolean, default False 
    '''

    use_output_a = None
    '''Save this output layer 

    :type:  boolean, default False 
    '''

    use_output_b = None
    '''Save this output layer 

    :type:  boolean, default False 
    '''

    use_premultiply = None
    '''Multiply color by alpha (recommended for Blender input) 

    :type:  boolean, default False 
    '''

    use_shrink = None
    '''Process shrink effect (shrink paint areas) 

    :type:  boolean, default False 
    '''

    use_spread = None
    '''Process spread effect (spread wet paint around surface) 

    :type:  boolean, default False 
    '''

    use_wave_open_border = None
    '''Pass waves through mesh edges 

    :type:  boolean, default False 
    '''

    uv_layer = None
    '''UV map name 

    :type:  string, default “”, (never None) 
    '''

    wave_damping = None
    '''Wave damping factor 

    :type:  float in [0, 1], default 0.0 
    '''

    wave_smoothness = None
    '''Limit maximum steepness of wave slope between simulation points (use higher values for smoother waves at expense of reduced detail) 

    :type:  float in [0, 10], default 0.0 
    '''

    wave_speed = None
    '''Wave propagation speed 

    :type:  float in [0.01, 5], default 0.0 
    '''

    wave_spring = None
    '''Spring force that pulls water level back to zero 

    :type:  float in [0, 1], default 0.0 
    '''

    wave_timescale = None
    '''Wave time scaling factor 

    :type:  float in [0.01, 3], default 0.0 
    '''

    def output_exists(self, object, index):
        '''Checks if surface output layer of given name exists 

        :param index: Index 
        :type index: int in [0, 1]
        :rtype: boolean 
        '''
        pass


class DynamicPaintSurfaces:
    '''Collection of Dynamic Paint Canvas surfaces '''

    active = None
    '''Active Dynamic Paint surface being displayed 

    :type:  DynamicPaintSurface, (readonly) 
    '''

    active_index = None
    '''

    :type:  int in [0, inf], default 0 
    '''


class EdgeSplitModifier:
    '''Edge splitting modifier to create sharp edges '''

    split_angle = None
    '''Angle above which to split edges 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    use_edge_angle = None
    '''Split edges with high angle between faces 

    :type:  boolean, default False 
    '''

    use_edge_sharp = None
    '''Split edges that are marked as sharp 

    :type:  boolean, default False 
    '''


class EditBone:
    '''Editmode bone in an Armature data-block '''

    bbone_curveinx = None
    '''X-axis handle offset for start of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_curveiny = None
    '''Y-axis handle offset for start of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_curveoutx = None
    '''X-axis handle offset for end of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_curveouty = None
    '''Y-axis handle offset for end of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_custom_handle_end = None
    '''Bone that serves as the end handle for the B-Bone curve 

    :type:  EditBone 
    '''

    bbone_custom_handle_start = None
    '''Bone that serves as the start handle for the B-Bone curve 

    :type:  EditBone 
    '''

    bbone_easein = None
    '''Length of first Bezier Handle (for B-Bones only) 

    :type:  float in [-5, 5], default 1.0 
    '''

    bbone_easeout = None
    '''Length of second Bezier Handle (for B-Bones only) 

    :type:  float in [-5, 5], default 1.0 
    '''

    bbone_handle_type_end = None
    '''Selects how the end handle of the B-Bone is computed 

    :type:  enum in [‘AUTO’, ‘ABSOLUTE’, ‘RELATIVE’, ‘TANGENT’], default ‘AUTO’ 
    '''

    bbone_handle_type_start = None
    '''Selects how the start handle of the B-Bone is computed 

    :type:  enum in [‘AUTO’, ‘ABSOLUTE’, ‘RELATIVE’, ‘TANGENT’], default ‘AUTO’ 
    '''

    bbone_rollin = None
    '''Roll offset for the start of the B-Bone, adjusts twist 

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    bbone_rollout = None
    '''Roll offset for the end of the B-Bone, adjusts twist 

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    bbone_scalein = None
    '''Scale factor for start of the B-Bone, adjusts thickness (for tapering effects) 

    :type:  float in [0, 5], default 1.0 
    '''

    bbone_scaleout = None
    '''Scale factor for end of the B-Bone, adjusts thickness (for tapering effects) 

    :type:  float in [0, 5], default 1.0 
    '''

    bbone_segments = None
    '''Number of subdivisions of bone (for B-Bones only) 

    :type:  int in [1, 32], default 0 
    '''

    bbone_x = None
    '''B-Bone X size 

    :type:  float in [0, 1000], default 0.0 
    '''

    bbone_z = None
    '''B-Bone Z size 

    :type:  float in [0, 1000], default 0.0 
    '''

    envelope_distance = None
    '''Bone deformation distance (for Envelope deform only) 

    :type:  float in [0, 1000], default 0.0 
    '''

    envelope_weight = None
    '''Bone deformation weight (for Envelope deform only) 

    :type:  float in [0, 1000], default 0.0 
    '''

    head = None
    '''Location of head end of the bone 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    head_radius = None
    '''Radius of head of bone (for Envelope deform only) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    hide = None
    '''Bone is not visible when in Edit Mode 

    :type:  boolean, default False 
    '''

    hide_select = None
    '''Bone is able to be selected 

    :type:  boolean, default False 
    '''

    layers = None
    '''Layers bone exists in 

    :type:  boolean array of 32 items, default (False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False) 
    '''

    lock = None
    '''Bone is not able to be transformed when in Edit Mode 

    :type:  boolean, default False 
    '''

    matrix = None
    '''Matrix combining loc/rot of the bone (head position, direction and roll), in armature space (WARNING: does not include/support bone’s length/size) 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    parent = None
    '''Parent edit bone (in same Armature) 

    :type:  EditBone 
    '''

    roll = None
    '''Bone rotation around head-tail axis 

    :type:  float in [-inf, inf], default 0.0 
    '''

    select = None
    '''

    :type:  boolean, default False 
    '''

    select_head = None
    '''

    :type:  boolean, default False 
    '''

    select_tail = None
    '''

    :type:  boolean, default False 
    '''

    show_wire = None
    '''Bone is always drawn as Wireframe regardless of viewport draw mode (useful for non-obstructive custom bone shapes) 

    :type:  boolean, default False 
    '''

    tail = None
    '''Location of tail end of the bone 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    tail_radius = None
    '''Radius of tail of bone (for Envelope deform only) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_connect = None
    '''When bone has a parent, bone’s head is stuck to the parent’s tail 

    :type:  boolean, default False 
    '''

    use_cyclic_offset = None
    '''When bone doesn’t have a parent, it receives cyclic offset effects (Deprecated) 

    :type:  boolean, default False 
    '''

    use_deform = None
    '''Enable Bone to deform geometry 

    :type:  boolean, default False 
    '''

    use_endroll_as_inroll = None
    '''Use Roll Out of parent bone as Roll In of its children 

    :type:  boolean, default False 
    '''

    use_envelope_multiply = None
    '''When deforming bone, multiply effects of Vertex Group weights with Envelope influence 

    :type:  boolean, default False 
    '''

    use_inherit_rotation = None
    '''Bone inherits rotation or scale from parent bone 

    :type:  boolean, default False 
    '''

    use_inherit_scale = None
    '''Bone inherits scaling from parent bone 

    :type:  boolean, default False 
    '''

    use_local_location = None
    '''Bone location is set in local space 

    :type:  boolean, default False 
    '''

    use_relative_parent = None
    '''Object children will use relative transform, like deform 

    :type:  boolean, default False 
    '''

    basename = None
    '''The name of this bone before any ‘.’ character (readonly) '''

    center = None
    '''The midpoint between the head and the tail. (readonly) '''

    children = None
    '''A list of all the bones children. Warning: takes O(len(bones)) time. (readonly) '''

    children_recursive = None
    '''A list of all children from this bone. Warning: takes O(len(bones)**2) time. (readonly) '''

    children_recursive_basename = None
    '''Returns a chain of children with the same base name as this bone. Only direct chains are supported, forks caused by multiple children with matching base names will terminate the function and not be returned. Warning: takes O(len(bones)**2) time. (readonly) '''

    length = None
    '''The distance from head to tail, when set the head is moved to fit the length. '''

    parent_recursive = None
    '''A list of parents, starting with the immediate parent (readonly) '''

    vector = None
    '''The direction this bone is pointing. Utility function for (tail - head) (readonly) '''

    x_axis = None
    '''Vector pointing down the x-axis of the bone. (readonly) '''

    y_axis = None
    '''Vector pointing down the y-axis of the bone. (readonly) '''

    z_axis = None
    '''Vector pointing down the z-axis of the bone. (readonly) '''

    def align_roll(self, vector):
        '''Align the bone to a localspace roll so the Z axis points in the direction of the vector given 

        :param vector: Vector 
        :type vector: float array of 3 items in [-inf, inf]
        '''
        pass

    def align_orientation(self, other):
        '''Align this bone to another by moving its tail and settings its roll the length of the other bone is not used. 

        '''
        pass

    def parent_index(self, parent_test):
        '''The same as ‘bone in other_bone.parent_recursive’ but saved generating a list. 

        '''
        pass

    def transform(self, matrix, scale=True, roll=True):
        '''Transform the the bones head, tail, roll and envelope (when the matrix has a scale component). 

        :param matrix: 3x3 or 4x4 transformation matrix. 
        :type matrix: mathutils.Matrix
        :param scale: Scale the bone envelope by the matrix. 
        :type scale: bool
        :param roll: Correct the roll to point in the same relative direction to the head and tail. 
        :type roll: bool
        '''
        pass

    def translate(self, vec):
        '''Utility function to add vec to the head and tail of this bone 

        '''
        pass


class EffectSequence:
    '''Sequence strip applying an effect on the images created by other strips '''

    alpha_mode = None
    '''Representation of alpha information in the RGBA pixels 

    :type:  enum in [‘STRAIGHT’, ‘PREMUL’], default ‘STRAIGHT’ 
    '''

    color_multiply = None
    '''

    :type:  float in [0, 20], default 1.0 
    '''

    color_saturation = None
    '''Adjust the intensity of the input’s color 

    :type:  float in [0, 20], default 1.0 
    '''

    crop = None
    '''

    :type:  SequenceCrop, (readonly) 
    '''

    proxy = None
    '''

    :type:  SequenceProxy, (readonly) 
    '''

    strobe = None
    '''Only display every nth frame 

    :type:  float in [1, 30], default 0.0 
    '''

    transform = None
    '''

    :type:  SequenceTransform, (readonly) 
    '''

    use_crop = None
    '''Crop image before processing 

    :type:  boolean, default False 
    '''

    use_deinterlace = None
    '''Remove fields from video movies 

    :type:  boolean, default False 
    '''

    use_flip_x = None
    '''Flip on the X axis 

    :type:  boolean, default False 
    '''

    use_flip_y = None
    '''Flip on the Y axis 

    :type:  boolean, default False 
    '''

    use_float = None
    '''Convert input to float data 

    :type:  boolean, default False 
    '''

    use_proxy = None
    '''Use a preview proxy and/or timecode index for this strip 

    :type:  boolean, default False 
    '''

    use_reverse_frames = None
    '''Reverse frame order 

    :type:  boolean, default False 
    '''

    use_translation = None
    '''Translate image before processing 

    :type:  boolean, default False 
    '''


class EffectorWeights:
    '''Effector weights for physics simulation '''

    all = None
    '''All effector’s weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    apply_to_hair_growing = None
    '''Use force fields when growing hair 

    :type:  boolean, default False 
    '''

    boid = None
    '''Boid effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    charge = None
    '''Charge effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    collection = None
    '''Limit effectors to this collection 

    :type:  Collection 
    '''

    curve_guide = None
    '''Curve guide effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    drag = None
    '''Drag effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    force = None
    '''Force effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    gravity = None
    '''Global gravity weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    harmonic = None
    '''Harmonic effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    lennardjones = None
    '''Lennard-Jones effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    magnetic = None
    '''Magnetic effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    smokeflow = None
    '''Smoke Flow effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    texture = None
    '''Texture effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    turbulence = None
    '''Turbulence effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    vortex = None
    '''Vortex effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''

    wind = None
    '''Wind effector weight 

    :type:  float in [-200, 200], default 0.0 
    '''


class EnumProperty:
    '''RNA enumeration property definition, to choose from a number of predefined options '''

    default = None
    '''Default value for this enum 

    :type:  enum in [‘DUMMY’], default ‘DUMMY’, (readonly) 
    '''

    default_flag = None
    '''Default value for this enum 

    :type:  enum set in {‘DUMMY’}, default {}, (readonly) 
    '''

    enum_items = None
    '''Possible values for the property 

    :type:  bpy_prop_collection of EnumPropertyItem, (readonly) 
    '''

    enum_items_static = None
    '''Possible values for the property (never calls optional dynamic generation of those) 

    :type:  bpy_prop_collection of EnumPropertyItem, (readonly) 
    '''


class EnumPropertyItem:
    '''Definition of a choice in an RNA enum property '''

    description = None
    '''Description of the item’s purpose 

    :type:  string, default “”, (readonly, never None) 
    '''

    icon = None
    '''Icon of the item 

    :type:  enum in [‘NONE’, ‘QUESTION’, ‘ERROR’, ‘CANCEL’, ‘TRIA_RIGHT’, ‘TRIA_DOWN’, ‘TRIA_LEFT’, ‘TRIA_UP’, ‘ARROW_LEFTRIGHT’, ‘PLUS’, ‘DISCLOSURE_TRI_RIGHT’, ‘DISCLOSURE_TRI_DOWN’, ‘RADIOBUT_OFF’, ‘RADIOBUT_ON’, ‘MENU_PANEL’, ‘BLENDER’, ‘GRIP’, ‘DOT’, ‘COLLAPSEMENU’, ‘X’, ‘DUPLICATE’, ‘TRASH’, ‘NODE’, ‘NODE_SEL’, ‘WINDOW’, ‘WORKSPACE’, ‘RIGHTARROW_THIN’, ‘BORDERMOVE’, ‘VIEWZOOM’, ‘ADD’, ‘REMOVE’, ‘PANEL_CLOSE’, ‘COPY_ID’, ‘EYEDROPPER’, ‘AUTO’, ‘CHECKBOX_DEHLT’, ‘CHECKBOX_HLT’, ‘UNLOCKED’, ‘LOCKED’, ‘UNPINNED’, ‘PINNED’, ‘SCREEN_BACK’, ‘RIGHTARROW’, ‘DOWNARROW_HLT’, ‘PLUGIN’, ‘HELP’, ‘GHOST_ENABLED’, ‘COLOR’, ‘UNLINKED’, ‘LINKED’, ‘HAND’, ‘ZOOM_ALL’, ‘ZOOM_SELECTED’, ‘ZOOM_PREVIOUS’, ‘ZOOM_IN’, ‘ZOOM_OUT’, ‘DRIVER_DISTANCE’, ‘DRIVER_ROTATIONAL_DIFFERENCE’, ‘DRIVER_TRANSFORM’, ‘FREEZE’, ‘STYLUS_PRESSURE’, ‘GHOST_DISABLED’, ‘FILE_NEW’, ‘FILE_TICK’, ‘QUIT’, ‘URL’, ‘RECOVER_LAST’, ‘THREE_DOTS’, ‘FULLSCREEN_ENTER’, ‘FULLSCREEN_EXIT’, ‘LIGHT’, ‘MATERIAL’, ‘TEXTURE’, ‘ANIM’, ‘WORLD’, ‘SCENE’, ‘OUTPUT’, ‘SCRIPT’, ‘PARTICLES’, ‘PHYSICS’, ‘SPEAKER’, ‘TOOL_SETTINGS’, ‘SHADERFX’, ‘MODIFIER’, ‘BLANK1’, ‘FAKE_USER_OFF’, ‘FAKE_USER_ON’, ‘VIEW3D’, ‘GRAPH’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILEBROWSER’, ‘IMAGE’, ‘INFO’, ‘SEQUENCE’, ‘TEXT’, ‘SOUND’, ‘ACTION’, ‘NLA’, ‘PREFERENCES’, ‘TIME’, ‘NODETREE’, ‘CONSOLE’, ‘TRACKER’, ‘ASSET_MANAGER’, ‘NODE_COMPOSITING’, ‘NODE_TEXTURE’, ‘NODE_MATERIAL’, ‘UV’, ‘OBJECT_DATAMODE’, ‘EDITMODE_HLT’, ‘UV_DATA’, ‘VPAINT_HLT’, ‘TPAINT_HLT’, ‘WPAINT_HLT’, ‘SCULPTMODE_HLT’, ‘POSE_HLT’, ‘PARTICLEMODE’, ‘TRACKING’, ‘TRACKING_BACKWARDS’, ‘TRACKING_FORWARDS’, ‘TRACKING_BACKWARDS_SINGLE’, ‘TRACKING_FORWARDS_SINGLE’, ‘TRACKING_CLEAR_BACKWARDS’, ‘TRACKING_CLEAR_FORWARDS’, ‘TRACKING_REFINE_BACKWARDS’, ‘TRACKING_REFINE_FORWARDS’, ‘SCENE_DATA’, ‘RENDERLAYERS’, ‘WORLD_DATA’, ‘OBJECT_DATA’, ‘MESH_DATA’, ‘CURVE_DATA’, ‘META_DATA’, ‘LATTICE_DATA’, ‘LIGHT_DATA’, ‘MATERIAL_DATA’, ‘TEXTURE_DATA’, ‘ANIM_DATA’, ‘CAMERA_DATA’, ‘PARTICLE_DATA’, ‘LIBRARY_DATA_DIRECT’, ‘GROUP’, ‘ARMATURE_DATA’, ‘COMMUNITY’, ‘BONE_DATA’, ‘CONSTRAINT’, ‘SHAPEKEY_DATA’, ‘CONSTRAINT_BONE’, ‘CAMERA_STEREO’, ‘PACKAGE’, ‘UGLYPACKAGE’, ‘EXPERIMENTAL’, ‘BRUSH_DATA’, ‘IMAGE_DATA’, ‘FILE’, ‘FCURVE’, ‘FONT_DATA’, ‘RENDER_RESULT’, ‘SURFACE_DATA’, ‘EMPTY_DATA’, ‘PRESET’, ‘RENDER_ANIMATION’, ‘RENDER_STILL’, ‘LIBRARY_DATA_BROKEN’, ‘BOIDS’, ‘STRANDS’, ‘LIBRARY_DATA_INDIRECT’, ‘GREASEPENCIL’, ‘LINE_DATA’, ‘LIBRARY_DATA_OVERRIDE’, ‘GROUP_BONE’, ‘GROUP_VERTEX’, ‘GROUP_VCOL’, ‘GROUP_UVS’, ‘FACE_MAPS’, ‘RNA’, ‘RNA_ADD’, ‘MOUSE_LMB’, ‘MOUSE_MMB’, ‘MOUSE_RMB’, ‘MOUSE_MOVE’, ‘MOUSE_LMB_DRAG’, ‘MOUSE_MMB_DRAG’, ‘MOUSE_RMB_DRAG’, ‘PRESET_NEW’, ‘DECORATE’, ‘DECORATE_KEYFRAME’, ‘DECORATE_ANIMATE’, ‘DECORATE_DRIVER’, ‘DECORATE_LINKED’, ‘DECORATE_LIBRARY_OVERRIDE’, ‘DECORATE_UNLOCKED’, ‘DECORATE_LOCKED’, ‘DECORATE_OVERRIDE’, ‘TRACKER_DATA’, ‘HEART’, ‘ORPHAN_DATA’, ‘USER’, ‘SYSTEM’, ‘SETTINGS’, ‘OUTLINER_OB_EMPTY’, ‘OUTLINER_OB_MESH’, ‘OUTLINER_OB_CURVE’, ‘OUTLINER_OB_LATTICE’, ‘OUTLINER_OB_META’, ‘OUTLINER_OB_LIGHT’, ‘OUTLINER_OB_CAMERA’, ‘OUTLINER_OB_ARMATURE’, ‘OUTLINER_OB_FONT’, ‘OUTLINER_OB_SURFACE’, ‘OUTLINER_OB_SPEAKER’, ‘OUTLINER_OB_FORCE_FIELD’, ‘OUTLINER_OB_GROUP_INSTANCE’, ‘OUTLINER_OB_GREASEPENCIL’, ‘OUTLINER_OB_LIGHTPROBE’, ‘OUTLINER_OB_IMAGE’, ‘RESTRICT_COLOR_OFF’, ‘RESTRICT_COLOR_ON’, ‘HIDE_ON’, ‘HIDE_OFF’, ‘RESTRICT_SELECT_ON’, ‘RESTRICT_SELECT_OFF’, ‘RESTRICT_RENDER_ON’, ‘RESTRICT_RENDER_OFF’, ‘OUTLINER_DATA_EMPTY’, ‘OUTLINER_DATA_MESH’, ‘OUTLINER_DATA_CURVE’, ‘OUTLINER_DATA_LATTICE’, ‘OUTLINER_DATA_META’, ‘OUTLINER_DATA_LIGHT’, ‘OUTLINER_DATA_CAMERA’, ‘OUTLINER_DATA_ARMATURE’, ‘OUTLINER_DATA_FONT’, ‘OUTLINER_DATA_SURFACE’, ‘OUTLINER_DATA_SPEAKER’, ‘OUTLINER_DATA_GREASEPENCIL’, ‘GP_SELECT_POINTS’, ‘GP_SELECT_STROKES’, ‘GP_MULTIFRAME_EDITING’, ‘GP_ONLY_SELECTED’, ‘GP_SELECT_BETWEEN_STROKES’, ‘MODIFIER_OFF’, ‘MODIFIER_ON’, ‘ONIONSKIN_OFF’, ‘ONIONSKIN_ON’, ‘RESTRICT_VIEW_ON’, ‘RESTRICT_VIEW_OFF’, ‘MESH_PLANE’, ‘MESH_CUBE’, ‘MESH_CIRCLE’, ‘MESH_UVSPHERE’, ‘MESH_ICOSPHERE’, ‘MESH_GRID’, ‘MESH_MONKEY’, ‘MESH_CYLINDER’, ‘MESH_TORUS’, ‘MESH_CONE’, ‘MESH_CAPSULE’, ‘EMPTY_SINGLE_ARROW’, ‘LIGHT_POINT’, ‘LIGHT_SUN’, ‘LIGHT_SPOT’, ‘LIGHT_HEMI’, ‘LIGHT_AREA’, ‘CUBE’, ‘SPHERE’, ‘CONE’, ‘META_PLANE’, ‘META_CUBE’, ‘META_BALL’, ‘META_ELLIPSOID’, ‘META_CAPSULE’, ‘SURFACE_NCURVE’, ‘SURFACE_NCIRCLE’, ‘SURFACE_NSURFACE’, ‘SURFACE_NCYLINDER’, ‘SURFACE_NSPHERE’, ‘SURFACE_NTORUS’, ‘EMPTY_AXIS’, ‘STROKE’, ‘EMPTY_ARROWS’, ‘CURVE_BEZCURVE’, ‘CURVE_BEZCIRCLE’, ‘CURVE_NCURVE’, ‘CURVE_NCIRCLE’, ‘CURVE_PATH’, ‘LIGHTPROBE_CUBEMAP’, ‘LIGHTPROBE_PLANAR’, ‘LIGHTPROBE_GRID’, ‘COLOR_RED’, ‘COLOR_GREEN’, ‘COLOR_BLUE’, ‘TRIA_RIGHT_BAR’, ‘TRIA_DOWN_BAR’, ‘TRIA_LEFT_BAR’, ‘TRIA_UP_BAR’, ‘FORCE_FORCE’, ‘FORCE_WIND’, ‘FORCE_VORTEX’, ‘FORCE_MAGNETIC’, ‘FORCE_HARMONIC’, ‘FORCE_CHARGE’, ‘FORCE_LENNARDJONES’, ‘FORCE_TEXTURE’, ‘FORCE_CURVE’, ‘FORCE_BOID’, ‘FORCE_TURBULENCE’, ‘FORCE_DRAG’, ‘FORCE_SMOKEFLOW’, ‘IMAGE_PLANE’, ‘IMAGE_BACKGROUND’, ‘IMAGE_REFERENCE’, ‘NODE_INSERT_ON’, ‘NODE_INSERT_OFF’, ‘NODE_TOP’, ‘NODE_SIDE’, ‘NODE_CORNER’, ‘ALIGN_LEFT’, ‘ALIGN_CENTER’, ‘ALIGN_RIGHT’, ‘ALIGN_JUSTIFY’, ‘ALIGN_FLUSH’, ‘ALIGN_TOP’, ‘ALIGN_MIDDLE’, ‘ALIGN_BOTTOM’, ‘BOLD’, ‘ITALIC’, ‘UNDERLINE’, ‘SMALL_CAPS’, ‘MODIFIER_DATA’, ‘MOD_WAVE’, ‘MOD_BUILD’, ‘MOD_DECIM’, ‘MOD_MIRROR’, ‘MOD_SOFT’, ‘MOD_SUBSURF’, ‘HOOK’, ‘MOD_PHYSICS’, ‘MOD_PARTICLES’, ‘MOD_BOOLEAN’, ‘MOD_EDGESPLIT’, ‘MOD_ARRAY’, ‘MOD_UVPROJECT’, ‘MOD_DISPLACE’, ‘MOD_CURVE’, ‘MOD_LATTICE’, ‘MOD_TINT’, ‘MOD_ARMATURE’, ‘MOD_SHRINKWRAP’, ‘MOD_CAST’, ‘MOD_MESHDEFORM’, ‘MOD_BEVEL’, ‘MOD_SMOOTH’, ‘MOD_SIMPLEDEFORM’, ‘MOD_MASK’, ‘MOD_CLOTH’, ‘MOD_EXPLODE’, ‘MOD_FLUIDSIM’, ‘MOD_MULTIRES’, ‘MOD_SMOKE’, ‘MOD_SOLIDIFY’, ‘MOD_SCREW’, ‘MOD_VERTEX_WEIGHT’, ‘MOD_DYNAMICPAINT’, ‘MOD_REMESH’, ‘MOD_OCEAN’, ‘MOD_WARP’, ‘MOD_SKIN’, ‘MOD_TRIANGULATE’, ‘MOD_WIREFRAME’, ‘MOD_DATA_TRANSFER’, ‘MOD_NORMALEDIT’, ‘MOD_PARTICLE_INSTANCE’, ‘MOD_HUE_SATURATION’, ‘MOD_NOISE’, ‘MOD_OFFSET’, ‘MOD_SIMPLIFY’, ‘MOD_THICKNESS’, ‘MOD_INSTANCE’, ‘MOD_TIME’, ‘MOD_OPACITY’, ‘REC’, ‘PLAY’, ‘FF’, ‘REW’, ‘PAUSE’, ‘PREV_KEYFRAME’, ‘NEXT_KEYFRAME’, ‘PLAY_SOUND’, ‘PLAY_REVERSE’, ‘PREVIEW_RANGE’, ‘ACTION_TWEAK’, ‘PMARKER_ACT’, ‘PMARKER_SEL’, ‘PMARKER’, ‘MARKER_HLT’, ‘MARKER’, ‘KEYFRAME_HLT’, ‘KEYFRAME’, ‘KEYINGSET’, ‘KEY_DEHLT’, ‘KEY_HLT’, ‘MUTE_IPO_OFF’, ‘MUTE_IPO_ON’, ‘VISIBLE_IPO_OFF’, ‘VISIBLE_IPO_ON’, ‘DRIVER’, ‘SOLO_OFF’, ‘SOLO_ON’, ‘FRAME_PREV’, ‘FRAME_NEXT’, ‘NLA_PUSHDOWN’, ‘IPO_CONSTANT’, ‘IPO_LINEAR’, ‘IPO_BEZIER’, ‘IPO_SINE’, ‘IPO_QUAD’, ‘IPO_CUBIC’, ‘IPO_QUART’, ‘IPO_QUINT’, ‘IPO_EXPO’, ‘IPO_CIRC’, ‘IPO_BOUNCE’, ‘IPO_ELASTIC’, ‘IPO_BACK’, ‘IPO_EASE_IN’, ‘IPO_EASE_OUT’, ‘IPO_EASE_IN_OUT’, ‘NORMALIZE_FCURVES’, ‘VERTEXSEL’, ‘EDGESEL’, ‘FACESEL’, ‘PIVOT_BOUNDBOX’, ‘PIVOT_CURSOR’, ‘PIVOT_INDIVIDUAL’, ‘PIVOT_MEDIAN’, ‘PIVOT_ACTIVE’, ‘CENTER_ONLY’, ‘ROOTCURVE’, ‘SMOOTHCURVE’, ‘SPHERECURVE’, ‘INVERSESQUARECURVE’, ‘SHARPCURVE’, ‘LINCURVE’, ‘NOCURVE’, ‘RNDCURVE’, ‘PROP_OFF’, ‘PROP_ON’, ‘PROP_CON’, ‘PROP_PROJECTED’, ‘PARTICLE_POINT’, ‘PARTICLE_TIP’, ‘PARTICLE_PATH’, ‘SNAP_OFF’, ‘SNAP_ON’, ‘SNAP_NORMAL’, ‘SNAP_GRID’, ‘SNAP_VERTEX’, ‘SNAP_EDGE’, ‘SNAP_FACE’, ‘SNAP_VOLUME’, ‘SNAP_INCREMENT’, ‘STICKY_UVS_LOC’, ‘STICKY_UVS_DISABLE’, ‘STICKY_UVS_VERT’, ‘CLIPUV_DEHLT’, ‘CLIPUV_HLT’, ‘SNAP_PEEL_OBJECT’, ‘GRID’, ‘OBJECT_ORIGIN’, ‘ORIENTATION_GLOBAL’, ‘ORIENTATION_GIMBAL’, ‘ORIENTATION_LOCAL’, ‘ORIENTATION_NORMAL’, ‘ORIENTATION_VIEW’, ‘COPYDOWN’, ‘PASTEDOWN’, ‘PASTEFLIPUP’, ‘PASTEFLIPDOWN’, ‘VIS_SEL_11’, ‘VIS_SEL_10’, ‘VIS_SEL_01’, ‘VIS_SEL_00’, ‘AUTOMERGE_ON’, ‘AUTOMERGE_OFF’, ‘UV_VERTEXSEL’, ‘UV_EDGESEL’, ‘UV_FACESEL’, ‘UV_ISLANDSEL’, ‘UV_SYNC_SELECT’, ‘ORIENTATION_CURSOR’, ‘NORMALS_VERTEX’, ‘NORMALS_FACE’, ‘NORMALS_VERTEX_FACE’, ‘SHADING_BBOX’, ‘SHADING_WIRE’, ‘SHADING_SOLID’, ‘SHADING_RENDERED’, ‘SHADING_TEXTURE’, ‘OVERLAY’, ‘XRAY’, ‘LOCKVIEW_OFF’, ‘LOCKVIEW_ON’, ‘AXIS_SIDE’, ‘AXIS_FRONT’, ‘AXIS_TOP’, ‘NDOF_DOM’, ‘NDOF_TURN’, ‘NDOF_FLY’, ‘NDOF_TRANS’, ‘LAYER_USED’, ‘LAYER_ACTIVE’, ‘SORTALPHA’, ‘SORTBYEXT’, ‘SORTTIME’, ‘SORTSIZE’, ‘SHORTDISPLAY’, ‘LONGDISPLAY’, ‘IMGDISPLAY’, ‘BOOKMARKS’, ‘FONTPREVIEW’, ‘FILTER’, ‘NEWFOLDER’, ‘FILE_PARENT’, ‘FILE_REFRESH’, ‘FILE_FOLDER’, ‘FILE_BLANK’, ‘FILE_BLEND’, ‘FILE_IMAGE’, ‘FILE_MOVIE’, ‘FILE_SCRIPT’, ‘FILE_SOUND’, ‘FILE_FONT’, ‘FILE_TEXT’, ‘SORT_DESC’, ‘SORT_ASC’, ‘LINK_BLEND’, ‘APPEND_BLEND’, ‘IMPORT’, ‘EXPORT’, ‘LOOP_BACK’, ‘LOOP_FORWARDS’, ‘BACK’, ‘FORWARD’, ‘FILE_VOLUME’, ‘ALEMBIC’, ‘VOLUME’, ‘FILE_HIDDEN’, ‘FILE_BACKUP’, ‘DISK_DRIVE’, ‘MATPLANE’, ‘MATSPHERE’, ‘MATCUBE’, ‘MONKEY’, ‘HAIR’, ‘ALIASED’, ‘ANTIALIASED’, ‘MAT_SPHERE_SKY’, ‘MATSHADERBALL’, ‘MATCLOTH’, ‘MATFLUID’, ‘WORDWRAP_OFF’, ‘WORDWRAP_ON’, ‘SYNTAX_OFF’, ‘SYNTAX_ON’, ‘LINENUMBERS_OFF’, ‘LINENUMBERS_ON’, ‘SCRIPTPLUGINS’, ‘SEQ_SEQUENCER’, ‘SEQ_PREVIEW’, ‘SEQ_LUMA_WAVEFORM’, ‘SEQ_CHROMA_SCOPE’, ‘SEQ_HISTOGRAM’, ‘SEQ_SPLITVIEW’, ‘IMAGE_RGB’, ‘IMAGE_RGB_ALPHA’, ‘IMAGE_ALPHA’, ‘IMAGE_ZDEPTH’, ‘VIEW_PERSPECTIVE’, ‘VIEW_ORTHO’, ‘VIEW_CAMERA’, ‘VIEW_PAN’, ‘VIEW_ZOOM’, ‘BRUSH_BLOB’, ‘BRUSH_BLUR’, ‘BRUSH_CLAY’, ‘BRUSH_CLAY_STRIPS’, ‘BRUSH_CLONE’, ‘BRUSH_CREASE’, ‘BRUSH_FILL’, ‘BRUSH_FLATTEN’, ‘BRUSH_GRAB’, ‘BRUSH_INFLATE’, ‘BRUSH_LAYER’, ‘BRUSH_MASK’, ‘BRUSH_MIX’, ‘BRUSH_NUDGE’, ‘BRUSH_PINCH’, ‘BRUSH_SCRAPE’, ‘BRUSH_SCULPT_DRAW’, ‘BRUSH_SMEAR’, ‘BRUSH_SMOOTH’, ‘BRUSH_SNAKE_HOOK’, ‘BRUSH_SOFTEN’, ‘BRUSH_TEXDRAW’, ‘BRUSH_TEXFILL’, ‘BRUSH_TEXMASK’, ‘BRUSH_THUMB’, ‘BRUSH_ROTATE’, ‘GPBRUSH_SMOOTH’, ‘GPBRUSH_THICKNESS’, ‘GPBRUSH_STRENGTH’, ‘GPBRUSH_GRAB’, ‘GPBRUSH_PUSH’, ‘GPBRUSH_TWIST’, ‘GPBRUSH_PINCH’, ‘GPBRUSH_RANDOMIZE’, ‘GPBRUSH_CLONE’, ‘GPBRUSH_WEIGHT’, ‘GPBRUSH_PENCIL’, ‘GPBRUSH_PEN’, ‘GPBRUSH_INK’, ‘GPBRUSH_INKNOISE’, ‘GPBRUSH_BLOCK’, ‘GPBRUSH_MARKER’, ‘GPBRUSH_FILL’, ‘GPBRUSH_ERASE_SOFT’, ‘GPBRUSH_ERASE_HARD’, ‘GPBRUSH_ERASE_STROKE’, ‘SMALL_TRI_RIGHT_VEC’, ‘KEYTYPE_KEYFRAME_VEC’, ‘KEYTYPE_BREAKDOWN_VEC’, ‘KEYTYPE_EXTREME_VEC’, ‘KEYTYPE_JITTER_VEC’, ‘KEYTYPE_MOVING_HOLD_VEC’, ‘HANDLETYPE_FREE_VEC’, ‘HANDLETYPE_ALIGNED_VEC’, ‘HANDLETYPE_VECTOR_VEC’, ‘HANDLETYPE_AUTO_VEC’, ‘HANDLETYPE_AUTO_CLAMP_VEC’, ‘COLORSET_01_VEC’, ‘COLORSET_02_VEC’, ‘COLORSET_03_VEC’, ‘COLORSET_04_VEC’, ‘COLORSET_05_VEC’, ‘COLORSET_06_VEC’, ‘COLORSET_07_VEC’, ‘COLORSET_08_VEC’, ‘COLORSET_09_VEC’, ‘COLORSET_10_VEC’, ‘COLORSET_11_VEC’, ‘COLORSET_12_VEC’, ‘COLORSET_13_VEC’, ‘COLORSET_14_VEC’, ‘COLORSET_15_VEC’, ‘COLORSET_16_VEC’, ‘COLORSET_17_VEC’, ‘COLORSET_18_VEC’, ‘COLORSET_19_VEC’, ‘COLORSET_20_VEC’, ‘EVENT_A’, ‘EVENT_B’, ‘EVENT_C’, ‘EVENT_D’, ‘EVENT_E’, ‘EVENT_F’, ‘EVENT_G’, ‘EVENT_H’, ‘EVENT_I’, ‘EVENT_J’, ‘EVENT_K’, ‘EVENT_L’, ‘EVENT_M’, ‘EVENT_N’, ‘EVENT_O’, ‘EVENT_P’, ‘EVENT_Q’, ‘EVENT_R’, ‘EVENT_S’, ‘EVENT_T’, ‘EVENT_U’, ‘EVENT_V’, ‘EVENT_W’, ‘EVENT_X’, ‘EVENT_Y’, ‘EVENT_Z’, ‘EVENT_SHIFT’, ‘EVENT_CTRL’, ‘EVENT_ALT’, ‘EVENT_OS’, ‘EVENT_F1’, ‘EVENT_F2’, ‘EVENT_F3’, ‘EVENT_F4’, ‘EVENT_F5’, ‘EVENT_F6’, ‘EVENT_F7’, ‘EVENT_F8’, ‘EVENT_F9’, ‘EVENT_F10’, ‘EVENT_F11’, ‘EVENT_F12’, ‘EVENT_ESC’, ‘EVENT_TAB’, ‘EVENT_PAGEUP’, ‘EVENT_PAGEDOWN’, ‘EVENT_RETURN’], default ‘NONE’, (readonly) 
    '''

    identifier = None
    '''Unique name used in the code and scripting 

    :type:  string, default “”, (readonly, never None) 
    '''

    name = None
    '''Human readable name 

    :type:  string, default “”, (readonly, never None) 
    '''

    value = None
    '''Value of the item 

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class Event:
    '''Window Manager Event '''

    alt = None
    '''True when the Alt/Option key is held 

    :type:  boolean, default False, (readonly) 
    '''

    ascii = None
    '''Single ASCII character for this event 

    :type:  string, default “”, (readonly, never None) 
    '''

    ctrl = None
    '''True when the Ctrl key is held 

    :type:  boolean, default False, (readonly) 
    '''

    is_mouse_absolute = None
    '''The last motion event was an absolute input 

    :type:  boolean, default False, (readonly) 
    '''

    is_tablet = None
    '''The event has tablet data 

    :type:  boolean, default False, (readonly) 
    '''

    mouse_prev_x = None
    '''The window relative horizontal location of the mouse 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    mouse_prev_y = None
    '''The window relative vertical location of the mouse 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    mouse_region_x = None
    '''The region relative horizontal location of the mouse 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    mouse_region_y = None
    '''The region relative vertical location of the mouse 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    mouse_x = None
    '''The window relative horizontal location of the mouse 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    mouse_y = None
    '''The window relative vertical location of the mouse 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    oskey = None
    '''True when the Cmd key is held 

    :type:  boolean, default False, (readonly) 
    '''

    pressure = None
    '''The pressure of the tablet or 1.0 if no tablet present 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    shift = None
    '''True when the Shift key is held 

    :type:  boolean, default False, (readonly) 
    '''

    tilt = None
    '''The pressure of the tablet or zeroes if no tablet present 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''

    type = None
    '''

    :type:  enum in [‘NONE’, ‘LEFTMOUSE’, ‘MIDDLEMOUSE’, ‘RIGHTMOUSE’, ‘BUTTON4MOUSE’, ‘BUTTON5MOUSE’, ‘BUTTON6MOUSE’, ‘BUTTON7MOUSE’, ‘PEN’, ‘ERASER’, ‘MOUSEMOVE’, ‘INBETWEEN_MOUSEMOVE’, ‘TRACKPADPAN’, ‘TRACKPADZOOM’, ‘MOUSEROTATE’, ‘WHEELUPMOUSE’, ‘WHEELDOWNMOUSE’, ‘WHEELINMOUSE’, ‘WHEELOUTMOUSE’, ‘EVT_TWEAK_L’, ‘EVT_TWEAK_M’, ‘EVT_TWEAK_R’, ‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’, ‘G’, ‘H’, ‘I’, ‘J’, ‘K’, ‘L’, ‘M’, ‘N’, ‘O’, ‘P’, ‘Q’, ‘R’, ‘S’, ‘T’, ‘U’, ‘V’, ‘W’, ‘X’, ‘Y’, ‘Z’, ‘ZERO’, ‘ONE’, ‘TWO’, ‘THREE’, ‘FOUR’, ‘FIVE’, ‘SIX’, ‘SEVEN’, ‘EIGHT’, ‘NINE’, ‘LEFT_CTRL’, ‘LEFT_ALT’, ‘LEFT_SHIFT’, ‘RIGHT_ALT’, ‘RIGHT_CTRL’, ‘RIGHT_SHIFT’, ‘OSKEY’, ‘GRLESS’, ‘ESC’, ‘TAB’, ‘RET’, ‘SPACE’, ‘LINE_FEED’, ‘BACK_SPACE’, ‘DEL’, ‘SEMI_COLON’, ‘PERIOD’, ‘COMMA’, ‘QUOTE’, ‘ACCENT_GRAVE’, ‘MINUS’, ‘PLUS’, ‘SLASH’, ‘BACK_SLASH’, ‘EQUAL’, ‘LEFT_BRACKET’, ‘RIGHT_BRACKET’, ‘LEFT_ARROW’, ‘DOWN_ARROW’, ‘RIGHT_ARROW’, ‘UP_ARROW’, ‘NUMPAD_2’, ‘NUMPAD_4’, ‘NUMPAD_6’, ‘NUMPAD_8’, ‘NUMPAD_1’, ‘NUMPAD_3’, ‘NUMPAD_5’, ‘NUMPAD_7’, ‘NUMPAD_9’, ‘NUMPAD_PERIOD’, ‘NUMPAD_SLASH’, ‘NUMPAD_ASTERIX’, ‘NUMPAD_0’, ‘NUMPAD_MINUS’, ‘NUMPAD_ENTER’, ‘NUMPAD_PLUS’, ‘F1’, ‘F2’, ‘F3’, ‘F4’, ‘F5’, ‘F6’, ‘F7’, ‘F8’, ‘F9’, ‘F10’, ‘F11’, ‘F12’, ‘F13’, ‘F14’, ‘F15’, ‘F16’, ‘F17’, ‘F18’, ‘F19’, ‘PAUSE’, ‘INSERT’, ‘HOME’, ‘PAGE_UP’, ‘PAGE_DOWN’, ‘END’, ‘MEDIA_PLAY’, ‘MEDIA_STOP’, ‘MEDIA_FIRST’, ‘MEDIA_LAST’, ‘TEXTINPUT’, ‘WINDOW_DEACTIVATE’, ‘TIMER’, ‘TIMER0’, ‘TIMER1’, ‘TIMER2’, ‘TIMER_JOBS’, ‘TIMER_AUTOSAVE’, ‘TIMER_REPORT’, ‘TIMERREGION’, ‘NDOF_MOTION’, ‘NDOF_BUTTON_MENU’, ‘NDOF_BUTTON_FIT’, ‘NDOF_BUTTON_TOP’, ‘NDOF_BUTTON_BOTTOM’, ‘NDOF_BUTTON_LEFT’, ‘NDOF_BUTTON_RIGHT’, ‘NDOF_BUTTON_FRONT’, ‘NDOF_BUTTON_BACK’, ‘NDOF_BUTTON_ISO1’, ‘NDOF_BUTTON_ISO2’, ‘NDOF_BUTTON_ROLL_CW’, ‘NDOF_BUTTON_ROLL_CCW’, ‘NDOF_BUTTON_SPIN_CW’, ‘NDOF_BUTTON_SPIN_CCW’, ‘NDOF_BUTTON_TILT_CW’, ‘NDOF_BUTTON_TILT_CCW’, ‘NDOF_BUTTON_ROTATE’, ‘NDOF_BUTTON_PANZOOM’, ‘NDOF_BUTTON_DOMINANT’, ‘NDOF_BUTTON_PLUS’, ‘NDOF_BUTTON_MINUS’, ‘NDOF_BUTTON_ESC’, ‘NDOF_BUTTON_ALT’, ‘NDOF_BUTTON_SHIFT’, ‘NDOF_BUTTON_CTRL’, ‘NDOF_BUTTON_1’, ‘NDOF_BUTTON_2’, ‘NDOF_BUTTON_3’, ‘NDOF_BUTTON_4’, ‘NDOF_BUTTON_5’, ‘NDOF_BUTTON_6’, ‘NDOF_BUTTON_7’, ‘NDOF_BUTTON_8’, ‘NDOF_BUTTON_9’, ‘NDOF_BUTTON_10’, ‘NDOF_BUTTON_A’, ‘NDOF_BUTTON_B’, ‘NDOF_BUTTON_C’, ‘ACTIONZONE_AREA’, ‘ACTIONZONE_REGION’, ‘ACTIONZONE_FULLSCREEN’], default ‘NONE’, (readonly) 
    '''

    unicode = None
    '''Single unicode character for this event 

    :type:  string, default “”, (readonly, never None) 
    '''

    value = None
    '''The type of event, only applies to some 

    :type:  enum in [‘ANY’, ‘NOTHING’, ‘PRESS’, ‘RELEASE’, ‘CLICK’, ‘DOUBLE_CLICK’, ‘CLICK_DRAG’, ‘NORTH’, ‘NORTH_EAST’, ‘EAST’, ‘SOUTH_EAST’, ‘SOUTH’, ‘SOUTH_WEST’, ‘WEST’, ‘NORTH_WEST’], default ‘NOTHING’, (readonly) 
    '''


class ExplodeModifier:
    '''Explosion effect modifier based on a particle system '''

    particle_uv = None
    '''UV map to change with particle age 

    :type:  string, default “”, (never None) 
    '''

    protect = None
    '''Clean vertex group edges 

    :type:  float in [0, 1], default 0.0 
    '''

    show_alive = None
    '''Show mesh when particles are alive 

    :type:  boolean, default False 
    '''

    show_dead = None
    '''Show mesh when particles are dead 

    :type:  boolean, default False 
    '''

    show_unborn = None
    '''Show mesh when particles are unborn 

    :type:  boolean, default False 
    '''

    use_edge_cut = None
    '''Cut face edges for nicer shrapnel 

    :type:  boolean, default False 
    '''

    use_size = None
    '''Use particle size for the shrapnel 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''

    :type:  string, default “”, (never None) 
    '''


class FCurve:
    '''F-Curve defining values of a period of time '''

    array_index = None
    '''Index to the specific property affected by F-Curve if applicable 

    :type:  int in [-inf, inf], default 0 
    '''

    auto_smoothing = None
    '''Algorithm used to compute automatic handles 

    :type:  enum in [‘NONE’, ‘CONT_ACCEL’], default ‘NONE’ 
    '''

    color = None
    '''Color of the F-Curve in the Graph Editor 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    color_mode = None
    '''Method used to determine color of F-Curve in Graph Editor 

    :type:  enum in [‘AUTO_RAINBOW’, ‘AUTO_RGB’, ‘AUTO_YRGB’, ‘CUSTOM’], default ‘AUTO_RAINBOW’ 
    '''

    data_path = None
    '''RNA Path to property affected by F-Curve 

    :type:  string, default “”, (never None) 
    '''

    driver = None
    '''Channel Driver (only set for Driver F-Curves) 

    :type:  Driver, (readonly) 
    '''

    extrapolation = None
    '''Method used for evaluating value of F-Curve outside first and last keyframes 

    :type:  enum in [‘CONSTANT’, ‘LINEAR’], default ‘CONSTANT’ 
    '''

    group = None
    '''Action Group that this F-Curve belongs to 

    :type:  ActionGroup 
    '''

    hide = None
    '''F-Curve and its keyframes are hidden in the Graph Editor graphs 

    :type:  boolean, default False 
    '''

    is_valid = None
    '''False when F-Curve could not be evaluated in past, so should be skipped when evaluating 

    :type:  boolean, default False 
    '''

    keyframe_points = None
    '''User-editable keyframes 

    :type:  FCurveKeyframePoints bpy_prop_collection of Keyframe, (readonly) 
    '''

    lock = None
    '''F-Curve’s settings cannot be edited 

    :type:  boolean, default False 
    '''

    modifiers = None
    '''Modifiers affecting the shape of the F-Curve 

    :type:  FCurveModifiers bpy_prop_collection of FModifier, (readonly) 
    '''

    mute = None
    '''Disable F-Curve Modifier evaluation 

    :type:  boolean, default False 
    '''

    sampled_points = None
    '''Sampled animation data 

    :type:  bpy_prop_collection of FCurveSample, (readonly) 
    '''

    select = None
    '''F-Curve is selected for editing 

    :type:  boolean, default False 
    '''

    def evaluate(self, frame):
        '''Evaluate F-Curve 

        :param frame: Frame, Evaluate F-Curve at given frame 
        :type frame: float in [-inf, inf]
        :rtype: float in [-inf, inf] 
        :return:  Value, Value of F-Curve specific frame 
        '''
        pass

    def update(self):
        '''Ensure keyframes are sorted in chronological order and handles are set correctly 

        '''
        pass

    def range(self):
        '''Get the time extents for F-Curve 

        :rtype: float array of 2 items in [-inf, inf] 
        :return:  Range, Min/Max values 
        '''
        pass

    def update_autoflags(self, data):
        '''Update FCurve flags set automatically from affected property (currently, integer/discrete flags set when the property is not a float) 

        :param data: Data, Data containing the property controlled by given FCurve 
        :type data: AnyType, (never None)
        '''
        pass

    def convert_to_samples(self, start, end):
        '''Convert current FCurve from keyframes to sample points, if necessary 

        :param start: Start Frame 
        :type start: int in [-1048574, 1048574]
        :param end: End Frame 
        :type end: int in [-1048574, 1048574]
        '''
        pass

    def convert_to_keyframes(self, start, end):
        '''Convert current FCurve from sample points to keyframes (linear interpolation), if necessary 

        :param start: Start Frame 
        :type start: int in [-1048574, 1048574]
        :param end: End Frame 
        :type end: int in [-1048574, 1048574]
        '''
        pass


class FCurveKeyframePoints:
    '''Collection of keyframe points '''

    def insert(self, frame, value, options={}, keyframe_type='KEYFRAME'):
        '''Add a keyframe point to a F-Curve 

        :param frame: X Value of this keyframe point 
        :type frame: float in [-inf, inf]
        :param value: Y Value of this keyframe point 
        :type value: float in [-inf, inf]
        :param options: Keyframe optionsREPLACE Replace, Don’t add any new keyframes, but just replace existing ones.NEEDED Needed, Only adds keyframes that are needed.FAST Fast, Fast keyframe insertion to avoid recalculating the curve each time. 
        :type options: enum set in {'REPLACE', 'NEEDED', 'FAST'}, (optional)
        :param keyframe_type: Type of keyframe to insertKEYFRAME Keyframe, Normal keyframe - e.g. for key poses.BREAKDOWN Breakdown, A breakdown pose - e.g. for transitions between key poses.MOVING_HOLD Moving Hold, A keyframe that is part of a moving hold.EXTREME Extreme, An ‘extreme’ pose, or some other purpose as needed.JITTER Jitter, A filler or baked keyframe for keying on ones, or some other purpose as needed. 
        :type keyframe_type: enum in ['KEYFRAME', 'BREAKDOWN', 'MOVING_HOLD', 'EXTREME', 'JITTER'], (optional)
        :rtype: Keyframe 
        :return:  Newly created keyframe 
        '''
        pass

    def add(self, count):
        '''Add a keyframe point to a F-Curve 

        :param count: Number, Number of points to add to the spline 
        :type count: int in [0, inf]
        '''
        pass

    def remove(self, keyframe, fast=False):
        '''Remove keyframe from an F-Curve 

        :param keyframe: Keyframe to remove 
        :type keyframe: Keyframe, (never None)
        :param fast: Fast, Fast keyframe removal to avoid recalculating the curve each time 
        :type fast: boolean, (optional)
        '''
        pass


class FCurveModifiers:
    '''Collection of F-Curve Modifiers '''

    active = None
    '''Active F-Curve Modifier 

    :type:  FModifier 
    '''

    def new(self, type):
        '''Add a constraint to this object 

        :param type: Constraint type to addNULL Invalid.GENERATOR Generator, Generate a curve using a factorized or expanded polynomial.FNGENERATOR Built-In Function, Generate a curve using standard math functions such as sin and cos.ENVELOPE Envelope, Reshape F-Curve values - e.g. change amplitude of movements.CYCLES Cycles, Cyclic extend/repeat keyframe sequence.NOISE Noise, Add pseudo-random noise on top of F-Curves.LIMITS Limits, Restrict maximum and minimum values of F-Curve.STEPPED Stepped Interpolation, Snap values to nearest grid-step - e.g. for a stop-motion look. 
        :type type: enum in ['NULL', 'GENERATOR', 'FNGENERATOR', 'ENVELOPE', 'CYCLES', 'NOISE', 'LIMITS', 'STEPPED']
        :rtype: FModifier 
        :return:  New fmodifier 
        '''
        pass

    def remove(self, modifier):
        '''Remove a modifier from this F-Curve 

        :param modifier: Removed modifier 
        :type modifier: FModifier, (never None)
        '''
        pass


class FCurveSample:
    '''Sample point for F-Curve '''

    co = None
    '''Point coordinates 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    select = None
    '''Selection status 

    :type:  boolean, default False 
    '''


class FFmpegSettings:
    '''FFmpeg related settings for the scene '''

    audio_bitrate = None
    '''Audio bitrate (kb/s) 

    :type:  int in [32, 384], default 0 
    '''

    audio_channels = None
    '''Audio channel count 

    :type:  enum in [‘MONO’, ‘STEREO’, ‘SURROUND4’, ‘SURROUND51’, ‘SURROUND71’], default ‘MONO’ 
    '''

    audio_codec = None
    '''FFmpeg audio codec to use 

    :type:  enum in [‘NONE’, ‘AAC’, ‘AC3’, ‘FLAC’, ‘MP2’, ‘MP3’, ‘PCM’, ‘VORBIS’], default ‘NONE’ 
    '''

    audio_mixrate = None
    '''Audio samplerate(samples/s) 

    :type:  int in [8000, 192000], default 0 
    '''

    audio_volume = None
    '''Audio volume 

    :type:  float in [0, 1], default 0.0 
    '''

    buffersize = None
    '''Rate control: buffer size (kb) 

    :type:  int in [0, 2000], default 0 
    '''

    codec = None
    '''FFmpeg codec to use for video output 

    :type:  enum in [‘NONE’, ‘DNXHD’, ‘DV’, ‘FFV1’, ‘FLASH’, ‘H264’, ‘HUFFYUV’, ‘MPEG1’, ‘MPEG2’, ‘MPEG4’, ‘PNG’, ‘QTRLE’, ‘THEORA’, ‘WEBM’], default ‘H264’ 
    '''

    constant_rate_factor = None
    '''Constant Rate Factor (CRF); tradeoff between video quality and file size 

    :type:  enum in [‘NONE’, ‘LOSSLESS’, ‘PERC_LOSSLESS’, ‘HIGH’, ‘MEDIUM’, ‘LOW’, ‘VERYLOW’, ‘LOWEST’], default ‘MEDIUM’ 
    '''

    ffmpeg_preset = None
    '''Tradeoff between encoding speed and compression ratio 

    :type:  enum in [‘BEST’, ‘GOOD’, ‘REALTIME’], default ‘GOOD’ 
    '''

    format = None
    '''Output file container 

    :type:  enum in [‘MPEG1’, ‘MPEG2’, ‘MPEG4’, ‘AVI’, ‘QUICKTIME’, ‘DV’, ‘OGG’, ‘MKV’, ‘FLASH’], default ‘MKV’ 
    '''

    gopsize = None
    '''Distance between key frames, also known as GOP size; influences file size and seekability 

    :type:  int in [0, 500], default 25 
    '''

    max_b_frames = None
    '''Maximum number of B-frames between non-B-frames; influences file size and seekability 

    :type:  int in [0, 16], default 0 
    '''

    maxrate = None
    '''Rate control: max rate (kb/s) 

    :type:  int in [-inf, inf], default 0 
    '''

    minrate = None
    '''Rate control: min rate (kb/s) 

    :type:  int in [-inf, inf], default 0 
    '''

    muxrate = None
    '''Mux rate (bits/s(!)) 

    :type:  int in [0, inf], default 0 
    '''

    packetsize = None
    '''Mux packet size (byte) 

    :type:  int in [0, 16384], default 0 
    '''

    use_autosplit = None
    '''Autosplit output at 2GB boundary 

    :type:  boolean, default False 
    '''

    use_lossless_output = None
    '''Use lossless output for video streams 

    :type:  boolean, default False 
    '''

    use_max_b_frames = None
    '''Set a maximum number of B-frames 

    :type:  boolean, default False 
    '''

    video_bitrate = None
    '''Video bitrate (kb/s) 

    :type:  int in [-inf, inf], default 0 
    '''


class FILEBROWSER_UL_dir:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class FModifier:
    '''Modifier for values of F-Curve '''

    active = None
    '''F-Curve Modifier is the one being edited 

    :type:  boolean, default False 
    '''

    blend_in = None
    '''Number of frames from start frame for influence to take effect 

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend_out = None
    '''Number of frames from end frame for influence to fade out 

    :type:  float in [-inf, inf], default 0.0 
    '''

    frame_end = None
    '''Frame that modifier’s influence ends (if Restrict Frame Range is in use) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    frame_start = None
    '''Frame that modifier’s influence starts (if Restrict Frame Range is in use) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    influence = None
    '''Amount of influence F-Curve Modifier will have when not fading in/out 

    :type:  float in [0, 1], default 1.0 
    '''

    is_valid = None
    '''F-Curve Modifier has invalid settings and will not be evaluated 

    :type:  boolean, default False, (readonly) 
    '''

    mute = None
    '''Disable F-Curve Modifier evaluation 

    :type:  boolean, default False 
    '''

    show_expanded = None
    '''F-Curve Modifier’s panel is expanded in UI 

    :type:  boolean, default False 
    '''

    type = None
    '''F-Curve Modifier Type 

    :type:  enum in [‘NULL’, ‘GENERATOR’, ‘FNGENERATOR’, ‘ENVELOPE’, ‘CYCLES’, ‘NOISE’, ‘LIMITS’, ‘STEPPED’], default ‘NULL’, (readonly) 
    '''

    use_influence = None
    '''F-Curve Modifier’s effects will be tempered by a default factor 

    :type:  boolean, default False 
    '''

    use_restricted_range = None
    '''F-Curve Modifier is only applied for the specified frame range to help mask off effects in order to chain them 

    :type:  boolean, default False 
    '''


class FModifierCycles:
    '''Repeat the values of the modified F-Curve '''

    cycles_after = None
    '''Maximum number of cycles to allow after last keyframe (0 = infinite) 

    :type:  int in [-32768, 32767], default 0 
    '''

    cycles_before = None
    '''Maximum number of cycles to allow before first keyframe (0 = infinite) 

    :type:  int in [-32768, 32767], default 0 
    '''

    mode_after = None
    '''Cycling mode to use after last keyframe 

    :type:  enum in [‘NONE’, ‘REPEAT’, ‘REPEAT_OFFSET’, ‘MIRROR’], default ‘NONE’ 
    '''

    mode_before = None
    '''Cycling mode to use before first keyframe 

    :type:  enum in [‘NONE’, ‘REPEAT’, ‘REPEAT_OFFSET’, ‘MIRROR’], default ‘NONE’ 
    '''


class FModifierEnvelope:
    '''Scale the values of the modified F-Curve '''

    control_points = None
    '''Control points defining the shape of the envelope 

    :type:  FModifierEnvelopeControlPoints bpy_prop_collection of FModifierEnvelopeControlPoint, (readonly) 
    '''

    default_max = None
    '''Upper distance from Reference Value for 1:1 default influence 

    :type:  float in [-inf, inf], default 0.0 
    '''

    default_min = None
    '''Lower distance from Reference Value for 1:1 default influence 

    :type:  float in [-inf, inf], default 0.0 
    '''

    reference_value = None
    '''Value that envelope’s influence is centered around / based on 

    :type:  float in [-inf, inf], default 0.0 
    '''


class FModifierEnvelopeControlPoint:
    '''Control point for envelope F-Modifier '''

    frame = None
    '''Frame this control-point occurs on 

    :type:  float in [-inf, inf], default 0.0 
    '''

    max = None
    '''Upper bound of envelope at this control-point 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min = None
    '''Lower bound of envelope at this control-point 

    :type:  float in [-inf, inf], default 0.0 
    '''


class FModifierEnvelopeControlPoints:
    '''Control points defining the shape of the envelope '''

    def add(self, frame):
        '''Add a control point to a FModifierEnvelope 

        :param frame: Frame to add this control-point 
        :type frame: float in [-inf, inf]
        :rtype: FModifierEnvelopeControlPoint 
        :return:  Newly created control-point 
        '''
        pass

    def remove(self, point):
        '''Remove a control-point from an FModifierEnvelope 

        :param point: Control-point to remove 
        :type point: FModifierEnvelopeControlPoint, (never None)
        '''
        pass


class FModifierFunctionGenerator:
    '''Generate values using a Built-In Function '''

    amplitude = None
    '''Scale factor determining the maximum/minimum values 

    :type:  float in [-inf, inf], default 0.0 
    '''

    function_type = None
    '''Type of built-in function to use 

    :type:  enum in [‘SIN’, ‘COS’, ‘TAN’, ‘SQRT’, ‘LN’, ‘SINC’], default ‘SIN’ 
    '''

    phase_multiplier = None
    '''Scale factor determining the ‘speed’ of the function 

    :type:  float in [-inf, inf], default 0.0 
    '''

    phase_offset = None
    '''Constant factor to offset time by for function 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_additive = None
    '''Values generated by this modifier are applied on top of the existing values instead of overwriting them 

    :type:  boolean, default False 
    '''

    value_offset = None
    '''Constant factor to offset values by 

    :type:  float in [-inf, inf], default 0.0 
    '''


class FModifierGenerator:
    '''Deterministically generate values for the modified F-Curve '''

    coefficients = None
    '''Coefficients for ‘x’ (starting from lowest power of x^0) 

    :type:  float array of 32 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) 
    '''

    mode = None
    '''Type of generator to use 

    :type:  enum in [‘POLYNOMIAL’, ‘POLYNOMIAL_FACTORISED’], default ‘POLYNOMIAL’ 
    '''

    poly_order = None
    '''The highest power of ‘x’ for this polynomial (number of coefficients - 1) 

    :type:  int in [1, 100], default 0 
    '''

    use_additive = None
    '''Values generated by this modifier are applied on top of the existing values instead of overwriting them 

    :type:  boolean, default False 
    '''


class FModifierLimits:
    '''Limit the time/value ranges of the modified F-Curve '''

    max_x = None
    '''Highest X value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    max_y = None
    '''Highest Y value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_x = None
    '''Lowest X value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_y = None
    '''Lowest Y value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_max_x = None
    '''Use the maximum X value 

    :type:  boolean, default False 
    '''

    use_max_y = None
    '''Use the maximum Y value 

    :type:  boolean, default False 
    '''

    use_min_x = None
    '''Use the minimum X value 

    :type:  boolean, default False 
    '''

    use_min_y = None
    '''Use the minimum Y value 

    :type:  boolean, default False 
    '''


class FModifierNoise:
    '''Give randomness to the modified F-Curve '''

    blend_type = None
    '''Method of modifying the existing F-Curve 

    :type:  enum in [‘REPLACE’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’], default ‘REPLACE’ 
    '''

    depth = None
    '''Amount of fine level detail present in the noise 

    :type:  int in [0, 32767], default 0 
    '''

    offset = None
    '''Time offset for the noise effect 

    :type:  float in [-inf, inf], default 0.0 
    '''

    phase = None
    '''A random seed for the noise effect 

    :type:  float in [-inf, inf], default 0.0 
    '''

    scale = None
    '''Scaling (in time) of the noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    strength = None
    '''Amplitude of the noise - the amount that it modifies the underlying curve 

    :type:  float in [-inf, inf], default 0.0 
    '''


class FModifierPython:
    '''Perform user-defined operation on the modified F-Curve '''

    pass


class FModifierStepped:
    '''Hold each interpolated value from the F-Curve for several frames without changing the timing '''

    frame_end = None
    '''Frame that modifier’s influence ends (if applicable) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    frame_offset = None
    '''Reference number of frames before frames get held (use to get hold for ‘1-3’ vs ‘5-7’ holding patterns) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    frame_start = None
    '''Frame that modifier’s influence starts (if applicable) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    frame_step = None
    '''Number of frames to hold each value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_frame_end = None
    '''Restrict modifier to only act before its ‘end’ frame 

    :type:  boolean, default False 
    '''

    use_frame_start = None
    '''Restrict modifier to only act after its ‘start’ frame 

    :type:  boolean, default False 
    '''


class FaceMap:
    '''Group of faces, each face can only be part of one map '''

    index = None
    '''Index number of the face map 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    name = None
    '''Face map name 

    :type:  string, default “”, (never None) 
    '''

    select = None
    '''Face-map selection state (for tools to use) 

    :type:  boolean, default False 
    '''

    def add(self, index):
        '''Add vertices to the group 

        :param index: Index List 
        :type index: int array of 1 items in [-inf, inf]
        '''
        pass

    def remove(self, index):
        '''Remove a vertex from the group 

        :param index: Index List 
        :type index: int array of 1 items in [-inf, inf]
        '''
        pass


class FaceMaps:
    '''Collection of face maps '''

    active = None
    '''Face maps of the object 

    :type:  FaceMap, (readonly) 
    '''

    active_index = None
    '''Active index in face map array 

    :type:  int in [0, 32767], default 0 
    '''

    def new(self, name="Map"):
        '''Add face map to object 

        :param name: face map name 
        :type name: string, (optional, never None)
        :rtype: FaceMap 
        :return:  New face map 
        '''
        pass

    def remove(self, group):
        '''Delete vertex group from object 

        :param group: Face map to remove 
        :type group: FaceMap, (never None)
        '''
        pass

    def clear(self):
        '''Delete all vertex groups from object 

        '''
        pass


class FieldSettings:
    '''Field settings for an object in physics simulation '''

    apply_to_location = None
    '''Affect particle’s location 

    :type:  boolean, default False 
    '''

    apply_to_rotation = None
    '''Affect particle’s dynamic rotation 

    :type:  boolean, default False 
    '''

    distance_max = None
    '''Maximum distance for the field to work 

    :type:  float in [0, inf], default 0.0 
    '''

    distance_min = None
    '''Minimum distance for the field’s fall-off 

    :type:  float in [0, 1000], default 0.0 
    '''

    falloff_power = None
    '''How quickly strength falls off with distance from the force field 

    :type:  float in [0, 10], default 0.0 
    '''

    falloff_type = None
    '''

    :type:  enum in [‘SPHERE’, ‘TUBE’, ‘CONE’], default ‘SPHERE’ 
    '''

    flow = None
    '''Convert effector force into air flow velocity 

    :type:  float in [0, 10], default 0.0 
    '''

    guide_clump_amount = None
    '''Amount of clumping 

    :type:  float in [-1, 1], default 0.0 
    '''

    guide_clump_shape = None
    '''Shape of clumping 

    :type:  float in [-0.999, 0.999], default 0.0 
    '''

    guide_free = None
    '''Guide-free time from particle life’s end 

    :type:  float in [0, 0.99], default 0.0 
    '''

    guide_kink_amplitude = None
    '''The amplitude of the offset 

    :type:  float in [0, 10], default 0.0 
    '''

    guide_kink_axis = None
    '''Which axis to use for offset 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    guide_kink_frequency = None
    '''The frequency of the offset (1/total length) 

    :type:  float in [0, 10], default 0.0 
    '''

    guide_kink_shape = None
    '''Adjust the offset to the beginning/end 

    :type:  float in [-0.999, 0.999], default 0.0 
    '''

    guide_kink_type = None
    '''Type of periodic offset on the curve 

    :type:  enum in [‘NONE’, ‘CURL’, ‘RADIAL’, ‘WAVE’, ‘BRAID’, ‘ROTATION’, ‘ROLL’], default ‘NONE’ 
    '''

    guide_minimum = None
    '''The distance from which particles are affected fully 

    :type:  float in [0, 1000], default 0.0 
    '''

    harmonic_damping = None
    '''Damping of the harmonic force 

    :type:  float in [0, 10], default 0.0 
    '''

    inflow = None
    '''Inwards component of the vortex force 

    :type:  float in [-10, 10], default 0.0 
    '''

    linear_drag = None
    '''Drag component proportional to velocity 

    :type:  float in [-2, 2], default 0.0 
    '''

    noise = None
    '''Amount of noise for the force strength 

    :type:  float in [0, 10], default 0.0 
    '''

    quadratic_drag = None
    '''Drag component proportional to the square of velocity 

    :type:  float in [-2, 2], default 0.0 
    '''

    radial_falloff = None
    '''Radial falloff power (real gravitational falloff = 2) 

    :type:  float in [0, 10], default 0.0 
    '''

    radial_max = None
    '''Maximum radial distance for the field to work 

    :type:  float in [0, 1000], default 0.0 
    '''

    radial_min = None
    '''Minimum radial distance for the field’s fall-off 

    :type:  float in [0, 1000], default 0.0 
    '''

    rest_length = None
    '''Rest length of the harmonic force 

    :type:  float in [0, 1000], default 0.0 
    '''

    seed = None
    '''Seed of the noise 

    :type:  int in [1, 128], default 0 
    '''

    shape = None
    '''Which direction is used to calculate the effector force 

    :type:  enum in [‘POINT’, ‘LINE’, ‘PLANE’, ‘SURFACE’, ‘POINTS’], default ‘POINT’ 
    '''

    size = None
    '''Size of the turbulence 

    :type:  float in [0, inf], default 0.0 
    '''

    source_object = None
    '''Select domain object of the smoke simulation 

    :type:  Object 
    '''

    strength = None
    '''Strength of force field 

    :type:  float in [-inf, inf], default 0.0 
    '''

    texture = None
    '''Texture to use as force 

    :type:  Texture 
    '''

    texture_mode = None
    '''How the texture effect is calculated (RGB & Curl need a RGB texture, else Gradient will be used instead) 

    :type:  enum in [‘RGB’, ‘GRADIENT’, ‘CURL’], default ‘RGB’ 
    '''

    texture_nabla = None
    '''Defines size of derivative offset used for calculating gradient and curl 

    :type:  float in [0.0001, 1], default 0.0 
    '''

    type = None
    '''Type of field 

    :type:  enum in [‘NONE’, ‘FORCE’, ‘WIND’, ‘VORTEX’, ‘MAGNET’, ‘HARMONIC’, ‘CHARGE’, ‘LENNARDJ’, ‘TEXTURE’, ‘GUIDE’, ‘BOID’, ‘TURBULENCE’, ‘DRAG’, ‘SMOKE_FLOW’], default ‘NONE’ 
    '''

    use_2d_force = None
    '''Apply force only in 2D 

    :type:  boolean, default False 
    '''

    use_absorption = None
    '''Force gets absorbed by collision objects 

    :type:  boolean, default False 
    '''

    use_global_coords = None
    '''Use effector/global coordinates for turbulence 

    :type:  boolean, default False 
    '''

    use_gravity_falloff = None
    '''Multiply force by 1/distance² 

    :type:  boolean, default False 
    '''

    use_guide_path_add = None
    '''Based on distance/falloff it adds a portion of the entire path 

    :type:  boolean, default False 
    '''

    use_guide_path_weight = None
    '''Use curve weights to influence the particle influence along the curve 

    :type:  boolean, default False 
    '''

    use_max_distance = None
    '''Use a maximum distance for the field to work 

    :type:  boolean, default False 
    '''

    use_min_distance = None
    '''Use a minimum distance for the field’s fall-off 

    :type:  boolean, default False 
    '''

    use_multiple_springs = None
    '''Every point is effected by multiple springs 

    :type:  boolean, default False 
    '''

    use_object_coords = None
    '''Use object/global coordinates for texture 

    :type:  boolean, default False 
    '''

    use_radial_max = None
    '''Use a maximum radial distance for the field to work 

    :type:  boolean, default False 
    '''

    use_radial_min = None
    '''Use a minimum radial distance for the field’s fall-off 

    :type:  boolean, default False 
    '''

    use_root_coords = None
    '''Texture coordinates from root particle locations 

    :type:  boolean, default False 
    '''

    use_smoke_density = None
    '''Adjust force strength based on smoke density 

    :type:  boolean, default False 
    '''

    z_direction = None
    '''Effect in full or only positive/negative Z direction 

    :type:  enum in [‘BOTH’, ‘POSITIVE’, ‘NEGATIVE’], default ‘BOTH’ 
    '''


class FileBrowserFSMenuEntry:
    '''File Select Parameters '''

    is_valid = None
    '''Whether this path is currently reachable 

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    path = None
    '''

    :type:  string, default “”, (never None) 
    '''

    use_save = None
    '''Whether this path is saved in bookmarks, or generated from OS 

    :type:  boolean, default False, (readonly) 
    '''


class FileSelectParams:
    '''File Select Parameters '''

    directory = None
    '''Directory displayed in the file browser 

    :type:  string, default “”, (never None) 
    '''

    display_size = None
    '''Change the size of the display (width of columns or thumbnails size) 

    :type:  enum in [‘TINY’, ‘SMALL’, ‘NORMAL’, ‘LARGE’], default ‘TINY’ 
    '''

    display_type = None
    '''Display mode for the file list 

    :type:  enum in [‘LIST_SHORT’, ‘LIST_LONG’, ‘THUMBNAIL’], default ‘LIST_SHORT’ 
    '''

    filename = None
    '''Active file in the file browser 

    :type:  string, default “”, (never None) 
    '''

    filter_glob = None
    '''UNIX shell-like filename patterns matching, supports wildcards (‘*’) and list of patterns separated by ‘;’ 

    :type:  string, default “”, (never None) 
    '''

    filter_id = None
    '''Which ID types to show/hide, when browsing a library 

    :type:  enum set in {‘ACTION’, ‘ARMATURE’, ‘BRUSH’, ‘CAMERA’, ‘CACHEFILE’, ‘CURVE’, ‘GREASE_PENCIL’, ‘GROUP’, ‘IMAGE’, ‘LIGHT’, ‘LINESTYLE’, ‘LATTICE’, ‘MATERIAL’, ‘METABALL’, ‘MOVIE_CLIP’, ‘MESH’, ‘MASK’, ‘NODE_TREE’, ‘OBJECT’, ‘PARTICLE_SETTINGS’, ‘PALETTE’, ‘PAINT_CURVE’, ‘LIGHT_PROBE’, ‘SCENE’, ‘SPEAKER’, ‘SOUND’, ‘TEXTURE’, ‘TEXT’, ‘FONT’, ‘WORLD’, ‘WORK_SPACE’}, default {‘ACTION’} 
    '''

    filter_id_category = None
    '''Which ID categories to show/hide, when browsing a library 

    :type:  enum set in {‘SCENE’, ‘ANIMATION’, ‘OBJECT’, ‘GEOMETRY’, ‘SHADING’, ‘IMAGE’, ‘ENVIRONMENT’, ‘MISC’}, default {‘SCENE’} 
    '''

    filter_search = None
    '''Filter by name, supports ‘*’ wildcard 

    :type:  string, default “”, (never None) 
    '''

    recursion_level = None
    '''Numbers of dirtree levels to show simultaneously 

    :type:  enum in [‘NONE’, ‘BLEND’, ‘ALL_1’, ‘ALL_2’, ‘ALL_3’], default ‘NONE’ 
    '''

    show_hidden = None
    '''Show hidden dot files 

    :type:  boolean, default False 
    '''

    sort_method = None
    '''

    :type:  enum in [‘FILE_SORT_ALPHA’, ‘FILE_SORT_EXTENSION’, ‘FILE_SORT_TIME’, ‘FILE_SORT_SIZE’], default ‘FILE_SORT_ALPHA’ 
    '''

    title = None
    '''Title for the file browser 

    :type:  string, default “”, (readonly, never None) 
    '''

    use_filter = None
    '''Enable filtering of files 

    :type:  boolean, default False 
    '''

    use_filter_backup = None
    '''Show .blend1, .blend2, etc. files 

    :type:  boolean, default False 
    '''

    use_filter_blender = None
    '''Show .blend files 

    :type:  boolean, default False 
    '''

    use_filter_blendid = None
    '''Show .blend files items (objects, materials, etc.) 

    :type:  boolean, default False 
    '''

    use_filter_folder = None
    '''Show folders 

    :type:  boolean, default False 
    '''

    use_filter_font = None
    '''Show font files 

    :type:  boolean, default False 
    '''

    use_filter_image = None
    '''Show image files 

    :type:  boolean, default False 
    '''

    use_filter_movie = None
    '''Show movie files 

    :type:  boolean, default False 
    '''

    use_filter_script = None
    '''Show script files 

    :type:  boolean, default False 
    '''

    use_filter_sound = None
    '''Show sound files 

    :type:  boolean, default False 
    '''

    use_filter_text = None
    '''Show text files 

    :type:  boolean, default False 
    '''

    use_library_browsing = None
    '''Whether we may browse blender files’ content or not 

    :type:  boolean, default False, (readonly) 
    '''


class FloatProperty:
    '''RNA floating pointer number property definition '''

    array_dimensions = None
    '''Length of each dimension of the array 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0), (readonly) 
    '''

    array_length = None
    '''Maximum length of the array, 0 means unlimited 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    default = None
    '''Default value for this number 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    default_array = None
    '''Default value for this array 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    hard_max = None
    '''Maximum value used by buttons 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    hard_min = None
    '''Minimum value used by buttons 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    is_array = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    precision = None
    '''Number of digits after the dot used by buttons 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    soft_max = None
    '''Maximum value used by buttons 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    soft_min = None
    '''Minimum value used by buttons 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    step = None
    '''Step size used by number buttons, for floats 1/100th of the step size 

    :type:  float in [0, inf], default 0.0, (readonly) 
    '''


class FloorConstraint:
    '''Use the target object for location limitation '''

    floor_location = None
    '''Location of target that object will not pass through 

    :type:  enum in [‘FLOOR_X’, ‘FLOOR_Y’, ‘FLOOR_Z’, ‘FLOOR_NEGATIVE_X’, ‘FLOOR_NEGATIVE_Y’, ‘FLOOR_NEGATIVE_Z’], default ‘FLOOR_X’ 
    '''

    offset = None
    '''Offset of floor from object origin 

    :type:  float in [-inf, inf], default 0.0 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    use_rotation = None
    '''Use the target’s rotation to determine floor 

    :type:  boolean, default False 
    '''

    use_sticky = None
    '''Immobilize object while constrained 

    :type:  boolean, default False 
    '''


class FluidFluidSettings:
    '''Fluid simulation settings for the fluid in the simulation '''

    initial_velocity = None
    '''Initial velocity of fluid 

    :type:  float array of 3 items in [-1000.1, 1000.1], default (0.0, 0.0, 0.0) 
    '''

    use = None
    '''Object contributes to the fluid simulation 

    :type:  boolean, default False 
    '''

    use_animated_mesh = None
    '''Export this mesh as an animated one (slower and enforces No Slip, only use if really necessary [e.g. armatures or parented objects], animated pos/rot/scale F-Curves do not require it) 

    :type:  boolean, default False 
    '''

    volume_initialization = None
    '''Volume initialization type (WARNING: complex volumes might require too much memory and break simulation) 

    :type:  enum in [‘VOLUME’, ‘SHELL’, ‘BOTH’], default ‘VOLUME’ 
    '''


class FluidSettings:
    '''Fluid simulation settings for an object taking part in the simulation '''

    type = None
    '''Type of participation in the fluid simulation 

    :type:  enum in [‘NONE’, ‘DOMAIN’, ‘FLUID’, ‘OBSTACLE’, ‘INFLOW’, ‘OUTFLOW’, ‘PARTICLE’, ‘CONTROL’], default ‘NONE’ 
    '''


class FluidSimulationModifier:
    '''Fluid simulation modifier '''

    settings = None
    '''Settings for how this object is used in the fluid simulation 

    :type:  FluidSettings, (readonly, never None) 
    '''


class FluidVertexVelocity:
    '''Velocity of a simulated fluid mesh '''

    velocity = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''


class FollowPathConstraint:
    '''Lock motion to the target path '''

    forward_axis = None
    '''Axis that points forward along the path 

    :type:  enum in [‘FORWARD_X’, ‘FORWARD_Y’, ‘FORWARD_Z’, ‘TRACK_NEGATIVE_X’, ‘TRACK_NEGATIVE_Y’, ‘TRACK_NEGATIVE_Z’], default ‘FORWARD_X’ 
    '''

    offset = None
    '''Offset from the position corresponding to the time frame 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    offset_factor = None
    '''Percentage value defining target position along length of curve 

    :type:  float in [0, 1], default 0.0 
    '''

    target = None
    '''Target Curve object 

    :type:  Object 
    '''

    up_axis = None
    '''Axis that points upward 

    :type:  enum in [‘UP_X’, ‘UP_Y’, ‘UP_Z’], default ‘UP_X’ 
    '''

    use_curve_follow = None
    '''Object will follow the heading and banking of the curve 

    :type:  boolean, default False 
    '''

    use_curve_radius = None
    '''Object is scaled by the curve radius 

    :type:  boolean, default False 
    '''

    use_fixed_location = None
    '''Object will stay locked to a single point somewhere along the length of the curve regardless of time 

    :type:  boolean, default False 
    '''


class FollowTrackConstraint:
    '''Lock motion to the target motion track '''

    camera = None
    '''Camera to which motion is parented (if empty active scene camera is used) 

    :type:  Object 
    '''

    clip = None
    '''Movie Clip to get tracking data from 

    :type:  MovieClip 
    '''

    depth_object = None
    '''Object used to define depth in camera space by projecting onto surface of this object 

    :type:  Object 
    '''

    frame_method = None
    '''How the footage fits in the camera frame 

    :type:  enum in [‘STRETCH’, ‘FIT’, ‘CROP’], default ‘STRETCH’ 
    '''

    object = None
    '''Movie tracking object to follow (if empty, camera object is used) 

    :type:  string, default “”, (never None) 
    '''

    track = None
    '''Movie tracking track to follow 

    :type:  string, default “”, (never None) 
    '''

    use_3d_position = None
    '''Use 3D position of track to parent to 

    :type:  boolean, default False 
    '''

    use_active_clip = None
    '''Use active clip defined in scene 

    :type:  boolean, default False 
    '''

    use_undistorted_position = None
    '''Parent to undistorted position of 2D track 

    :type:  boolean, default False 
    '''


class FreestyleLineSet:
    '''Line set for associating lines and style parameters '''

    collection = None
    '''A collection of objects based on which feature edges are selected 

    :type:  Collection 
    '''

    collection_negation = None
    '''Specify either inclusion or exclusion of feature edges belonging to a collection of objects 

    :type:  enum in [‘INCLUSIVE’, ‘EXCLUSIVE’], default ‘INCLUSIVE’ 
    '''

    edge_type_combination = None
    '''Specify a logical combination of selection conditions on feature edge types 

    :type:  enum in [‘OR’, ‘AND’], default ‘OR’ 
    '''

    edge_type_negation = None
    '''Specify either inclusion or exclusion of feature edges selected by edge types 

    :type:  enum in [‘INCLUSIVE’, ‘EXCLUSIVE’], default ‘INCLUSIVE’ 
    '''

    exclude_border = None
    '''Exclude border edges 

    :type:  boolean, default False 
    '''

    exclude_contour = None
    '''Exclude contours 

    :type:  boolean, default False 
    '''

    exclude_crease = None
    '''Exclude crease edges 

    :type:  boolean, default False 
    '''

    exclude_edge_mark = None
    '''Exclude edge marks 

    :type:  boolean, default False 
    '''

    exclude_external_contour = None
    '''Exclude external contours 

    :type:  boolean, default False 
    '''

    exclude_material_boundary = None
    '''Exclude edges at material boundaries 

    :type:  boolean, default False 
    '''

    exclude_ridge_valley = None
    '''Exclude ridges and valleys 

    :type:  boolean, default False 
    '''

    exclude_silhouette = None
    '''Exclude silhouette edges 

    :type:  boolean, default False 
    '''

    exclude_suggestive_contour = None
    '''Exclude suggestive contours 

    :type:  boolean, default False 
    '''

    face_mark_condition = None
    '''Specify a feature edge selection condition based on face marks 

    :type:  enum in [‘ONE’, ‘BOTH’], default ‘ONE’ 
    '''

    face_mark_negation = None
    '''Specify either inclusion or exclusion of feature edges selected by face marks 

    :type:  enum in [‘INCLUSIVE’, ‘EXCLUSIVE’], default ‘INCLUSIVE’ 
    '''

    linestyle = None
    '''Line style settings 

    :type:  FreestyleLineStyle, (never None) 
    '''

    name = None
    '''Line set name 

    :type:  string, default “”, (never None) 
    '''

    qi_end = None
    '''Last QI value of the QI range 

    :type:  int in [0, inf], default 0 
    '''

    qi_start = None
    '''First QI value of the QI range 

    :type:  int in [0, inf], default 0 
    '''

    select_border = None
    '''Select border edges (open mesh edges) 

    :type:  boolean, default False 
    '''

    select_by_collection = None
    '''Select feature edges based on a collection of objects 

    :type:  boolean, default False 
    '''

    select_by_edge_types = None
    '''Select feature edges based on edge types 

    :type:  boolean, default False 
    '''

    select_by_face_marks = None
    '''Select feature edges by face marks 

    :type:  boolean, default False 
    '''

    select_by_image_border = None
    '''Select feature edges by image border (less memory consumption) 

    :type:  boolean, default False 
    '''

    select_by_visibility = None
    '''Select feature edges based on visibility 

    :type:  boolean, default False 
    '''

    select_contour = None
    '''Select contours (outer silhouettes of each object) 

    :type:  boolean, default False 
    '''

    select_crease = None
    '''Select crease edges (those between two faces making an angle smaller than the Crease Angle) 

    :type:  boolean, default False 
    '''

    select_edge_mark = None
    '''Select edge marks (edges annotated by Freestyle edge marks) 

    :type:  boolean, default False 
    '''

    select_external_contour = None
    '''Select external contours (outer silhouettes of occluding and occluded objects) 

    :type:  boolean, default False 
    '''

    select_material_boundary = None
    '''Select edges at material boundaries 

    :type:  boolean, default False 
    '''

    select_ridge_valley = None
    '''Select ridges and valleys (boundary lines between convex and concave areas of surface) 

    :type:  boolean, default False 
    '''

    select_silhouette = None
    '''Select silhouettes (edges at the boundary of visible and hidden faces) 

    :type:  boolean, default False 
    '''

    select_suggestive_contour = None
    '''Select suggestive contours (almost silhouette/contour edges) 

    :type:  boolean, default False 
    '''

    show_render = None
    '''Enable or disable this line set during stroke rendering 

    :type:  boolean, default False 
    '''

    visibility = None
    '''Determine how to use visibility for feature edge selection 

    :type:  enum in [‘VISIBLE’, ‘HIDDEN’, ‘RANGE’], default ‘VISIBLE’ 
    '''


class FreestyleLineStyle:
    '''Freestyle line style, reusable by multiple line sets '''

    active_texture = None
    '''Active texture slot being displayed 

    :type:  Texture 
    '''

    active_texture_index = None
    '''Index of active texture slot 

    :type:  int in [0, 17], default 0 
    '''

    alpha = None
    '''Base alpha transparency, possibly modified by alpha transparency modifiers 

    :type:  float in [0, 1], default 0.0 
    '''

    alpha_modifiers = None
    '''List of alpha transparency modifiers 

    :type:  LineStyleAlphaModifiers bpy_prop_collection of LineStyleAlphaModifier, (readonly) 
    '''

    angle_max = None
    '''Maximum 2D angle for splitting chains 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    angle_min = None
    '''Minimum 2D angle for splitting chains 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    caps = None
    '''Select the shape of both ends of strokes 

    :type:  enum in [‘BUTT’, ‘ROUND’, ‘SQUARE’], default ‘BUTT’ 
    '''

    chain_count = None
    '''Chain count for the selection of first N chains 

    :type:  int in [0, inf], default 0 
    '''

    chaining = None
    '''Select the way how feature edges are jointed to form chains 

    :type:  enum in [‘PLAIN’, ‘SKETCHY’], default ‘PLAIN’ 
    '''

    color = None
    '''Base line color, possibly modified by line color modifiers 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    color_modifiers = None
    '''List of line color modifiers 

    :type:  LineStyleColorModifiers bpy_prop_collection of LineStyleColorModifier, (readonly) 
    '''

    dash1 = None
    '''Length of the 1st dash for dashed lines 

    :type:  int in [0, 65535], default 0 
    '''

    dash2 = None
    '''Length of the 2nd dash for dashed lines 

    :type:  int in [0, 65535], default 0 
    '''

    dash3 = None
    '''Length of the 3rd dash for dashed lines 

    :type:  int in [0, 65535], default 0 
    '''

    gap1 = None
    '''Length of the 1st gap for dashed lines 

    :type:  int in [0, 65535], default 0 
    '''

    gap2 = None
    '''Length of the 2nd gap for dashed lines 

    :type:  int in [0, 65535], default 0 
    '''

    gap3 = None
    '''Length of the 3rd gap for dashed lines 

    :type:  int in [0, 65535], default 0 
    '''

    geometry_modifiers = None
    '''List of stroke geometry modifiers 

    :type:  LineStyleGeometryModifiers bpy_prop_collection of LineStyleGeometryModifier, (readonly) 
    '''

    integration_type = None
    '''Select the way how the sort key is computed for each chain 

    :type:  enum in [‘MEAN’, ‘MIN’, ‘MAX’, ‘FIRST’, ‘LAST’], default ‘MEAN’ 
    '''

    length_max = None
    '''Maximum curvilinear 2D length for the selection of chains 

    :type:  float in [0, 10000], default 0.0 
    '''

    length_min = None
    '''Minimum curvilinear 2D length for the selection of chains 

    :type:  float in [0, 10000], default 0.0 
    '''

    material_boundary = None
    '''If true, chains of feature edges are split at material boundaries 

    :type:  boolean, default False 
    '''

    node_tree = None
    '''Node tree for node-based shaders 

    :type:  NodeTree, (readonly) 
    '''

    panel = None
    '''Select the property panel to be shown 

    :type:  enum in [‘STROKES’, ‘COLOR’, ‘ALPHA’, ‘THICKNESS’, ‘GEOMETRY’, ‘TEXTURE’], default ‘STROKES’ 
    '''

    rounds = None
    '''Number of rounds in a sketchy multiple touch 

    :type:  int in [1, 1000], default 0 
    '''

    sort_key = None
    '''Select the sort key to determine the stacking order of chains 

    :type:  enum in [‘DISTANCE_FROM_CAMERA’, ‘2D_LENGTH’, ‘PROJECTED_X’, ‘PROJECTED_Y’], default ‘DISTANCE_FROM_CAMERA’ 
    '''

    sort_order = None
    '''Select the sort order 

    :type:  enum in [‘DEFAULT’, ‘REVERSE’], default ‘DEFAULT’ 
    '''

    split_dash1 = None
    '''Length of the 1st dash for splitting 

    :type:  int in [0, 65535], default 0 
    '''

    split_dash2 = None
    '''Length of the 2nd dash for splitting 

    :type:  int in [0, 65535], default 0 
    '''

    split_dash3 = None
    '''Length of the 3rd dash for splitting 

    :type:  int in [0, 65535], default 0 
    '''

    split_gap1 = None
    '''Length of the 1st gap for splitting 

    :type:  int in [0, 65535], default 0 
    '''

    split_gap2 = None
    '''Length of the 2nd gap for splitting 

    :type:  int in [0, 65535], default 0 
    '''

    split_gap3 = None
    '''Length of the 3rd gap for splitting 

    :type:  int in [0, 65535], default 0 
    '''

    split_length = None
    '''Curvilinear 2D length for chain splitting 

    :type:  float in [0, 10000], default 0.0 
    '''

    texture_slots = None
    '''Texture slots defining the mapping and influence of textures 

    :type:  LineStyleTextureSlots bpy_prop_collection of LineStyleTextureSlot, (readonly) 
    '''

    texture_spacing = None
    '''Spacing for textures along stroke length 

    :type:  float in [0.01, 100], default 0.0 
    '''

    thickness = None
    '''Base line thickness, possibly modified by line thickness modifiers 

    :type:  float in [0, 10000], default 0.0 
    '''

    thickness_modifiers = None
    '''List of line thickness modifiers 

    :type:  LineStyleThicknessModifiers bpy_prop_collection of LineStyleThicknessModifier, (readonly) 
    '''

    thickness_position = None
    '''Thickness position of silhouettes and border edges (applicable when plain chaining is used with the Same Object option) 

    :type:  enum in [‘CENTER’, ‘INSIDE’, ‘OUTSIDE’, ‘RELATIVE’], default ‘CENTER’ 
    '''

    thickness_ratio = None
    '''A number between 0 (inside) and 1 (outside) specifying the relative position of stroke thickness 

    :type:  float in [0, 1], default 0.0 
    '''

    use_angle_max = None
    '''Split chains at points with angles larger than the maximum 2D angle 

    :type:  boolean, default False 
    '''

    use_angle_min = None
    '''Split chains at points with angles smaller than the minimum 2D angle 

    :type:  boolean, default False 
    '''

    use_chain_count = None
    '''Enable the selection of first N chains 

    :type:  boolean, default False 
    '''

    use_chaining = None
    '''Enable chaining of feature edges 

    :type:  boolean, default False 
    '''

    use_dashed_line = None
    '''Enable or disable dashed line 

    :type:  boolean, default False 
    '''

    use_length_max = None
    '''Enable the selection of chains by a maximum 2D length 

    :type:  boolean, default False 
    '''

    use_length_min = None
    '''Enable the selection of chains by a minimum 2D length 

    :type:  boolean, default False 
    '''

    use_nodes = None
    '''Use shader nodes for the line style 

    :type:  boolean, default False 
    '''

    use_same_object = None
    '''If true, only feature edges of the same object are joined 

    :type:  boolean, default False 
    '''

    use_sorting = None
    '''Arrange the stacking order of strokes 

    :type:  boolean, default False 
    '''

    use_split_length = None
    '''Enable chain splitting by curvilinear 2D length 

    :type:  boolean, default False 
    '''

    use_split_pattern = None
    '''Enable chain splitting by dashed line patterns 

    :type:  boolean, default False 
    '''

    use_texture = None
    '''Enable or disable textured strokes 

    :type:  boolean, default False 
    '''


class FreestyleModuleSettings:
    '''Style module configuration for specifying a style module '''

    script = None
    '''Python script to define a style module 

    :type:  Text 
    '''

    use = None
    '''Enable or disable this style module during stroke rendering 

    :type:  boolean, default False 
    '''


class FreestyleModules:
    '''A list of style modules (to be applied from top to bottom) '''

    def new(self):
        '''Add a style module to scene render layer Freestyle settings 

        :rtype: FreestyleModuleSettings 
        :return:  Newly created style module 
        '''
        pass

    def remove(self, module):
        '''Remove a style module from scene render layer Freestyle settings 

        :param module: Style module to remove 
        :type module: FreestyleModuleSettings, (never None)
        '''
        pass


class FreestyleSettings:
    '''Freestyle settings for a ViewLayer data-block '''

    crease_angle = None
    '''Angular threshold for detecting crease edges 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    kr_derivative_epsilon = None
    '''Kr derivative epsilon for computing suggestive contours 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    linesets = None
    '''

    :type:  Linesets bpy_prop_collection of FreestyleLineSet, (readonly) 
    '''

    mode = None
    '''Select the Freestyle control mode 

    :type:  enum in [‘SCRIPT’, ‘EDITOR’], default ‘SCRIPT’ 
    '''

    modules = None
    '''A list of style modules (to be applied from top to bottom) 

    :type:  FreestyleModules bpy_prop_collection of FreestyleModuleSettings, (readonly) 
    '''

    sphere_radius = None
    '''Sphere radius for computing curvatures 

    :type:  float in [0, 1000], default 0.0 
    '''

    use_advanced_options = None
    '''Enable advanced edge detection options (sphere radius and Kr derivative epsilon) 

    :type:  boolean, default False 
    '''

    use_culling = None
    '''If enabled, out-of-view edges are ignored 

    :type:  boolean, default False 
    '''

    use_material_boundaries = None
    '''Enable material boundaries 

    :type:  boolean, default False 
    '''

    use_ridges_and_valleys = None
    '''Enable ridges and valleys 

    :type:  boolean, default False 
    '''

    use_smoothness = None
    '''Take face smoothness into account in view map calculation 

    :type:  boolean, default False 
    '''

    use_suggestive_contours = None
    '''Enable suggestive contours 

    :type:  boolean, default False 
    '''

    use_view_map_cache = None
    '''Keep the computed view map and avoid re-calculating it if mesh geometry is unchanged 

    :type:  boolean, default False 
    '''


class Function:
    '''RNA function definition '''

    description = None
    '''Description of the Function’s purpose 

    :type:  string, default “”, (readonly, never None) 
    '''

    identifier = None
    '''Unique name used in the code and scripting 

    :type:  string, default “”, (readonly, never None) 
    '''

    is_registered = None
    '''Function is registered as callback as part of type registration 

    :type:  boolean, default False, (readonly) 
    '''

    is_registered_optional = None
    '''Function is optionally registered as callback part of type registration 

    :type:  boolean, default False, (readonly) 
    '''

    parameters = None
    '''Parameters for the function 

    :type:  bpy_prop_collection of Property, (readonly) 
    '''

    use_self = None
    '''Function does not pass its self as an argument (becomes a static method in python) 

    :type:  boolean, default False, (readonly) 
    '''

    use_self_type = None
    '''Function passes its self type as an argument (becomes a class method in python if use_self is false) 

    :type:  boolean, default False, (readonly) 
    '''


class GPENCIL_UL_annotation_layer:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class GPENCIL_UL_layer:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class GPENCIL_UL_matslots:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class GPENCIL_UL_vgroups:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class GPUDOFSettings:
    '''Settings for GPU based depth of field '''

    blades = None
    '''Blades for dof effect 

    :type:  int in [0, 16], default 0 
    '''

    focal_length = None
    '''Focal length for dof effect 

    :type:  float in [1, inf], default 0.0 
    '''

    focus_distance = None
    '''Viewport depth of field focus distance 

    :type:  float in [0, inf], default 0.0 
    '''

    fstop = None
    '''F-stop for dof effect 

    :type:  float in [0, inf], default 128.0 
    '''

    ratio = None
    '''Distortion to simulate anamorphic lens bokeh 

    :type:  float in [0.01, inf], default 1.0 
    '''

    rotation = None
    '''Rotation of blades in aperture 

    :type:  float in [-3.14159, 3.14159], default 0.0 
    '''

    sensor = None
    '''Size of sensor 

    :type:  float in [1, inf], default 0.0 
    '''


class GPUFXSettings:
    '''Settings for GPU based compositing '''

    dof = None
    '''

    :type:  GPUDOFSettings, (readonly, never None) 
    '''

    ssao = None
    '''

    :type:  GPUSSAOSettings, (readonly, never None) 
    '''

    use_dof = None
    '''Use depth of field on viewport using the values from active camera 

    :type:  boolean, default False 
    '''

    use_ssao = None
    '''Use screen space ambient occlusion of field on viewport 

    :type:  boolean, default False 
    '''


class GPUSSAOSettings:
    '''Settings for GPU based screen space ambient occlusion '''

    attenuation = None
    '''Attenuation constant 

    :type:  float in [1, 100000], default 0.0 
    '''

    color = None
    '''Color for screen space ambient occlusion effect 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    distance_max = None
    '''Distance of object that contribute to the SSAO effect 

    :type:  float in [0, 100000], default 0.0 
    '''

    factor = None
    '''Strength of the SSAO effect 

    :type:  float in [0, 250], default 0.0 
    '''

    samples = None
    '''Number of samples 

    :type:  int in [1, 500], default 0 
    '''


class GPencilFrame:
    '''Collection of related sketches on a particular frame '''

    frame_number = None
    '''The frame on which this sketch appears 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    is_edited = None
    '''Frame is being edited (painted on) 

    :type:  boolean, default False 
    '''

    select = None
    '''Frame is selected for editing in the Dope Sheet 

    :type:  boolean, default False 
    '''

    strokes = None
    '''Freehand curves defining the sketch on this frame 

    :type:  GPencilStrokes bpy_prop_collection of GPencilStroke, (readonly) 
    '''

    def clear(self):
        '''Remove all the grease pencil frame data 

        '''
        pass


class GPencilFrames:
    '''Collection of grease pencil frames '''

    def new(self, frame_number):
        '''Add a new grease pencil frame 

        :param frame_number: Frame Number, The frame on which this sketch appears 
        :type frame_number: int in [-1048574, 1048574]
        :rtype: GPencilFrame 
        :return:  The newly created frame 
        '''
        pass

    def remove(self, frame):
        '''Remove a grease pencil frame 

        :param frame: Frame, The frame to remove 
        :type frame: GPencilFrame, (never None)
        '''
        pass

    def copy(self, source):
        '''Copy a grease pencil frame 

        :param source: Source, The source frame 
        :type source: GPencilFrame, (never None)
        :rtype: GPencilFrame 
        :return:  The newly copied frame 
        '''
        pass


class GPencilInterpolateSettings:
    '''Settings for Grease Pencil interpolation tools '''

    amplitude = None
    '''Amount to boost elastic bounces for ‘elastic’ easing 

    :type:  float in [0, inf], default 0.0 
    '''

    back = None
    '''Amount of overshoot for ‘back’ easing 

    :type:  float in [-inf, inf], default 0.0 
    '''

    easing = None
    '''Which ends of the segment between the preceding and following grease pencil frames easing interpolation is applied to 

    :type:  enum in [‘AUTO’, ‘EASE_IN’, ‘EASE_OUT’, ‘EASE_IN_OUT’], default ‘AUTO’ 
    '''

    interpolate_all_layers = None
    '''Interpolate all layers, not only active 

    :type:  boolean, default False 
    '''

    interpolate_selected_only = None
    '''Interpolate only selected strokes in the original frame 

    :type:  boolean, default False 
    '''

    interpolation_curve = None
    '''Custom curve to control ‘sequence’ interpolation between Grease Pencil frames 

    :type:  CurveMapping, (readonly) 
    '''

    period = None
    '''Time between bounces for elastic easing 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Interpolation method to use the next time ‘Interpolate Sequence’ is run 

    :type:  enum in [‘LINEAR’, ‘CUSTOM’, ‘SINE’, ‘QUAD’, ‘CUBIC’, ‘QUART’, ‘QUINT’, ‘EXPO’, ‘CIRC’, ‘BACK’, ‘BOUNCE’, ‘ELASTIC’], default ‘LINEAR’ 
    '''


class GPencilLayer:
    '''Collection of related sketches '''

    active_frame = None
    '''Frame currently being displayed for this layer 

    :type:  GPencilFrame, (readonly) 
    '''

    annotation_hide = None
    '''Set annotation Visibility 

    :type:  boolean, default False 
    '''

    annotation_onion_after_color = None
    '''Base color for ghosts after the active frame 

    :type:  float array of 3 items in [0, 1], default (0.25, 0.1, 1.0) 
    '''

    annotation_onion_after_range = None
    '''Maximum number of frames to show after current frame 

    :type:  int in [-1, 120], default 0 
    '''

    annotation_onion_before_color = None
    '''Base color for ghosts before the active frame 

    :type:  float array of 3 items in [0, 1], default (0.302, 0.851, 0.302) 
    '''

    annotation_onion_before_range = None
    '''Maximum number of frames to show before current frame 

    :type:  int in [-1, 120], default 0 
    '''

    blend_mode = None
    '''Blend mode 

    :type:  enum in [‘NORMAL’, ‘OVERLAY’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’], default ‘NORMAL’ 
    '''

    channel_color = None
    '''Custom color for animation channel in Dopesheet 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    clamp_layer = None
    '''Clamp any pixel outside underlying layers drawing 

    :type:  boolean, default False 
    '''

    color = None
    '''Color for all strokes in this layer 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    frames = None
    '''Sketches for this layer on different frames 

    :type:  GPencilFrames bpy_prop_collection of GPencilFrame, (readonly) 
    '''

    hide = None
    '''Set layer Visibility 

    :type:  boolean, default False 
    '''

    info = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    is_parented = None
    '''True when the layer parent object is set 

    :type:  boolean, default False, (readonly) 
    '''

    line_change = None
    '''Thickness change to apply to current strokes (in pixels) 

    :type:  int in [-300, 300], default 0 
    '''

    lock = None
    '''Protect layer from further editing and/or frame changes 

    :type:  boolean, default False 
    '''

    lock_frame = None
    '''Lock current frame displayed by layer 

    :type:  boolean, default False 
    '''

    lock_material = None
    '''Disable Material editing 

    :type:  boolean, default False 
    '''

    matrix_inverse = None
    '''Parent inverse transformation matrix 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    opacity = None
    '''Layer Opacity 

    :type:  float in [0, 1], default 0.0 
    '''

    parent = None
    '''Parent Object 

    :type:  Object 
    '''

    parent_bone = None
    '''Name of parent bone in case of a bone parenting relation 

    :type:  string, default “”, (never None) 
    '''

    parent_type = None
    '''Type of parent relation 

    :type:  enum in [‘OBJECT’, ‘ARMATURE’, ‘BONE’], default ‘OBJECT’ 
    '''

    pass_index = None
    '''Index number for the “Layer Index” pass 

    :type:  int in [0, 32767], default 0 
    '''

    select = None
    '''Layer is selected for editing in the Dope Sheet 

    :type:  boolean, default False 
    '''

    show_in_front = None
    '''Make the layer draw in front of objects 

    :type:  boolean, default False 
    '''

    show_points = None
    '''Draw the points which make up the strokes (for debugging purposes) 

    :type:  boolean, default False 
    '''

    thickness = None
    '''Thickness of annotation strokes 

    :type:  int in [1, 10], default 0 
    '''

    tint_color = None
    '''Color for tinting stroke colors 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    tint_factor = None
    '''Factor of tinting color 

    :type:  float in [0, 1], default 0.0 
    '''

    use_annotation_onion_skinning = None
    '''Display annotation onion skins before and after the current frame 

    :type:  boolean, default False 
    '''

    use_onion_skinning = None
    '''Display onion skins before and after the current frame 

    :type:  boolean, default False 
    '''

    use_solo_mode = None
    '''In Paint mode display only layers with keyframe in current frame 

    :type:  boolean, default False 
    '''

    viewlayer_render = None
    '''Only include Layer in this View Layer render output (leave blank to include always) 

    :type:  string, default “”, (never None) 
    '''

    def clear(self):
        '''Remove all the grease pencil layer data 

        '''
        pass


class GPencilSculptBrush:
    '''Stroke editing brush '''

    cursor_color_add = None
    '''Color for the cursor for addition 

    :type:  float array of 3 items in [0, 1], default (1.0, 0.6, 0.6) 
    '''

    cursor_color_sub = None
    '''Color for the cursor for subtraction 

    :type:  float array of 3 items in [0, 1], default (0.6, 0.6, 1.0) 
    '''

    direction = None
    '''

    :type:  enum in [‘ADD’, ‘SUBTRACT’], default ‘ADD’ 
    '''

    size = None
    '''Radius of the brush in pixels 

    :type:  int in [1, 1000], default 0 
    '''

    strength = None
    '''Brush strength 

    :type:  float in [0.001, 1], default 0.0 
    '''

    use_cursor = None
    '''Enable cursor on screen 

    :type:  boolean, default True 
    '''

    use_edit_pressure = None
    '''Affect pressure values as well when smoothing strokes 

    :type:  boolean, default False 
    '''

    use_falloff = None
    '''Strength of brush decays with distance from cursor 

    :type:  boolean, default False 
    '''

    use_pressure_radius = None
    '''Enable tablet pressure sensitivity for radius 

    :type:  boolean, default False 
    '''

    use_pressure_strength = None
    '''Enable tablet pressure sensitivity for strength 

    :type:  boolean, default False 
    '''

    weight = None
    '''Target weight 

    :type:  float in [0, 1], default 0.0 
    '''


class GPencilSculptGuide:
    '''Guides for drawing '''

    angle = None
    '''Direction of lines 

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    angle_snap = None
    '''Angle snapping 

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    location = None
    '''Custom reference point for guides 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    reference_object = None
    '''Object used for reference point 

    :type:  Object 
    '''

    reference_point = None
    '''Type of speed guide 

    :type:  enum in [‘CURSOR’, ‘CUSTOM’, ‘OBJECT’], default ‘CURSOR’ 
    '''

    spacing = None
    '''Guide spacing 

    :type:  float in [0, inf], default 0.01 
    '''

    type = None
    '''Type of speed guide 

    :type:  enum in [‘CIRCULAR’, ‘RADIAL’, ‘PARALLEL’, ‘GRID’], default ‘CIRCULAR’ 
    '''

    use_guide = None
    '''Enable speed guides 

    :type:  boolean, default False 
    '''

    use_snapping = None
    '''Enable snapping to guides angle or spacing options 

    :type:  boolean, default False 
    '''


class GPencilSculptSettings:
    '''Properties for Grease Pencil stroke sculpting tool '''

    brush = None
    '''

    :type:  GPencilSculptBrush, (readonly) 
    '''

    guide = None
    '''

    :type:  GPencilSculptGuide, (readonly) 
    '''

    intersection_threshold = None
    '''Threshold for stroke intersections 

    :type:  float in [0, 10], default 0.1 
    '''

    lock_axis = None
    '''

    :type:  enum in [‘VIEW’, ‘AXIS_Y’, ‘AXIS_X’, ‘AXIS_Z’, ‘CURSOR’], default ‘VIEW’ 
    '''

    multiframe_falloff_curve = None
    '''Custom curve to control falloff of brush effect by Grease Pencil frames 

    :type:  CurveMapping, (readonly) 
    '''

    sculpt_tool = None
    '''

    :type:  enum in [‘SMOOTH’, ‘THICKNESS’, ‘STRENGTH’, ‘RANDOMIZE’, ‘GRAB’, ‘PUSH’, ‘TWIST’, ‘PINCH’, ‘CLONE’], default ‘SMOOTH’ 
    '''

    thickness_primitive_curve = None
    '''Custom curve to control primitive thickness 

    :type:  CurveMapping, (readonly) 
    '''

    use_edit_position = None
    '''The brush affects the position of the point 

    :type:  boolean, default False 
    '''

    use_edit_strength = None
    '''The brush affects the color strength of the point 

    :type:  boolean, default False 
    '''

    use_edit_thickness = None
    '''The brush affects the thickness of the point 

    :type:  boolean, default False 
    '''

    use_edit_uv = None
    '''The brush affects the UV rotation of the point 

    :type:  boolean, default False 
    '''

    use_multiframe_falloff = None
    '''Use falloff effect when edit in multiframe mode to compute brush effect by frame 

    :type:  boolean, default False 
    '''

    use_select_mask = None
    '''Only sculpt selected stroke points 

    :type:  boolean, default False 
    '''

    use_thickness_curve = None
    '''Use curve to define primitive stroke thickness 

    :type:  boolean, default False 
    '''

    weight_tool = None
    '''Tool for weight painting 

    :type:  enum in [‘WEIGHT’], default ‘WEIGHT’ 
    '''


class GPencilStroke:
    '''Freehand curve defining part of a sketch '''

    display_mode = None
    '''Coordinate space that stroke is in 

    :type:  enum in [‘SCREEN’, ‘3DSPACE’, ‘2DSPACE’, ‘2DIMAGE’], default ‘SCREEN’ 
    '''

    draw_cyclic = None
    '''Enable cyclic drawing, closing the stroke 

    :type:  boolean, default False 
    '''

    end_cap_mode = None
    '''Stroke end extreme cap style 

    :type:  enum in [‘ROUND’, ‘FLAT’], default ‘ROUND’ 
    '''

    gradient_factor = None
    '''Amount of gradient along section of stroke 

    :type:  float in [0.001, 1], default 1.0 
    '''

    gradient_shape = None
    '''

    :type:  float array of 2 items in [0.01, 1], default (1.0, 1.0) 
    '''

    groups = None
    '''Weights for the vertex groups this vertex is member of 

    :type:  bpy_prop_collection of GpencilVertexGroupElement, (readonly) 
    '''

    is_nofill_stroke = None
    '''Special stroke to use as boundary for filling areas 

    :type:  boolean, default False, (readonly) 
    '''

    line_width = None
    '''Thickness of stroke (in pixels) 

    :type:  int in [1, 1000], default 0 
    '''

    material_index = None
    '''Index of material used in this stroke 

    :type:  int in [-inf, inf], default 0 
    '''

    points = None
    '''Stroke data points 

    :type:  GPencilStrokePoints bpy_prop_collection of GPencilStrokePoint, (readonly) 
    '''

    select = None
    '''Stroke is selected for viewport editing 

    :type:  boolean, default False 
    '''

    start_cap_mode = None
    '''Stroke start extreme cap style 

    :type:  enum in [‘ROUND’, ‘FLAT’], default ‘ROUND’ 
    '''

    triangles = None
    '''Triangulation data for HQ fill 

    :type:  bpy_prop_collection of GPencilTriangle, (readonly) 
    '''


class GPencilStrokePoint:
    '''Data point for freehand stroke curve '''

    co = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    pressure = None
    '''Pressure of tablet at point when drawing it 

    :type:  float in [0, 1], default 0.0 
    '''

    select = None
    '''Point is selected for viewport editing 

    :type:  boolean, default False 
    '''

    strength = None
    '''Color intensity (alpha factor) 

    :type:  float in [0, 1], default 0.0 
    '''

    uv_factor = None
    '''Internal UV factor 

    :type:  float in [0, 1], default 0.0 
    '''

    uv_rotation = None
    '''Internal UV factor for dot mode 

    :type:  float in [0, 6.28319], default 0.0 
    '''


class GPencilStrokePoints:
    '''Collection of grease pencil stroke points '''

    def add(self, count, pressure=1.0, strength=1.0):
        '''Add a new grease pencil stroke point 

        :param count: Number, Number of points to add to the stroke 
        :type count: int in [0, inf]
        :param pressure: Pressure, Pressure for newly created points 
        :type pressure: float in [0, 1], (optional)
        :param strength: Strength, Color intensity (alpha factor) for newly created points 
        :type strength: float in [0, 1], (optional)
        '''
        pass

    def pop(self, index=-1):
        '''Remove a grease pencil stroke point 

        :param index: Index, point index 
        :type index: int in [-inf, inf], (optional)
        '''
        pass


class GPencilStrokes:
    '''Collection of grease pencil stroke '''

    def new(self):
        '''Add a new grease pencil stroke 

        :rtype: GPencilStroke 
        :return:  The newly created stroke 
        '''
        pass

    def remove(self, stroke):
        '''Remove a grease pencil stroke 

        :param stroke: Stroke, The stroke to remove 
        :type stroke: GPencilStroke, (never None)
        '''
        pass


class GPencilTriangle:
    '''Triangulation data for Grease Pencil fills '''

    uv1 = None
    '''First triangle vertex texture coordinates 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''

    uv2 = None
    '''Second triangle vertex texture coordinates 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''

    uv3 = None
    '''Third triangle vertex texture coordinates 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''

    v1 = None
    '''First triangle vertex index 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    v2 = None
    '''Second triangle vertex index 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    v3 = None
    '''Third triangle vertex index 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''


class GammaCrossSequence:
    '''Gamma Cross Sequence '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class GaussianBlurSequence:
    '''Sequence strip creating a gaussian blur '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    size_x = None
    '''Size of the blur along X axis 

    :type:  float in [0, inf], default 0.0 
    '''

    size_y = None
    '''Size of the blur along Y axis 

    :type:  float in [0, inf], default 0.0 
    '''


class Gizmo:
    '''Collection of gizmos '''

    alpha = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    alpha_highlight = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    color = None
    '''

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    color_highlight = None
    '''

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    group = None
    '''Gizmo group this gizmo is a member of 

    :type:  GizmoGroup, (readonly) 
    '''

    hide = None
    '''

    :type:  boolean, default False 
    '''

    hide_select = None
    '''

    :type:  boolean, default False 
    '''

    is_highlight = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    is_modal = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    line_width = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    matrix_basis = None
    '''

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    matrix_offset = None
    '''

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    matrix_space = None
    '''

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    matrix_world = None
    '''

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)), (readonly) 
    '''

    properties = None
    '''

    :type:  GizmoProperties, (readonly, never None) 
    '''

    scale_basis = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    select = None
    '''

    :type:  boolean, default False 
    '''

    use_draw_hover = None
    '''

    :type:  boolean, default False 
    '''

    use_draw_modal = None
    '''Draw while dragging 

    :type:  boolean, default False 
    '''

    use_draw_offset_scale = None
    '''Scale the offset matrix (use to apply screen-space offset) 

    :type:  boolean, default False 
    '''

    use_draw_scale = None
    '''Use scale when calculating the matrix 

    :type:  boolean, default False 
    '''

    use_draw_value = None
    '''Show an indicator for the current value while dragging 

    :type:  boolean, default False 
    '''

    use_grab_cursor = None
    '''

    :type:  boolean, default False 
    '''

    use_operator_tool_properties = None
    '''Merge active tool properties on activation (does not overwrite existing) 

    :type:  boolean, default False 
    '''

    use_select_background = None
    '''Don’t write into the depth buffer 

    :type:  boolean, default False 
    '''

    def draw(self, context):
        '''

        '''
        pass

    def draw_select(self, context, select_id=0):
        '''

        '''
        pass

    def test_select(self, context, location):
        '''

        :param location: Location, Region coordinates 
        :type location: int array of 2 items in [-inf, inf], (never None)
        :rtype: int in [-1, inf] 
        :return:  Use -1 to skip this gizmo 
        '''
        pass

    def modal(self, context, event, tweak):
        '''

        :param tweak: Tweak 
        :type tweak: enum set in {'PRECISE', 'SNAP'}
        :rtype: enum set in {‘RUNNING_MODAL’, ‘CANCELLED’, ‘FINISHED’, ‘PASS_THROUGH’, ‘INTERFACE’} 
        :return:  resultRUNNING_MODAL Running Modal, Keep the operator running with blender.CANCELLED Cancelled, When no action has been taken, operator exits.FINISHED Finished, When the operator is complete, operator exits.PASS_THROUGH Pass Through, Do nothing and pass the event on.INTERFACE Interface, Handled but not executed (popup menus). 
        '''
        pass

    def setup(self):
        '''

        '''
        pass

    def invoke(self, context, event):
        '''

        :rtype: enum set in {‘RUNNING_MODAL’, ‘CANCELLED’, ‘FINISHED’, ‘PASS_THROUGH’, ‘INTERFACE’} 
        :return:  resultRUNNING_MODAL Running Modal, Keep the operator running with blender.CANCELLED Cancelled, When no action has been taken, operator exits.FINISHED Finished, When the operator is complete, operator exits.PASS_THROUGH Pass Through, Do nothing and pass the event on.INTERFACE Interface, Handled but not executed (popup menus). 
        '''
        pass

    def exit(self, context, cancel):
        '''

        :param cancel: Cancel, otherwise confirm 
        :type cancel: boolean
        '''
        pass

    def select_refresh(self):
        '''

        '''
        pass

    def draw_preset_box(self, matrix, select_id=-1):
        '''Draw a box 

        :param matrix: The matrix to transform 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        :param select_id: Zero when not selecting 
        :type select_id: int in [-1, inf], (optional)
        '''
        pass

    def draw_preset_arrow(self, matrix, axis='POS_Z', select_id=-1):
        '''Draw a box 

        :param matrix: The matrix to transform 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        :param axis: Arrow Orientation 
        :type axis: enum in ['POS_X', 'POS_Y', 'POS_Z', 'NEG_X', 'NEG_Y', 'NEG_Z'], (optional)
        :param select_id: Zero when not selecting 
        :type select_id: int in [-1, inf], (optional)
        '''
        pass

    def draw_preset_circle(self, matrix, axis='POS_Z', select_id=-1):
        '''Draw a box 

        :param matrix: The matrix to transform 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        :param axis: Arrow Orientation 
        :type axis: enum in ['POS_X', 'POS_Y', 'POS_Z', 'NEG_X', 'NEG_Y', 'NEG_Z'], (optional)
        :param select_id: Zero when not selecting 
        :type select_id: int in [-1, inf], (optional)
        '''
        pass

    def draw_preset_facemap(self, object, face_map, select_id=-1):
        '''Draw the face-map of a mesh object 

        :param object: Object 
        :type object: Object, (never None)
        :param face_map: Face map index 
        :type face_map: int in [0, inf]
        :param select_id: Zero when not selecting 
        :type select_id: int in [-1, inf], (optional)
        '''
        pass

    def target_set_prop(self, target, data, property, index=-1):
        '''

        :param target: Target property 
        :type target: string, (never None)
        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def target_set_operator(self, operator, index=0):
        '''Operator to run when activating the gizmo (overrides property targets) 

        :param operator: Target operator 
        :type operator: string, (never None)
        :param index: Part index 
        :type index: int in [0, 255], (optional)
        :rtype: OperatorProperties 
        :return:  Operator properties to fill in 
        '''
        pass

    def target_is_valid(self, property):
        '''

        :param property: Property identifier 
        :type property: string, (never None)
        :rtype: boolean 
        '''
        pass

    def draw_custom_shape(self, shape, *, matrix=None, select_id=None):
        '''Draw a shape created form bpy.types.Gizmo.draw_custom_shape. 

        :param shape: The cached shape to draw. 
        :type shape: Undefined.
        :param matrix: 4x4 matrix, when not given bpy.types.Gizmo.matrix_world is used. 
        :type matrix: mathutils.Matrix
        :param select_id: The selection id. Only use when drawing within bpy.types.Gizmo.draw_select. 
        :type select_id: 
        '''
        pass

    def target_get_range(self, target):
        '''Get the range for this target property. 

        :param target: Target property name. 
        :type target: 
        :rtype: tuple pair. 
        :return:  The range of this property (min, max). 
        '''
        pass

    def target_get_value(self, target):
        '''Get the value of this target property. 

        :param target: Target property name. 
        :type target: string
        :rtype: Single value or array based on the target type 
        :return:  The value of the target property. 
        '''
        pass

    def target_set_handler(self, target, get, set, range=None):
        '''Assigns callbacks to a gizmos property. 

        :param get: Function that returns the value for this property (single value or sequence). 
        :type get: callable
        :param set: Function that takes a single value argument and applies it. 
        :type set: callable
        :param range: Function that returns a (min, max) tuple for gizmos that use a range. 
        :type range: callable
        '''
        pass

    def target_set_value(self, target):
        '''Set the value of this target property. 

        :param target: Target property name. 
        :type target: string
        '''
        pass


class GizmoGroup:
    '''Storage of an operator being executed, or registered after execution '''

    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_options = None
    '''Options for this operator type 

    :type:  enum set in {‘3D’, ‘SCALE’, ‘DEPTH_3D’, ‘SELECT’, ‘PERSISTENT’, ‘SHOW_MODAL_ALL’, ‘TOOL_INIT’}, default {‘3D’} 
    '''

    bl_owner_id = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_region_type = None
    '''The region where the panel is going to be used in 

    :type:  enum in [‘WINDOW’, ‘HEADER’, ‘CHANNELS’, ‘TEMPORARY’, ‘UI’, ‘TOOLS’, ‘TOOL_PROPS’, ‘PREVIEW’, ‘HUD’, ‘NAVIGATION_BAR’, ‘EXECUTE’, ‘FOOTER’], default ‘WINDOW’ 
    '''

    bl_space_type = None
    '''The space where the panel is going to be used in 

    :type:  enum in [‘EMPTY’, ‘VIEW_3D’, ‘IMAGE_EDITOR’, ‘NODE_EDITOR’, ‘SEQUENCE_EDITOR’, ‘CLIP_EDITOR’, ‘DOPESHEET_EDITOR’, ‘GRAPH_EDITOR’, ‘NLA_EDITOR’, ‘TEXT_EDITOR’, ‘CONSOLE’, ‘INFO’, ‘TOPBAR’, ‘STATUSBAR’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILE_BROWSER’, ‘PREFERENCES’], default ‘EMPTY’ 
    '''

    gizmos = None
    '''List of gizmos in the Gizmo Map 

    :type:  Gizmos bpy_prop_collection of Gizmo, (readonly) 
    '''

    has_reports = None
    '''GizmoGroup has a set of reports (warnings and errors) from last execution 

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    def setup(self, context):
        '''Create gizmos function for the gizmo group 

        '''
        pass

    def refresh(self, context):
        '''Refresh data (called on common state changes such as selection) 

        '''
        pass

    def draw_prepare(self, context):
        '''Run before each redraw 

        '''
        pass

    def invoke_prepare(self, context, gizmo):
        '''Run before invoke 

        '''
        pass


class GizmoGroupProperties:
    '''Input properties of a Gizmo Group '''

    pass


class GizmoProperties:
    '''Input properties of an Gizmo '''

    pass


class Gizmos:
    '''Collection of gizmos '''

    def new(self, type):
        '''Add gizmo 

        :param type: Gizmo identifier 
        :type type: string, (never None)
        :rtype: Gizmo 
        :return:  New gizmo 
        '''
        pass

    def remove(self, gizmo):
        '''Delete gizmo 

        :param gizmo: New gizmo 
        :type gizmo: Gizmo, (never None)
        '''
        pass

    def clear(self):
        '''Delete all gizmos 

        '''
        pass


class GlowSequence:
    '''Sequence strip creating a glow effect '''

    blur_radius = None
    '''Radius of glow effect 

    :type:  float in [0.5, 20], default 0.0 
    '''

    boost_factor = None
    '''Brightness multiplier 

    :type:  float in [0, 10], default 0.0 
    '''

    clamp = None
    '''Brightness limit of intensity 

    :type:  float in [0, 1], default 0.0 
    '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    quality = None
    '''Accuracy of the blur effect 

    :type:  int in [1, 5], default 0 
    '''

    threshold = None
    '''Minimum intensity to trigger a glow 

    :type:  float in [0, 1], default 0.0 
    '''

    use_only_boost = None
    '''Show the glow buffer only 

    :type:  boolean, default False 
    '''


class GpPaint:
    pass


class GpencilModifier:
    '''Modifier affecting the grease pencil object '''

    name = None
    '''Modifier name 

    :type:  string, default “”, (never None) 
    '''

    show_expanded = None
    '''Set modifier expanded in the user interface 

    :type:  boolean, default False 
    '''

    show_in_editmode = None
    '''Display modifier in Edit mode 

    :type:  boolean, default False 
    '''

    show_render = None
    '''Use modifier during render 

    :type:  boolean, default False 
    '''

    show_viewport = None
    '''Display modifier in viewport 

    :type:  boolean, default False 
    '''

    type = None
    '''

    :type:  enum in [‘GP_ARRAY’, ‘GP_BUILD’, ‘GP_MIRROR’, ‘GP_SIMPLIFY’, ‘GP_SUBDIV’, ‘GP_ARMATURE’, ‘GP_HOOK’, ‘GP_LATTICE’, ‘GP_NOISE’, ‘GP_OFFSET’, ‘GP_SMOOTH’, ‘GP_THICK’, ‘GP_TIME’, ‘GP_COLOR’, ‘GP_OPACITY’, ‘GP_TINT’], default ‘GP_ARRAY’, (readonly) 
    '''


class GpencilVertexGroupElement:
    '''Weight value of a vertex in a vertex group '''

    group = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    weight = None
    '''Vertex Weight 

    :type:  float in [0, 1], default 0.0 
    '''


class GreasePencil:
    '''Freehand annotation sketchbook '''

    after_color = None
    '''Base color for ghosts after the active frame 

    :type:  float array of 3 items in [0, 1], default (0.12549, 0.082353, 0.529412) 
    '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    before_color = None
    '''Base color for ghosts before the active frame 

    :type:  float array of 3 items in [0, 1], default (0.145098, 0.419608, 0.137255) 
    '''

    edit_line_color = None
    '''Color for editing line 

    :type:  float array of 4 items in [0, 1], default (0.6, 0.6, 0.6, 0.5) 
    '''

    ghost_after_range = None
    '''Maximum number of frames to show after current frame (0 = don’t show any frames after current) 

    :type:  int in [0, 120], default 1 
    '''

    ghost_before_range = None
    '''Maximum number of frames to show before current frame (0 = don’t show any frames before current) 

    :type:  int in [0, 120], default 1 
    '''

    grid = None
    '''Settings for grid and canvas in the 3D viewport 

    :type:  GreasePencilGrid, (readonly, never None) 
    '''

    is_stroke_paint_mode = None
    '''Draw Grease Pencil strokes on click/drag 

    :type:  boolean, default False, (readonly) 
    '''

    is_stroke_sculpt_mode = None
    '''Sculpt Grease Pencil strokes instead of viewport data 

    :type:  boolean, default False, (readonly) 
    '''

    is_stroke_weight_mode = None
    '''Grease Pencil weight paint 

    :type:  boolean, default False, (readonly) 
    '''

    layers = None
    '''

    :type:  GreasePencilLayers bpy_prop_collection of GPencilLayer, (readonly) 
    '''

    materials = None
    '''

    :type:  IDMaterials bpy_prop_collection of Material, (readonly) 
    '''

    onion_factor = None
    '''Change fade opacity of displayed onion frames 

    :type:  float in [0, 1], default 0.5 
    '''

    onion_mode = None
    '''Mode to display frames 

    :type:  enum in [‘ABSOLUTE’, ‘RELATIVE’, ‘SELECTED’], default ‘ABSOLUTE’ 
    '''

    pixel_factor = None
    '''Scale conversion factor for pixel size (use larger values for thicker lines) 

    :type:  float in [0.1, 30], default 0.0 
    '''

    show_stroke_direction = None
    '''Show stroke drawing direction with a bigger green dot (start) and smaller red dot (end) points 

    :type:  boolean, default False 
    '''

    stroke_depth_order = None
    '''Defines how the strokes are ordered in 3D space 

    :type:  enum in [‘2D’, ‘3D’], default ‘2D’ 
    '''

    stroke_thickness_space = None
    '''Set stroke thickness in screen space or world space 

    :type:  enum in [‘WORLDSPACE’, ‘SCREENSPACE’], default ‘WORLDSPACE’ 
    '''

    use_adaptive_uv = None
    '''Automatic UVs are calculated depending of the stroke size 

    :type:  boolean, default False 
    '''

    use_autolock_layers = None
    '''Lock automatically all layers except active one to avoid accidental changes 

    :type:  boolean, default False 
    '''

    use_force_fill_recalc = None
    '''Force recalc of fill data after use deformation modifiers (reduce FPS) 

    :type:  boolean, default False 
    '''

    use_ghost_custom_colors = None
    '''Use custom colors for ghost frames 

    :type:  boolean, default False 
    '''

    use_ghosts_always = None
    '''Ghosts are shown in renders and animation playback. Useful for special effects (e.g. motion blur) 

    :type:  boolean, default False 
    '''

    use_multiedit = None
    '''Edit strokes from multiple grease pencil keyframes at the same time (keyframes must be selected to be included) 

    :type:  boolean, default False 
    '''

    use_onion_fade = None
    '''Display onion keyframes with a fade in color transparency 

    :type:  boolean, default False 
    '''

    use_onion_loop = None
    '''Display first onion keyframes using next frame color to show indication of loop start frame 

    :type:  boolean, default False 
    '''

    use_onion_skinning = None
    '''Show ghosts of the keyframes before and after the current frame 

    :type:  boolean, default True 
    '''

    use_stroke_edit_mode = None
    '''Edit Grease Pencil strokes instead of viewport data 

    :type:  boolean, default False 
    '''

    zdepth_offset = None
    '''Offset amount when drawing in surface mode 

    :type:  float in [0, 1], default 0.0 
    '''

    def clear(self):
        '''Remove all the Grease Pencil data 

        '''
        pass


class GreasePencilGrid:
    '''Settings for grid and canvas in 3D viewport '''

    color = None
    '''Color for grid lines 

    :type:  float array of 3 items in [0, 1], default (0.5, 0.5, 0.5) 
    '''

    lines = None
    '''Number of subdivisions in each side of symmetry line 

    :type:  int in [0, inf], default 4 
    '''

    offset = None
    '''Offset of the canvas 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    scale = None
    '''Grid scale 

    :type:  float array of 2 items in [0.01, inf], default (1.0, 1.0) 
    '''


class GreasePencilLayers:
    '''Collection of grease pencil layers '''

    active = None
    '''Active grease pencil layer 

    :type:  GPencilLayer 
    '''

    active_index = None
    '''Index of active grease pencil layer 

    :type:  int in [0, inf], default 0 
    '''

    active_note = None
    '''Note/Layer to add annotation strokes to 

    :type:  enum in [‘DEFAULT’], default ‘DEFAULT’ 
    '''

    def new(self, name, set_active=True):
        '''Add a new grease pencil layer 

        :param name: Name, Name of the layer 
        :type name: string, (never None)
        :param set_active: Set Active, Set the newly created layer to the active layer 
        :type set_active: boolean, (optional)
        :rtype: GPencilLayer 
        :return:  The newly created layer 
        '''
        pass

    def remove(self, layer):
        '''Remove a grease pencil layer 

        :param layer: The layer to remove 
        :type layer: GPencilLayer, (never None)
        '''
        pass

    def move(self, layer, type):
        '''Move a grease pencil layer in the layer stack 

        :param layer: The layer to move 
        :type layer: GPencilLayer, (never None)
        :param type: Direction of movement 
        :type type: enum in ['UP', 'DOWN']
        '''
        pass


class Header:
    '''Editor header containing UI elements '''

    bl_idname = None
    '''If this is set, the header gets a custom ID, otherwise it takes the name of the class used to define the panel; for example, if the class name is “OBJECT_HT_hello”, and bl_idname is not set by the script, then bl_idname = “OBJECT_HT_hello” 

    :type:  string, default “”, (never None) 
    '''

    bl_region_type = None
    '''The region where the header is going to be used in (defaults to header region) 

    :type:  enum in [‘WINDOW’, ‘HEADER’, ‘CHANNELS’, ‘TEMPORARY’, ‘UI’, ‘TOOLS’, ‘TOOL_PROPS’, ‘PREVIEW’, ‘HUD’, ‘NAVIGATION_BAR’, ‘EXECUTE’, ‘FOOTER’], default ‘HEADER’ 
    '''

    bl_space_type = None
    '''The space where the header is going to be used in 

    :type:  enum in [‘EMPTY’, ‘VIEW_3D’, ‘IMAGE_EDITOR’, ‘NODE_EDITOR’, ‘SEQUENCE_EDITOR’, ‘CLIP_EDITOR’, ‘DOPESHEET_EDITOR’, ‘GRAPH_EDITOR’, ‘NLA_EDITOR’, ‘TEXT_EDITOR’, ‘CONSOLE’, ‘INFO’, ‘TOPBAR’, ‘STATUSBAR’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILE_BROWSER’, ‘PREFERENCES’], default ‘EMPTY’ 
    '''

    layout = None
    '''Structure of the header in the UI 

    :type:  UILayout, (readonly) 
    '''

    def draw(self, context):
        '''Draw UI elements into the header UI layout 

        '''
        pass


class Histogram:
    '''Statistical view of the levels of color in an image '''

    mode = None
    '''Channels to display when drawing the histogram 

    :type:  enum in [‘LUMA’, ‘RGB’, ‘R’, ‘G’, ‘B’, ‘A’], default ‘LUMA’ 
    '''

    show_line = None
    '''Display lines rather than filled shapes 

    :type:  boolean, default False 
    '''


class HookGpencilModifier:
    '''Hook modifier to modify the location of stroke points '''

    center = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    falloff_curve = None
    '''Custom Light Falloff Curve 

    :type:  CurveMapping, (readonly) 
    '''

    falloff_radius = None
    '''If not zero, the distance from the hook where influence ends 

    :type:  float in [0, inf], default 0.0 
    '''

    falloff_type = None
    '''

    :type:  enum in [‘NONE’, ‘CURVE’, ‘SMOOTH’, ‘SPHERE’, ‘ROOT’, ‘INVERSE_SQUARE’, ‘SHARP’, ‘LINEAR’, ‘CONSTANT’], default ‘NONE’ 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_vertex = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    matrix_inverse = None
    '''Reverse the transformation between this object and its target 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    object = None
    '''Parent Object for hook, also recalculates and clears offset 

    :type:  Object 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    strength = None
    '''Relative force of the hook 

    :type:  float in [0, 1], default 0.0 
    '''

    subtarget = None
    '''Name of Parent Bone for hook (if applicable), also recalculates and clears offset 

    :type:  string, default “”, (never None) 
    '''

    use_falloff_uniform = None
    '''Compensate for non-uniform object scale 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name for modulating the deform 

    :type:  string, default “”, (never None) 
    '''


class HookModifier:
    '''Hook modifier to modify the location of vertices '''

    center = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    falloff_curve = None
    '''Custom falloff curve 

    :type:  CurveMapping, (readonly) 
    '''

    falloff_radius = None
    '''If not zero, the distance from the hook where influence ends 

    :type:  float in [0, inf], default 0.0 
    '''

    falloff_type = None
    '''

    :type:  enum in [‘NONE’, ‘CURVE’, ‘SMOOTH’, ‘SPHERE’, ‘ROOT’, ‘INVERSE_SQUARE’, ‘SHARP’, ‘LINEAR’, ‘CONSTANT’], default ‘NONE’ 
    '''

    matrix_inverse = None
    '''Reverse the transformation between this object and its target 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    object = None
    '''Parent Object for hook, also recalculates and clears offset 

    :type:  Object 
    '''

    strength = None
    '''Relative force of the hook 

    :type:  float in [0, 1], default 0.0 
    '''

    subtarget = None
    '''Name of Parent Bone for hook (if applicable), also recalculates and clears offset 

    :type:  string, default “”, (never None) 
    '''

    use_falloff_uniform = None
    '''Compensate for non-uniform object scale 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines influence of modifier per point 

    :type:  string, default “”, (never None) 
    '''


class HueCorrectModifier:
    '''Hue correction modifier for sequence strip '''

    curve_mapping = None
    '''

    :type:  CurveMapping, (readonly) 
    '''


class ID:
    '''Base type for data-blocks, defining a unique name, linking from other libraries and garbage collection '''

    is_evaluated = None
    '''Whether this ID is runtime-only, evaluated data-block, or actual data from .blend file 

    :type:  boolean, default False, (readonly) 
    '''

    is_library_indirect = None
    '''Is this ID block linked indirectly 

    :type:  boolean, default False, (readonly) 
    '''

    library = None
    '''Library file the data-block is linked from 

    :type:  Library, (readonly) 
    '''

    name = None
    '''Unique data-block ID name 

    :type:  string, default “”, (never None) 
    '''

    name_full = None
    '''Unique data-block ID name, including library one is any 

    :type:  string, default “”, (readonly, never None) 
    '''

    original = None
    '''Actual data-block from .blend file (Main database) that generated that evaluated one 

    :type:  ID, (readonly) 
    '''

    override_static = None
    '''Static override data 

    :type:  IDOverrideStatic, (readonly) 
    '''

    preview = None
    '''Preview image and icon of this data-block (None if not supported for this type of data) 

    :type:  ImagePreview, (readonly) 
    '''

    tag = None
    '''Tools can use this to tag data for their own purposes (initial state is undefined) 

    :type:  boolean, default False 
    '''

    use_fake_user = None
    '''Save this data-block even if it has no users 

    :type:  boolean, default False 
    '''

    users = None
    '''Number of times this data-block is referenced 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    def copy(self):
        '''Create a copy of this data-block (not supported for all data-blocks) 

        :rtype: ID 
        :return:  New copy of the ID 
        '''
        pass

    def override_create(self):
        '''Create an overridden local copy of this linked data-block (not supported for all data-blocks) 

        :rtype: ID 
        :return:  New overridden local copy of the ID 
        '''
        pass

    def user_clear(self):
        '''This function is for advanced use only, misuse can crash blender since the user count is used to prevent data being removed when it is used. 

        '''
        pass

    def user_remap(self, new_id):
        '''Replace all usage in the .blend file of this ID by new given one 

        :param new_id: New ID to use 
        :type new_id: ID, (never None)
        '''
        pass

    def make_local(self, clear_proxy=True):
        '''Make this datablock local, return local one (may be a copy of the original, in case it is also indirectly used) 

        :param clear_proxy: Whether to clear proxies (the default behavior, note that if object has to be duplicated to be made local, proxies are always cleared) 
        :type clear_proxy: boolean, (optional)
        :rtype: ID 
        :return:  This ID, or the new ID if it was copied 
        '''
        pass

    def user_of_id(self, id):
        '''Count the number of times that ID uses/references given one 

        :param id: ID to count usages 
        :type id: ID, (never None)
        :rtype: int in [0, inf] 
        :return:  Number of usages/references of given id by current data-block 
        '''
        pass

    def animation_data_create(self):
        '''Create animation data to this ID, note that not all ID types support this 

        :rtype: AnimData 
        :return:  New animation data or NULL 
        '''
        pass

    def animation_data_clear(self):
        '''Clear animation on this this ID 

        '''
        pass

    def update_tag(self, refresh={}):
        '''Tag the ID to update its display data, e.g. when calling bpy.types.Scene.update 

        :param refresh: Type of updates to perform 
        :type refresh: enum set in {'OBJECT', 'DATA', 'TIME'}, (optional)
        '''
        pass


class IDMaterials:
    '''Collection of materials '''

    def append(self, material):
        '''Add a new material to the data-block 

        :param material: Material to add 
        :type material: Material
        '''
        pass

    def pop(self, index=-1, update_data=False):
        '''Remove a material from the data-block 

        :param index: Index of material to remove 
        :type index: int in [-32766, 32766], (optional)
        :param update_data: Update data by re-adjusting the material slots assigned 
        :type update_data: boolean, (optional)
        :rtype: Material 
        :return:  Material to remove 
        '''
        pass

    def clear(self, update_data=False):
        '''Remove all materials from the data-block 

        :param update_data: Update data by re-adjusting the material slots assigned 
        :type update_data: boolean, (optional)
        '''
        pass


class IDOverrideStatic:
    '''Struct gathering all data needed by statically overridden IDs '''

    auto_generate = None
    '''Automatically generate overriding operations by detecting changes in properties 

    :type:  boolean, default True 
    '''

    properties = None
    '''List of overridden properties 

    :type:  bpy_prop_collection of IDOverrideStaticProperty, (readonly) 
    '''

    reference = None
    '''Linked ID used as reference by this override 

    :type:  ID, (readonly) 
    '''


class IDOverrideStaticProperty:
    '''Description of an overridden property '''

    operations = None
    '''List of overriding operations for a property 

    :type:  bpy_prop_collection of IDOverrideStaticPropertyOperation, (readonly) 
    '''

    rna_path = None
    '''RNA path leading to that property, from owning ID 

    :type:  string, default “”, (readonly, never None) 
    '''


class IDOverrideStaticPropertyOperation:
    '''Description of an override operation over an overridden property '''

    flag = None
    '''Optional flags (NOT USED) 

    :type:  enum in [‘MANDATORY’, ‘LOCKED’], default ‘MANDATORY’, (readonly) 
    '''

    operation = None
    '''What override operation is performed 

    :type:  enum in [‘NOOP’, ‘REPLACE’, ‘DIFF_ADD’, ‘DIFF_SUB’, ‘FACT_MULTIPLY’, ‘INSERT_AFTER’, ‘INSERT_BEFORE’], default ‘REPLACE’, (readonly) 
    '''

    subitem_local_index = None
    '''Used to handle insertions into collection 

    :type:  int in [-1, inf], default -1, (readonly) 
    '''

    subitem_local_name = None
    '''Used to handle insertions into collection 

    :type:  string, default “”, (readonly, never None) 
    '''

    subitem_reference_index = None
    '''Used to handle insertions into collection 

    :type:  int in [-1, inf], default -1, (readonly) 
    '''

    subitem_reference_name = None
    '''Used to handle insertions into collection 

    :type:  string, default “”, (readonly, never None) 
    '''


class IDPropertyWrapPtr:
    pass


class IKParam:
    '''Base type for IK solver parameters '''

    ik_solver = None
    '''IK solver for which these parameters are defined 

    :type:  enum in [‘LEGACY’, ‘ITASC’], default ‘LEGACY’, (readonly) 
    '''


class IMAGE_UL_render_slots:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class Image:
    '''Image data-block referencing an external or packed image '''

    alpha_mode = None
    '''Representation of alpha information in the RGBA pixels 

    :type:  enum in [‘STRAIGHT’, ‘PREMUL’], default ‘STRAIGHT’ 
    '''

    bindcode = None
    '''OpenGL bindcode 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    channels = None
    '''Number of channels in pixels buffer 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    colorspace_settings = None
    '''Input color space settings 

    :type:  ColorManagedInputColorspaceSettings, (readonly) 
    '''

    depth = None
    '''Image bit depth 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    display_aspect = None
    '''Display Aspect for this image, does not affect rendering 

    :type:  float array of 2 items in [0.1, inf], default (0.0, 0.0) 
    '''

    file_format = None
    '''Format used for re-saving this file 

    :type:  enum in [‘BMP’, ‘IRIS’, ‘PNG’, ‘JPEG’, ‘JPEG2000’, ‘TARGA’, ‘TARGA_RAW’, ‘CINEON’, ‘DPX’, ‘OPEN_EXR_MULTILAYER’, ‘OPEN_EXR’, ‘HDR’, ‘TIFF’, ‘AVI_JPEG’, ‘AVI_RAW’, ‘FFMPEG’], default ‘TARGA’ 
    '''

    filepath = None
    '''Image/Movie file name 

    :type:  string, default “”, (never None) 
    '''

    filepath_raw = None
    '''Image/Movie file name (without data refreshing) 

    :type:  string, default “”, (never None) 
    '''

    frame_duration = None
    '''Duration (in frames) of the image (1 when not a video/sequence) 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    generated_color = None
    '''Fill color for the generated image 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    generated_height = None
    '''Generated image height 

    :type:  int in [1, 65536], default 0 
    '''

    generated_type = None
    '''Generated image type 

    :type:  enum in [‘BLANK’, ‘UV_GRID’, ‘COLOR_GRID’], default ‘BLANK’ 
    '''

    generated_width = None
    '''Generated image width 

    :type:  int in [1, 65536], default 0 
    '''

    has_data = None
    '''True if the image data is loaded into memory 

    :type:  boolean, default False, (readonly) 
    '''

    is_dirty = None
    '''Image has changed and is not saved 

    :type:  boolean, default False, (readonly) 
    '''

    is_float = None
    '''True if this image is stored in float buffer 

    :type:  boolean, default False, (readonly) 
    '''

    is_multiview = None
    '''Image has more than one view 

    :type:  boolean, default False, (readonly) 
    '''

    is_stereo_3d = None
    '''Image has left and right views 

    :type:  boolean, default False, (readonly) 
    '''

    packed_file = None
    '''First packed file of the image 

    :type:  PackedFile, (readonly) 
    '''

    packed_files = None
    '''Collection of packed images 

    :type:  bpy_prop_collection of ImagePackedFile, (readonly) 
    '''

    pixels = None
    '''Image pixels in floating point values 

    :type:  float in [-inf, inf], default 0.0 
    '''

    render_slots = None
    '''Render slots of the image 

    :type:  RenderSlots bpy_prop_collection of RenderSlot, (readonly) 
    '''

    resolution = None
    '''X/Y pixels per meter 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    size = None
    '''Width and height in pixels, zero when image data cant be loaded 

    :type:  int array of 2 items in [-inf, inf], default (0, 0), (readonly) 
    '''

    source = None
    '''Where the image comes from 

    :type:  enum in [‘FILE’, ‘SEQUENCE’, ‘MOVIE’, ‘GENERATED’, ‘VIEWER’], default ‘FILE’ 
    '''

    stereo_3d_format = None
    '''Settings for stereo 3d 

    :type:  Stereo3dFormat, (readonly, never None) 
    '''

    type = None
    '''How to generate the image 

    :type:  enum in [‘IMAGE’, ‘MULTILAYER’, ‘UV_TEST’, ‘RENDER_RESULT’, ‘COMPOSITING’], default ‘IMAGE’, (readonly) 
    '''

    use_alpha = None
    '''Use the alpha channel information from the image or make image fully opaque 

    :type:  boolean, default False 
    '''

    use_deinterlace = None
    '''Deinterlace movie file on load 

    :type:  boolean, default False 
    '''

    use_generated_float = None
    '''Generate floating point buffer 

    :type:  boolean, default False 
    '''

    use_multiview = None
    '''Use Multiple Views (when available) 

    :type:  boolean, default False 
    '''

    use_view_as_render = None
    '''Apply render part of display transformation when displaying this image on the screen 

    :type:  boolean, default False 
    '''

    views_format = None
    '''Mode to load image views 

    :type:  enum in [‘INDIVIDUAL’, ‘STEREO_3D’], default ‘INDIVIDUAL’ 
    '''

    def save_render(self, filepath, scene=None):
        '''Save image to a specific path using a scenes render settings 

        :param filepath: Save path 
        :type filepath: string, (never None)
        :param scene: Scene to take image parameters from 
        :type scene: Scene, (optional)
        '''
        pass

    def save(self):
        '''Save image to its source path 

        '''
        pass

    def pack(self, as_png=False, data="", data_len=0):
        '''Pack an image as embedded data into the .blend file 

        :param as_png: as_png, Pack the image as PNG (needed for generated/dirty images) 
        :type as_png: boolean, (optional)
        :param data: data, Raw data (bytes, exact content of the embedded file) 
        :type data: string, (optional, never None)
        :param data_len: data_len, length of given data (mandatory if data is provided) 
        :type data_len: int in [0, inf], (optional)
        '''
        pass

    def unpack(self, method='USE_LOCAL'):
        '''Save an image packed in the .blend file to disk 

        :param method: method, How to unpack 
        :type method: enum in ['USE_LOCAL', 'WRITE_LOCAL', 'USE_ORIGINAL', 'WRITE_ORIGINAL'], (optional)
        '''
        pass

    def reload(self):
        '''Reload the image from its source path 

        '''
        pass

    def update(self):
        '''Update the display image from the floating point buffer 

        '''
        pass

    def scale(self, width, height):
        '''Scale the image in pixels 

        :param width: Width 
        :type width: int in [1, 10000]
        :param height: Height 
        :type height: int in [1, 10000]
        '''
        pass

    def gl_touch(self, frame=0, filter=9985, mag=9729):
        '''Delay the image from being cleaned from the cache due inactivity 

        :param frame: Frame, Frame of image sequence or movie 
        :type frame: int in [0, inf], (optional)
        :param filter: Filter, The texture minifying function to use if the image wasn’t loaded 
        :type filter: int in [-inf, inf], (optional)
        :param mag: Magnification, The texture magnification function to use if the image wasn’t loaded 
        :type mag: int in [-inf, inf], (optional)
        :rtype: int in [-inf, inf] 
        :return:  Error, OpenGL error value 
        '''
        pass

    def gl_load(self, frame=0, filter=9985, mag=9729):
        '''Load the image into OpenGL graphics memory 

        :param frame: Frame, Frame of image sequence or movie 
        :type frame: int in [0, inf], (optional)
        :param filter: Filter, The texture minifying function 
        :type filter: int in [-inf, inf], (optional)
        :param mag: Magnification, The texture magnification function 
        :type mag: int in [-inf, inf], (optional)
        :rtype: int in [-inf, inf] 
        :return:  Error, OpenGL error value 
        '''
        pass

    def gl_free(self):
        '''Free the image from OpenGL graphics memory 

        '''
        pass

    def filepath_from_user(self, image_user=None):
        '''Return the absolute path to the filepath of an image frame specified by the image user 

        :param image_user: Image user of the image to get filepath for 
        :type image_user: ImageUser, (optional)
        :rtype: string, (never None) 
        :return:  File Path, The resulting filepath from the image and it’s user 
        '''
        pass

    def buffers_free(self):
        '''Free the image buffers from memory 

        '''
        pass


class ImageFormatSettings:
    '''Settings for image formats '''

    cineon_black = None
    '''Log conversion reference blackpoint 

    :type:  int in [0, 1024], default 0 
    '''

    cineon_gamma = None
    '''Log conversion gamma 

    :type:  float in [0, 10], default 0.0 
    '''

    cineon_white = None
    '''Log conversion reference whitepoint 

    :type:  int in [0, 1024], default 0 
    '''

    color_depth = None
    '''Bit depth per channel 

    :type:  enum in [‘8’, ‘10’, ‘12’, ‘16’, ‘32’], default ‘8’ 
    '''

    color_mode = None
    '''Choose BW for saving grayscale images, RGB for saving red, green and blue channels, and RGBA for saving red, green, blue and alpha channels 

    :type:  enum in [‘BW’, ‘RGB’, ‘RGBA’], default ‘BW’ 
    '''

    compression = None
    '''Amount of time to determine best compression: 0 = no compression with fast file output, 100 = maximum lossless compression with slow file output 

    :type:  int in [0, 100], default 0 
    '''

    display_settings = None
    '''Settings of device saved image would be displayed on 

    :type:  ColorManagedDisplaySettings, (readonly) 
    '''

    exr_codec = None
    '''Codec settings for OpenEXR 

    :type:  enum in [‘NONE’, ‘PXR24’, ‘ZIP’, ‘PIZ’, ‘RLE’, ‘ZIPS’, ‘B44’, ‘B44A’, ‘DWAA’], default ‘NONE’ 
    '''

    file_format = None
    '''File format to save the rendered images as 

    :type:  enum in [‘BMP’, ‘IRIS’, ‘PNG’, ‘JPEG’, ‘JPEG2000’, ‘TARGA’, ‘TARGA_RAW’, ‘CINEON’, ‘DPX’, ‘OPEN_EXR_MULTILAYER’, ‘OPEN_EXR’, ‘HDR’, ‘TIFF’, ‘AVI_JPEG’, ‘AVI_RAW’, ‘FFMPEG’], default ‘TARGA’ 
    '''

    jpeg2k_codec = None
    '''Codec settings for Jpeg2000 

    :type:  enum in [‘JP2’, ‘J2K’], default ‘JP2’ 
    '''

    quality = None
    '''Quality for image formats that support lossy compression 

    :type:  int in [0, 100], default 0 
    '''

    stereo_3d_format = None
    '''Settings for stereo 3d 

    :type:  Stereo3dFormat, (readonly, never None) 
    '''

    tiff_codec = None
    '''Compression mode for TIFF 

    :type:  enum in [‘NONE’, ‘DEFLATE’, ‘LZW’, ‘PACKBITS’], default ‘DEFLATE’ 
    '''

    use_cineon_log = None
    '''Convert to logarithmic color space 

    :type:  boolean, default False 
    '''

    use_jpeg2k_cinema_48 = None
    '''Use Openjpeg Cinema Preset (48fps) 

    :type:  boolean, default False 
    '''

    use_jpeg2k_cinema_preset = None
    '''Use Openjpeg Cinema Preset 

    :type:  boolean, default False 
    '''

    use_jpeg2k_ycc = None
    '''Save luminance-chrominance-chrominance channels instead of RGB colors 

    :type:  boolean, default False 
    '''

    use_preview = None
    '''When rendering animations, save JPG preview images in same directory 

    :type:  boolean, default False 
    '''

    use_zbuffer = None
    '''Save the z-depth per pixel (32 bit unsigned int z-buffer) 

    :type:  boolean, default False 
    '''

    view_settings = None
    '''Color management settings applied on image before saving 

    :type:  ColorManagedViewSettings, (readonly) 
    '''

    views_format = None
    '''Format of multiview media 

    :type:  enum in [‘INDIVIDUAL’, ‘STEREO_3D’], default ‘INDIVIDUAL’ 
    '''


class ImagePackedFile:
    filepath = None
    '''

    :type:  string, default “”, (never None) 
    '''

    packed_file = None
    '''

    :type:  PackedFile, (readonly) 
    '''

    def save(self):
        '''Save the packed file to its filepath 

        '''
        pass


class ImagePaint:
    '''Properties of image and texture painting mode '''

    canvas = None
    '''Image used as canvas 

    :type:  Image 
    '''

    clone_image = None
    '''Image used as clone source 

    :type:  Image 
    '''

    dither = None
    '''Amount of dithering when painting on byte images 

    :type:  float in [0, 2], default 0.0 
    '''

    interpolation = None
    '''Texture filtering type 

    :type:  enum in [‘LINEAR’, ‘CLOSEST’], default ‘LINEAR’ 
    '''

    invert_stencil = None
    '''Invert the stencil layer 

    :type:  boolean, default False 
    '''

    missing_materials = None
    '''The mesh is missing materials 

    :type:  boolean, default False, (readonly) 
    '''

    missing_stencil = None
    '''Image Painting does not have a stencil 

    :type:  boolean, default False, (readonly) 
    '''

    missing_texture = None
    '''Image Painting does not have a texture to paint on 

    :type:  boolean, default False, (readonly) 
    '''

    missing_uvs = None
    '''A UV layer is missing on the mesh 

    :type:  boolean, default False, (readonly) 
    '''

    mode = None
    '''Mode of operation for projection painting 

    :type:  enum in [‘MATERIAL’, ‘IMAGE’], default ‘MATERIAL’ 
    '''

    normal_angle = None
    '''Paint most on faces pointing towards the view according to this angle 

    :type:  int in [0, 90], default 0 
    '''

    screen_grab_size = None
    '''Size to capture the image for re-projecting 

    :type:  int array of 2 items in [512, 16384], default (0, 0) 
    '''

    seam_bleed = None
    '''Extend paint beyond the faces UVs to reduce seams (in pixels, slower) 

    :type:  int in [-32768, 32767], default 0 
    '''

    stencil_color = None
    '''Stencil color in the viewport 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    stencil_image = None
    '''Image used as stencil 

    :type:  Image 
    '''

    use_backface_culling = None
    '''Ignore faces pointing away from the view (faster) 

    :type:  boolean, default False 
    '''

    use_clone_layer = None
    '''Use another UV map as clone source, otherwise use the 3D cursor as the source 

    :type:  boolean, default False 
    '''

    use_normal_falloff = None
    '''Paint most on faces pointing towards the view 

    :type:  boolean, default False 
    '''

    use_occlude = None
    '''Only paint onto the faces directly under the brush (slower) 

    :type:  boolean, default False 
    '''

    use_stencil_layer = None
    '''Set the mask layer from the UV map buttons 

    :type:  boolean, default False 
    '''

    def detect_data(self):
        '''Check if required texpaint data exist 

        :rtype: boolean 
        '''
        pass


class ImagePreview:
    '''Preview image and icon '''

    icon_id = None
    '''Unique integer identifying this preview as an icon (zero means invalid) 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    icon_pixels = None
    '''Icon pixels, as bytes (always RGBA 32bits) 

    :type:  int in [-inf, inf], default 0 
    '''

    icon_pixels_float = None
    '''Icon pixels components, as floats (RGBA concatenated values) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    icon_size = None
    '''Width and height in pixels 

    :type:  int array of 2 items in [-inf, inf], default (0, 0) 
    '''

    image_pixels = None
    '''Image pixels, as bytes (always RGBA 32bits) 

    :type:  int in [-inf, inf], default 0 
    '''

    image_pixels_float = None
    '''Image pixels components, as floats (RGBA concatenated values) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    image_size = None
    '''Width and height in pixels 

    :type:  int array of 2 items in [-inf, inf], default (0, 0) 
    '''

    is_icon_custom = None
    '''True if this preview icon has been modified by py script,and is no more auto-generated by Blender 

    :type:  boolean, default False 
    '''

    is_image_custom = None
    '''True if this preview image has been modified by py script,and is no more auto-generated by Blender 

    :type:  boolean, default False 
    '''

    def reload(self):
        '''Reload the preview from its source path 

        '''
        pass


class ImageSequence:
    '''Sequence strip to load one or more images '''

    alpha_mode = None
    '''Representation of alpha information in the RGBA pixels 

    :type:  enum in [‘STRAIGHT’, ‘PREMUL’], default ‘STRAIGHT’ 
    '''

    animation_offset_end = None
    '''Animation end offset (trim end) 

    :type:  int in [0, inf], default 0 
    '''

    animation_offset_start = None
    '''Animation start offset (trim start) 

    :type:  int in [0, inf], default 0 
    '''

    color_multiply = None
    '''

    :type:  float in [0, 20], default 1.0 
    '''

    color_saturation = None
    '''Adjust the intensity of the input’s color 

    :type:  float in [0, 20], default 1.0 
    '''

    colorspace_settings = None
    '''Input color space settings 

    :type:  ColorManagedInputColorspaceSettings, (readonly) 
    '''

    crop = None
    '''

    :type:  SequenceCrop, (readonly) 
    '''

    directory = None
    '''

    :type:  string, default “”, (never None) 
    '''

    elements = None
    '''

    :type:  SequenceElements bpy_prop_collection of SequenceElement, (readonly) 
    '''

    proxy = None
    '''

    :type:  SequenceProxy, (readonly) 
    '''

    stereo_3d_format = None
    '''Settings for stereo 3d 

    :type:  Stereo3dFormat, (readonly, never None) 
    '''

    strobe = None
    '''Only display every nth frame 

    :type:  float in [1, 30], default 0.0 
    '''

    transform = None
    '''

    :type:  SequenceTransform, (readonly) 
    '''

    use_crop = None
    '''Crop image before processing 

    :type:  boolean, default False 
    '''

    use_deinterlace = None
    '''Remove fields from video movies 

    :type:  boolean, default False 
    '''

    use_flip_x = None
    '''Flip on the X axis 

    :type:  boolean, default False 
    '''

    use_flip_y = None
    '''Flip on the Y axis 

    :type:  boolean, default False 
    '''

    use_float = None
    '''Convert input to float data 

    :type:  boolean, default False 
    '''

    use_multiview = None
    '''Use Multiple Views (when available) 

    :type:  boolean, default False 
    '''

    use_proxy = None
    '''Use a preview proxy and/or timecode index for this strip 

    :type:  boolean, default False 
    '''

    use_reverse_frames = None
    '''Reverse frame order 

    :type:  boolean, default False 
    '''

    use_translation = None
    '''Translate image before processing 

    :type:  boolean, default False 
    '''

    views_format = None
    '''Mode to load image views 

    :type:  enum in [‘INDIVIDUAL’, ‘STEREO_3D’], default ‘INDIVIDUAL’ 
    '''


class ImageTexture:
    checker_distance = None
    '''Distance between checker tiles 

    :type:  float in [0, 0.99], default 0.0 
    '''

    crop_max_x = None
    '''Maximum X value to crop the image 

    :type:  float in [-10, 10], default 0.0 
    '''

    crop_max_y = None
    '''Maximum Y value to crop the image 

    :type:  float in [-10, 10], default 0.0 
    '''

    crop_min_x = None
    '''Minimum X value to crop the image 

    :type:  float in [-10, 10], default 0.0 
    '''

    crop_min_y = None
    '''Minimum Y value to crop the image 

    :type:  float in [-10, 10], default 0.0 
    '''

    extension = None
    '''How the image is extrapolated past its original bounds 

    :type:  enum in [‘EXTEND’, ‘CLIP’, ‘CLIP_CUBE’, ‘REPEAT’, ‘CHECKER’], default ‘EXTEND’ 
    '''

    filter_eccentricity = None
    '''Maximum eccentricity (higher gives less blur at distant/oblique angles, but is also slower) 

    :type:  int in [1, 256], default 0 
    '''

    filter_lightprobes = None
    '''Maximum number of samples (higher gives less blur at distant/oblique angles, but is also slower) 

    :type:  int in [1, 256], default 0 
    '''

    filter_size = None
    '''Multiply the filter size used by MIP Map and Interpolation 

    :type:  float in [0.1, 50], default 0.0 
    '''

    filter_type = None
    '''Texture filter to use for sampling image 

    :type:  enum in [‘BOX’, ‘EWA’, ‘FELINE’, ‘AREA’], default ‘BOX’ 
    '''

    image = None
    '''

    :type:  Image 
    '''

    image_user = None
    '''Parameters defining which layer, pass and frame of the image is displayed 

    :type:  ImageUser, (readonly) 
    '''

    invert_alpha = None
    '''Invert all the alpha values in the image 

    :type:  boolean, default False 
    '''

    repeat_x = None
    '''Repetition multiplier in the X direction 

    :type:  int in [1, 512], default 0 
    '''

    repeat_y = None
    '''Repetition multiplier in the Y direction 

    :type:  int in [1, 512], default 0 
    '''

    use_alpha = None
    '''Use the alpha channel information in the image 

    :type:  boolean, default False 
    '''

    use_calculate_alpha = None
    '''Calculate an alpha channel based on RGB values in the image 

    :type:  boolean, default False 
    '''

    use_checker_even = None
    '''Even checker tiles 

    :type:  boolean, default False 
    '''

    use_checker_odd = None
    '''Odd checker tiles 

    :type:  boolean, default False 
    '''

    use_filter_size_min = None
    '''Use Filter Size as a minimal filter value in pixels 

    :type:  boolean, default False 
    '''

    use_flip_axis = None
    '''Flip the texture’s X and Y axis 

    :type:  boolean, default False 
    '''

    use_interpolation = None
    '''Interpolate pixels using selected filter 

    :type:  boolean, default False 
    '''

    use_mipmap = None
    '''Use auto-generated MIP maps for the image 

    :type:  boolean, default False 
    '''

    use_mipmap_gauss = None
    '''Use Gauss filter to sample down MIP maps 

    :type:  boolean, default False 
    '''

    use_mirror_x = None
    '''Mirror the image repetition on the X direction 

    :type:  boolean, default False 
    '''

    use_mirror_y = None
    '''Mirror the image repetition on the Y direction 

    :type:  boolean, default False 
    '''

    use_normal_map = None
    '''Use image RGB values for normal mapping 

    :type:  boolean, default False 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class ImageUser:
    '''Parameters defining how an Image data-block is used by another data-block '''

    frame_current = None
    '''Current frame number in image sequence or movie 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    frame_duration = None
    '''Number of images of a movie to use 

    :type:  int in [0, 1048574], default 0 
    '''

    frame_offset = None
    '''Offset the number of the frame to use in the animation 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_start = None
    '''Global starting frame of the movie/sequence, assuming first picture has a #1 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    multilayer_layer = None
    '''Layer in multilayer image 

    :type:  int in [0, 32767], default 0, (readonly) 
    '''

    multilayer_pass = None
    '''Pass in multilayer image 

    :type:  int in [0, 32767], default 0, (readonly) 
    '''

    multilayer_view = None
    '''View in multilayer image 

    :type:  int in [0, 32767], default 0, (readonly) 
    '''

    use_auto_refresh = None
    '''Always refresh image on frame changes 

    :type:  boolean, default False 
    '''

    use_cyclic = None
    '''Cycle the images in the movie 

    :type:  boolean, default False 
    '''


class InflowFluidSettings:
    '''Fluid simulation settings for objects adding fluids in the simulation '''

    inflow_velocity = None
    '''Initial velocity of fluid 

    :type:  float array of 3 items in [-1000.1, 1000.1], default (0.0, 0.0, 0.0) 
    '''

    use = None
    '''Object contributes to the fluid simulation 

    :type:  boolean, default False 
    '''

    use_animated_mesh = None
    '''Export this mesh as an animated one (slower and enforces No Slip, only use if really necessary [e.g. armatures or parented objects], animated pos/rot/scale F-Curves do not require it) 

    :type:  boolean, default False 
    '''

    use_local_coords = None
    '''Use local coordinates for inflow (e.g. for rotating objects) 

    :type:  boolean, default False 
    '''

    volume_initialization = None
    '''Volume initialization type (WARNING: complex volumes might require too much memory and break simulation) 

    :type:  enum in [‘VOLUME’, ‘SHELL’, ‘BOTH’], default ‘VOLUME’ 
    '''


class IntProperty:
    '''RNA integer number property definition '''

    array_dimensions = None
    '''Length of each dimension of the array 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0), (readonly) 
    '''

    array_length = None
    '''Maximum length of the array, 0 means unlimited 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    default = None
    '''Default value for this number 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    default_array = None
    '''Default value for this array 

    :type:  int array of 3 items in [-inf, inf], default (0, 0, 0), (readonly) 
    '''

    hard_max = None
    '''Maximum value used by buttons 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    hard_min = None
    '''Minimum value used by buttons 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    is_array = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    soft_max = None
    '''Maximum value used by buttons 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    soft_min = None
    '''Minimum value used by buttons 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    step = None
    '''Step size used by number buttons, for floats 1/100th of the step size 

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class Itasc:
    '''Parameters for the iTaSC IK solver '''

    damping_epsilon = None
    '''Singular value under which damping is progressively applied (higher values=more stability, less reactivity - default=0.1) 

    :type:  float in [0, 1], default 0.0 
    '''

    damping_max = None
    '''Maximum damping coefficient when singular value is nearly 0 (higher values=more stability, less reactivity - default=0.5) 

    :type:  float in [0, 1], default 0.0 
    '''

    feedback = None
    '''Feedback coefficient for error correction, average response time is 1/feedback (default=20) 

    :type:  float in [0, 100], default 0.0 
    '''

    iterations = None
    '''Maximum number of iterations for convergence in case of reiteration 

    :type:  int in [0, 1000], default 0 
    '''

    mode = None
    '''

    :type:  enum in [‘ANIMATION’, ‘SIMULATION’], default ‘ANIMATION’ 
    '''

    precision = None
    '''Precision of convergence in case of reiteration 

    :type:  float in [0, 0.1], default 0.0 
    '''

    reiteration_method = None
    '''Defines if the solver is allowed to reiterate (converge until precision is met) on none, first or all frames 

    :type:  enum in [‘NEVER’, ‘INITIAL’, ‘ALWAYS’], default ‘NEVER’ 
    '''

    solver = None
    '''Solving method selection: automatic damping or manual damping 

    :type:  enum in [‘SDLS’, ‘DLS’], default ‘SDLS’ 
    '''

    step_count = None
    '''Divide the frame interval into this many steps 

    :type:  int in [1, 50], default 0 
    '''

    step_max = None
    '''Higher bound for timestep in second in case of automatic substeps 

    :type:  float in [0, 1], default 0.0 
    '''

    step_min = None
    '''Lower bound for timestep in second in case of automatic substeps 

    :type:  float in [0, 0.1], default 0.0 
    '''

    use_auto_step = None
    '''Automatically determine the optimal number of steps for best performance/accuracy trade off 

    :type:  boolean, default False 
    '''

    velocity_max = None
    '''Maximum joint velocity in rad/s (default=50) 

    :type:  float in [0, 100], default 0.0 
    '''


class Key:
    '''Shape keys data-block containing different shapes of geometric data-blocks '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    eval_time = None
    '''Evaluation time for absolute shape keys 

    :type:  float in [0, 1.04857e+06], default 0.0 
    '''

    key_blocks = None
    '''Shape keys 

    :type:  bpy_prop_collection of ShapeKey, (readonly) 
    '''

    reference_key = None
    '''

    :type:  ShapeKey, (readonly, never None) 
    '''

    use_relative = None
    '''Make shape keys relative, otherwise play through shapes as a sequence using the evaluation time 

    :type:  boolean, default False 
    '''

    user = None
    '''Data-block using these shape keys 

    :type:  ID, (readonly, never None) 
    '''


class KeyConfig:
    '''Input configuration, including keymaps '''

    is_user_defined = None
    '''Indicates that a keyconfig was defined by the user 

    :type:  boolean, default False, (readonly) 
    '''

    keymaps = None
    '''Key maps configured as part of this configuration 

    :type:  KeyMaps bpy_prop_collection of KeyMap, (readonly) 
    '''

    name = None
    '''Name of the key configuration 

    :type:  string, default “”, (never None) 
    '''

    preferences = None
    '''

    :type:  KeyConfigPreferences, (readonly) 
    '''


class KeyConfigPreferences:
    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''


class KeyConfigurations:
    '''Collection of KeyConfigs '''

    active = None
    '''Active key configuration (preset) 

    :type:  KeyConfig 
    '''

    addon = None
    '''Key configuration that can be extended by add-ons, and is added to the active configuration when handling events 

    :type:  KeyConfig, (readonly) 
    '''

    default = None
    '''Default builtin key configuration 

    :type:  KeyConfig, (readonly) 
    '''

    user = None
    '''Final key configuration that combines keymaps from the active and add-on configurations, and can be edited by the user 

    :type:  KeyConfig, (readonly) 
    '''

    def new(self, name):
        '''new 

        :param name: Name 
        :type name: string, (never None)
        :rtype: KeyConfig 
        :return:  Key Configuration, Added key configuration 
        '''
        pass

    def remove(self, keyconfig):
        '''remove 

        :param keyconfig: Key Configuration, Removed key configuration 
        :type keyconfig: KeyConfig, (never None)
        '''
        pass

    def find_item_from_operator(
            self,
            idname,
            context='INVOKE_DEFAULT',
            properties=None,
            include={'ACTIONZONE', 'KEYBOARD', 'MOUSE', 'NDOF', 'TWEAK'},
            exclude={}):
        '''find_item_from_operator 

        :param idname: Operator Identifier 
        :type idname: string, (never None)
        :param context: context 
        :type context: enum in ['INVOKE_DEFAULT', 'INVOKE_REGION_WIN', 'INVOKE_REGION_CHANNELS', 'INVOKE_REGION_PREVIEW', 'INVOKE_AREA', 'INVOKE_SCREEN', 'EXEC_DEFAULT', 'EXEC_REGION_WIN', 'EXEC_REGION_CHANNELS', 'EXEC_REGION_PREVIEW', 'EXEC_AREA', 'EXEC_SCREEN'], (optional)
        :param include: Include 
        :type include: enum set in {'KEYBOARD_MODIFIER', 'KEYBOARD', 'MOUSE_WHEEL', 'MOUSE_GESTURE', 'MOUSE_BUTTON', 'MOUSE', 'NDOF', 'TWEAK', 'ACTIONZONE'}, (optional)
        :param exclude: Exclude 
        :type exclude: enum set in {'KEYBOARD_MODIFIER', 'KEYBOARD', 'MOUSE_WHEEL', 'MOUSE_GESTURE', 'MOUSE_BUTTON', 'MOUSE', 'NDOF', 'TWEAK', 'ACTIONZONE'}, (optional)
        '''
        pass

    def update(self):
        '''update 

        '''
        pass


class KeyMap:
    '''Input configuration, including keymaps '''

    bl_owner_id = None
    '''Internal owner 

    :type:  string, default “”, (never None) 
    '''

    is_modal = None
    '''Indicates that a keymap is used for translate modal events for an operator 

    :type:  boolean, default False, (readonly) 
    '''

    is_user_modified = None
    '''Keymap is defined by the user 

    :type:  boolean, default False 
    '''

    keymap_items = None
    '''Items in the keymap, linking an operator to an input event 

    :type:  KeyMapItems bpy_prop_collection of KeyMapItem, (readonly) 
    '''

    name = None
    '''Name of the key map 

    :type:  string, default “”, (readonly, never None) 
    '''

    region_type = None
    '''Optional region type keymap is associated with 

    :type:  enum in [‘WINDOW’, ‘HEADER’, ‘CHANNELS’, ‘TEMPORARY’, ‘UI’, ‘TOOLS’, ‘TOOL_PROPS’, ‘PREVIEW’, ‘HUD’, ‘NAVIGATION_BAR’, ‘EXECUTE’, ‘FOOTER’], default ‘WINDOW’, (readonly) 
    '''

    show_expanded_children = None
    '''Children expanded in the user interface 

    :type:  boolean, default False 
    '''

    show_expanded_items = None
    '''Expanded in the user interface 

    :type:  boolean, default False 
    '''

    space_type = None
    '''Optional space type keymap is associated with 

    :type:  enum in [‘EMPTY’, ‘VIEW_3D’, ‘IMAGE_EDITOR’, ‘NODE_EDITOR’, ‘SEQUENCE_EDITOR’, ‘CLIP_EDITOR’, ‘DOPESHEET_EDITOR’, ‘GRAPH_EDITOR’, ‘NLA_EDITOR’, ‘TEXT_EDITOR’, ‘CONSOLE’, ‘INFO’, ‘TOPBAR’, ‘STATUSBAR’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILE_BROWSER’, ‘PREFERENCES’], default ‘EMPTY’, (readonly) 
    '''

    def active(self):
        '''active 

        :rtype: KeyMap 
        :return:  Key Map, Active key map 
        '''
        pass

    def restore_to_default(self):
        '''restore_to_default 

        '''
        pass

    def restore_item_to_default(self, item):
        '''restore_item_to_default 

        :param item: Item 
        :type item: KeyMapItem, (never None)
        '''
        pass


class KeyMapItem:
    '''Item in a Key Map '''

    active = None
    '''Activate or deactivate item 

    :type:  boolean, default False 
    '''

    alt = None
    '''Alt key pressed 

    :type:  boolean, default False 
    '''

    any = None
    '''Any modifier keys pressed 

    :type:  boolean, default False 
    '''

    ctrl = None
    '''Control key pressed 

    :type:  boolean, default False 
    '''

    id = None
    '''ID of the item 

    :type:  int in [-32768, 32767], default 0, (readonly) 
    '''

    idname = None
    '''Identifier of operator to call on input event 

    :type:  string, default “”, (never None) 
    '''

    is_user_defined = None
    '''Is this keymap item user defined (doesn’t just replace a builtin item) 

    :type:  boolean, default False, (readonly) 
    '''

    is_user_modified = None
    '''Is this keymap item modified by the user 

    :type:  boolean, default False, (readonly) 
    '''

    key_modifier = None
    '''Regular key pressed as a modifier 

    :type:  enum in [‘NONE’, ‘LEFTMOUSE’, ‘MIDDLEMOUSE’, ‘RIGHTMOUSE’, ‘BUTTON4MOUSE’, ‘BUTTON5MOUSE’, ‘BUTTON6MOUSE’, ‘BUTTON7MOUSE’, ‘PEN’, ‘ERASER’, ‘MOUSEMOVE’, ‘INBETWEEN_MOUSEMOVE’, ‘TRACKPADPAN’, ‘TRACKPADZOOM’, ‘MOUSEROTATE’, ‘WHEELUPMOUSE’, ‘WHEELDOWNMOUSE’, ‘WHEELINMOUSE’, ‘WHEELOUTMOUSE’, ‘EVT_TWEAK_L’, ‘EVT_TWEAK_M’, ‘EVT_TWEAK_R’, ‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’, ‘G’, ‘H’, ‘I’, ‘J’, ‘K’, ‘L’, ‘M’, ‘N’, ‘O’, ‘P’, ‘Q’, ‘R’, ‘S’, ‘T’, ‘U’, ‘V’, ‘W’, ‘X’, ‘Y’, ‘Z’, ‘ZERO’, ‘ONE’, ‘TWO’, ‘THREE’, ‘FOUR’, ‘FIVE’, ‘SIX’, ‘SEVEN’, ‘EIGHT’, ‘NINE’, ‘LEFT_CTRL’, ‘LEFT_ALT’, ‘LEFT_SHIFT’, ‘RIGHT_ALT’, ‘RIGHT_CTRL’, ‘RIGHT_SHIFT’, ‘OSKEY’, ‘GRLESS’, ‘ESC’, ‘TAB’, ‘RET’, ‘SPACE’, ‘LINE_FEED’, ‘BACK_SPACE’, ‘DEL’, ‘SEMI_COLON’, ‘PERIOD’, ‘COMMA’, ‘QUOTE’, ‘ACCENT_GRAVE’, ‘MINUS’, ‘PLUS’, ‘SLASH’, ‘BACK_SLASH’, ‘EQUAL’, ‘LEFT_BRACKET’, ‘RIGHT_BRACKET’, ‘LEFT_ARROW’, ‘DOWN_ARROW’, ‘RIGHT_ARROW’, ‘UP_ARROW’, ‘NUMPAD_2’, ‘NUMPAD_4’, ‘NUMPAD_6’, ‘NUMPAD_8’, ‘NUMPAD_1’, ‘NUMPAD_3’, ‘NUMPAD_5’, ‘NUMPAD_7’, ‘NUMPAD_9’, ‘NUMPAD_PERIOD’, ‘NUMPAD_SLASH’, ‘NUMPAD_ASTERIX’, ‘NUMPAD_0’, ‘NUMPAD_MINUS’, ‘NUMPAD_ENTER’, ‘NUMPAD_PLUS’, ‘F1’, ‘F2’, ‘F3’, ‘F4’, ‘F5’, ‘F6’, ‘F7’, ‘F8’, ‘F9’, ‘F10’, ‘F11’, ‘F12’, ‘F13’, ‘F14’, ‘F15’, ‘F16’, ‘F17’, ‘F18’, ‘F19’, ‘PAUSE’, ‘INSERT’, ‘HOME’, ‘PAGE_UP’, ‘PAGE_DOWN’, ‘END’, ‘MEDIA_PLAY’, ‘MEDIA_STOP’, ‘MEDIA_FIRST’, ‘MEDIA_LAST’, ‘TEXTINPUT’, ‘WINDOW_DEACTIVATE’, ‘TIMER’, ‘TIMER0’, ‘TIMER1’, ‘TIMER2’, ‘TIMER_JOBS’, ‘TIMER_AUTOSAVE’, ‘TIMER_REPORT’, ‘TIMERREGION’, ‘NDOF_MOTION’, ‘NDOF_BUTTON_MENU’, ‘NDOF_BUTTON_FIT’, ‘NDOF_BUTTON_TOP’, ‘NDOF_BUTTON_BOTTOM’, ‘NDOF_BUTTON_LEFT’, ‘NDOF_BUTTON_RIGHT’, ‘NDOF_BUTTON_FRONT’, ‘NDOF_BUTTON_BACK’, ‘NDOF_BUTTON_ISO1’, ‘NDOF_BUTTON_ISO2’, ‘NDOF_BUTTON_ROLL_CW’, ‘NDOF_BUTTON_ROLL_CCW’, ‘NDOF_BUTTON_SPIN_CW’, ‘NDOF_BUTTON_SPIN_CCW’, ‘NDOF_BUTTON_TILT_CW’, ‘NDOF_BUTTON_TILT_CCW’, ‘NDOF_BUTTON_ROTATE’, ‘NDOF_BUTTON_PANZOOM’, ‘NDOF_BUTTON_DOMINANT’, ‘NDOF_BUTTON_PLUS’, ‘NDOF_BUTTON_MINUS’, ‘NDOF_BUTTON_ESC’, ‘NDOF_BUTTON_ALT’, ‘NDOF_BUTTON_SHIFT’, ‘NDOF_BUTTON_CTRL’, ‘NDOF_BUTTON_1’, ‘NDOF_BUTTON_2’, ‘NDOF_BUTTON_3’, ‘NDOF_BUTTON_4’, ‘NDOF_BUTTON_5’, ‘NDOF_BUTTON_6’, ‘NDOF_BUTTON_7’, ‘NDOF_BUTTON_8’, ‘NDOF_BUTTON_9’, ‘NDOF_BUTTON_10’, ‘NDOF_BUTTON_A’, ‘NDOF_BUTTON_B’, ‘NDOF_BUTTON_C’, ‘ACTIONZONE_AREA’, ‘ACTIONZONE_REGION’, ‘ACTIONZONE_FULLSCREEN’], default ‘NONE’ 
    '''

    map_type = None
    '''Type of event mapping 

    :type:  enum in [‘KEYBOARD’, ‘TWEAK’, ‘MOUSE’, ‘NDOF’, ‘TEXTINPUT’, ‘TIMER’], default ‘KEYBOARD’ 
    '''

    name = None
    '''Name of operator (translated) to call on input event 

    :type:  string, default “”, (readonly, never None) 
    '''

    oskey = None
    '''Operating system key pressed 

    :type:  boolean, default False 
    '''

    properties = None
    '''Properties to set when the operator is called 

    :type:  OperatorProperties, (readonly) 
    '''

    propvalue = None
    '''The value this event translates to in a modal keymap 

    :type:  enum in [‘NONE’], default ‘NONE’ 
    '''

    shift = None
    '''Shift key pressed 

    :type:  boolean, default False 
    '''

    show_expanded = None
    '''Show key map event and property details in the user interface 

    :type:  boolean, default False 
    '''

    type = None
    '''Type of event 

    :type:  enum in [‘NONE’, ‘LEFTMOUSE’, ‘MIDDLEMOUSE’, ‘RIGHTMOUSE’, ‘BUTTON4MOUSE’, ‘BUTTON5MOUSE’, ‘BUTTON6MOUSE’, ‘BUTTON7MOUSE’, ‘PEN’, ‘ERASER’, ‘MOUSEMOVE’, ‘INBETWEEN_MOUSEMOVE’, ‘TRACKPADPAN’, ‘TRACKPADZOOM’, ‘MOUSEROTATE’, ‘WHEELUPMOUSE’, ‘WHEELDOWNMOUSE’, ‘WHEELINMOUSE’, ‘WHEELOUTMOUSE’, ‘EVT_TWEAK_L’, ‘EVT_TWEAK_M’, ‘EVT_TWEAK_R’, ‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’, ‘G’, ‘H’, ‘I’, ‘J’, ‘K’, ‘L’, ‘M’, ‘N’, ‘O’, ‘P’, ‘Q’, ‘R’, ‘S’, ‘T’, ‘U’, ‘V’, ‘W’, ‘X’, ‘Y’, ‘Z’, ‘ZERO’, ‘ONE’, ‘TWO’, ‘THREE’, ‘FOUR’, ‘FIVE’, ‘SIX’, ‘SEVEN’, ‘EIGHT’, ‘NINE’, ‘LEFT_CTRL’, ‘LEFT_ALT’, ‘LEFT_SHIFT’, ‘RIGHT_ALT’, ‘RIGHT_CTRL’, ‘RIGHT_SHIFT’, ‘OSKEY’, ‘GRLESS’, ‘ESC’, ‘TAB’, ‘RET’, ‘SPACE’, ‘LINE_FEED’, ‘BACK_SPACE’, ‘DEL’, ‘SEMI_COLON’, ‘PERIOD’, ‘COMMA’, ‘QUOTE’, ‘ACCENT_GRAVE’, ‘MINUS’, ‘PLUS’, ‘SLASH’, ‘BACK_SLASH’, ‘EQUAL’, ‘LEFT_BRACKET’, ‘RIGHT_BRACKET’, ‘LEFT_ARROW’, ‘DOWN_ARROW’, ‘RIGHT_ARROW’, ‘UP_ARROW’, ‘NUMPAD_2’, ‘NUMPAD_4’, ‘NUMPAD_6’, ‘NUMPAD_8’, ‘NUMPAD_1’, ‘NUMPAD_3’, ‘NUMPAD_5’, ‘NUMPAD_7’, ‘NUMPAD_9’, ‘NUMPAD_PERIOD’, ‘NUMPAD_SLASH’, ‘NUMPAD_ASTERIX’, ‘NUMPAD_0’, ‘NUMPAD_MINUS’, ‘NUMPAD_ENTER’, ‘NUMPAD_PLUS’, ‘F1’, ‘F2’, ‘F3’, ‘F4’, ‘F5’, ‘F6’, ‘F7’, ‘F8’, ‘F9’, ‘F10’, ‘F11’, ‘F12’, ‘F13’, ‘F14’, ‘F15’, ‘F16’, ‘F17’, ‘F18’, ‘F19’, ‘PAUSE’, ‘INSERT’, ‘HOME’, ‘PAGE_UP’, ‘PAGE_DOWN’, ‘END’, ‘MEDIA_PLAY’, ‘MEDIA_STOP’, ‘MEDIA_FIRST’, ‘MEDIA_LAST’, ‘TEXTINPUT’, ‘WINDOW_DEACTIVATE’, ‘TIMER’, ‘TIMER0’, ‘TIMER1’, ‘TIMER2’, ‘TIMER_JOBS’, ‘TIMER_AUTOSAVE’, ‘TIMER_REPORT’, ‘TIMERREGION’, ‘NDOF_MOTION’, ‘NDOF_BUTTON_MENU’, ‘NDOF_BUTTON_FIT’, ‘NDOF_BUTTON_TOP’, ‘NDOF_BUTTON_BOTTOM’, ‘NDOF_BUTTON_LEFT’, ‘NDOF_BUTTON_RIGHT’, ‘NDOF_BUTTON_FRONT’, ‘NDOF_BUTTON_BACK’, ‘NDOF_BUTTON_ISO1’, ‘NDOF_BUTTON_ISO2’, ‘NDOF_BUTTON_ROLL_CW’, ‘NDOF_BUTTON_ROLL_CCW’, ‘NDOF_BUTTON_SPIN_CW’, ‘NDOF_BUTTON_SPIN_CCW’, ‘NDOF_BUTTON_TILT_CW’, ‘NDOF_BUTTON_TILT_CCW’, ‘NDOF_BUTTON_ROTATE’, ‘NDOF_BUTTON_PANZOOM’, ‘NDOF_BUTTON_DOMINANT’, ‘NDOF_BUTTON_PLUS’, ‘NDOF_BUTTON_MINUS’, ‘NDOF_BUTTON_ESC’, ‘NDOF_BUTTON_ALT’, ‘NDOF_BUTTON_SHIFT’, ‘NDOF_BUTTON_CTRL’, ‘NDOF_BUTTON_1’, ‘NDOF_BUTTON_2’, ‘NDOF_BUTTON_3’, ‘NDOF_BUTTON_4’, ‘NDOF_BUTTON_5’, ‘NDOF_BUTTON_6’, ‘NDOF_BUTTON_7’, ‘NDOF_BUTTON_8’, ‘NDOF_BUTTON_9’, ‘NDOF_BUTTON_10’, ‘NDOF_BUTTON_A’, ‘NDOF_BUTTON_B’, ‘NDOF_BUTTON_C’, ‘ACTIONZONE_AREA’, ‘ACTIONZONE_REGION’, ‘ACTIONZONE_FULLSCREEN’], default ‘NONE’ 
    '''

    value = None
    '''

    :type:  enum in [‘ANY’, ‘NOTHING’, ‘PRESS’, ‘RELEASE’, ‘CLICK’, ‘DOUBLE_CLICK’, ‘CLICK_DRAG’, ‘NORTH’, ‘NORTH_EAST’, ‘EAST’, ‘SOUTH_EAST’, ‘SOUTH’, ‘SOUTH_WEST’, ‘WEST’, ‘NORTH_WEST’], default ‘NOTHING’ 
    '''

    def compare(self, item):
        '''compare 

        :param item: Item 
        :type item: KeyMapItem
        :rtype: boolean 
        :return:  Comparison result 
        '''
        pass

    def to_string(self, compact=False):
        '''to_string 

        :param compact: Compact 
        :type compact: boolean, (optional)
        :rtype: string, (never None) 
        :return:  result 
        '''
        pass


class KeyMapItems:
    '''Collection of keymap items '''

    def new(self,
            idname,
            type,
            value,
            any=False,
            shift=False,
            ctrl=False,
            alt=False,
            oskey=False,
            key_modifier='NONE',
            head=False):
        '''new 

        :param idname: Operator Identifier 
        :type idname: string, (never None)
        :param type: TypeNONE .LEFTMOUSE Left Mouse, LMB.MIDDLEMOUSE Middle Mouse, MMB.RIGHTMOUSE Right Mouse, RMB.BUTTON4MOUSE Button4 Mouse, MB4.BUTTON5MOUSE Button5 Mouse, MB5.BUTTON6MOUSE Button6 Mouse, MB6.BUTTON7MOUSE Button7 Mouse, MB7.PEN Pen.ERASER Eraser.MOUSEMOVE Mouse Move, MsMov.INBETWEEN_MOUSEMOVE In-between Move, MsSubMov.TRACKPADPAN Mouse/Trackpad Pan, MsPan.TRACKPADZOOM Mouse/Trackpad Zoom, MsZoom.MOUSEROTATE Mouse/Trackpad Rotate, MsRot.WHEELUPMOUSE Wheel Up, WhUp.WHEELDOWNMOUSE Wheel Down, WhDown.WHEELINMOUSE Wheel In, WhIn.WHEELOUTMOUSE Wheel Out, WhOut.EVT_TWEAK_L Tweak Left, TwkL.EVT_TWEAK_M Tweak Middle, TwkM.EVT_TWEAK_R Tweak Right, TwkR.A A.B B.C C.D D.E E.F F.G G.H H.I I.J J.K K.L L.M M.N N.O O.P P.Q Q.R R.S S.T T.U U.V V.W W.X X.Y Y.Z Z.ZERO 0.ONE 1.TWO 2.THREE 3.FOUR 4.FIVE 5.SIX 6.SEVEN 7.EIGHT 8.NINE 9.LEFT_CTRL Left Ctrl, CtrlL.LEFT_ALT Left Alt, AltL.LEFT_SHIFT Left Shift, ShiftL.RIGHT_ALT Right Alt, AltR.RIGHT_CTRL Right Ctrl, CtrlR.RIGHT_SHIFT Right Shift, ShiftR.OSKEY OS Key, Cmd.GRLESS Grless.ESC Esc.TAB Tab.RET Return, Enter.SPACE Spacebar, Space.LINE_FEED Line Feed.BACK_SPACE Back Space, BkSpace.DEL Delete, Del.SEMI_COLON ;.PERIOD ..COMMA ,.QUOTE “.ACCENT_GRAVE `.MINUS -.PLUS +.SLASH /.BACK_SLASH .EQUAL =.LEFT_BRACKET [.RIGHT_BRACKET ].LEFT_ARROW Left Arrow, ←.DOWN_ARROW Down Arrow, ↓.RIGHT_ARROW Right Arrow, →.UP_ARROW Up Arrow, ↑.NUMPAD_2 Numpad 2, Pad2.NUMPAD_4 Numpad 4, Pad4.NUMPAD_6 Numpad 6, Pad6.NUMPAD_8 Numpad 8, Pad8.NUMPAD_1 Numpad 1, Pad1.NUMPAD_3 Numpad 3, Pad3.NUMPAD_5 Numpad 5, Pad5.NUMPAD_7 Numpad 7, Pad7.NUMPAD_9 Numpad 9, Pad9.NUMPAD_PERIOD Numpad ., Pad..NUMPAD_SLASH Numpad /, Pad/.NUMPAD_ASTERIX Numpad *, Pad*.NUMPAD_0 Numpad 0, Pad0.NUMPAD_MINUS Numpad -, Pad-.NUMPAD_ENTER Numpad Enter, PadEnter.NUMPAD_PLUS Numpad +, Pad+.F1 F1.F2 F2.F3 F3.F4 F4.F5 F5.F6 F6.F7 F7.F8 F8.F9 F9.F10 F10.F11 F11.F12 F12.F13 F13.F14 F14.F15 F15.F16 F16.F17 F17.F18 F18.F19 F19.PAUSE Pause.INSERT Insert, Ins.HOME Home.PAGE_UP Page Up, PgUp.PAGE_DOWN Page Down, PgDown.END End.MEDIA_PLAY Media Play/Pause, >/||.MEDIA_STOP Media Stop, Stop.MEDIA_FIRST Media First, |<<.MEDIA_LAST Media Last, >>|.TEXTINPUT Text Input, TxtIn.WINDOW_DEACTIVATE Window Deactivate.TIMER Timer, Tmr.TIMER0 Timer 0, Tmr0.TIMER1 Timer 1, Tmr1.TIMER2 Timer 2, Tmr2.TIMER_JOBS Timer Jobs, TmrJob.TIMER_AUTOSAVE Timer Autosave, TmrSave.TIMER_REPORT Timer Report, TmrReport.TIMERREGION Timer Region, TmrReg.NDOF_MOTION NDOF Motion, NdofMov.NDOF_BUTTON_MENU NDOF Menu, NdofMenu.NDOF_BUTTON_FIT NDOF Fit, NdofFit.NDOF_BUTTON_TOP NDOF Top, Ndof↑.NDOF_BUTTON_BOTTOM NDOF Bottom, Ndof↓.NDOF_BUTTON_LEFT NDOF Left, Ndof←.NDOF_BUTTON_RIGHT NDOF Right, Ndof→.NDOF_BUTTON_FRONT NDOF Front, NdofFront.NDOF_BUTTON_BACK NDOF Back, NdofBack.NDOF_BUTTON_ISO1 NDOF Isometric 1, NdofIso1.NDOF_BUTTON_ISO2 NDOF Isometric 2, NdofIso2.NDOF_BUTTON_ROLL_CW NDOF Roll CW, NdofRCW.NDOF_BUTTON_ROLL_CCW NDOF Roll CCW, NdofRCCW.NDOF_BUTTON_SPIN_CW NDOF Spin CW, NdofSCW.NDOF_BUTTON_SPIN_CCW NDOF Spin CCW, NdofSCCW.NDOF_BUTTON_TILT_CW NDOF Tilt CW, NdofTCW.NDOF_BUTTON_TILT_CCW NDOF Tilt CCW, NdofTCCW.NDOF_BUTTON_ROTATE NDOF Rotate, NdofRot.NDOF_BUTTON_PANZOOM NDOF Pan/Zoom, NdofPanZoom.NDOF_BUTTON_DOMINANT NDOF Dominant, NdofDom.NDOF_BUTTON_PLUS NDOF Plus, Ndof+.NDOF_BUTTON_MINUS NDOF Minus, Ndof-.NDOF_BUTTON_ESC NDOF Esc, NdofEsc.NDOF_BUTTON_ALT NDOF Alt, NdofAlt.NDOF_BUTTON_SHIFT NDOF Shift, NdofShift.NDOF_BUTTON_CTRL NDOF Ctrl, NdofCtrl.NDOF_BUTTON_1 NDOF Button 1, NdofB1.NDOF_BUTTON_2 NDOF Button 2, NdofB2.NDOF_BUTTON_3 NDOF Button 3, NdofB3.NDOF_BUTTON_4 NDOF Button 4, NdofB4.NDOF_BUTTON_5 NDOF Button 5, NdofB5.NDOF_BUTTON_6 NDOF Button 6, NdofB6.NDOF_BUTTON_7 NDOF Button 7, NdofB7.NDOF_BUTTON_8 NDOF Button 8, NdofB8.NDOF_BUTTON_9 NDOF Button 9, NdofB9.NDOF_BUTTON_10 NDOF Button 10, NdofB10.NDOF_BUTTON_A NDOF Button A, NdofBA.NDOF_BUTTON_B NDOF Button B, NdofBB.NDOF_BUTTON_C NDOF Button C, NdofBC.ACTIONZONE_AREA ActionZone Area, AZone Area.ACTIONZONE_REGION ActionZone Region, AZone Region.ACTIONZONE_FULLSCREEN ActionZone Fullscreen, AZone FullScr. 
        :type type: enum in ['NONE', 'LEFTMOUSE', 'MIDDLEMOUSE', 'RIGHTMOUSE', 'BUTTON4MOUSE', 'BUTTON5MOUSE', 'BUTTON6MOUSE', 'BUTTON7MOUSE', 'PEN', 'ERASER', 'MOUSEMOVE', 'INBETWEEN_MOUSEMOVE', 'TRACKPADPAN', 'TRACKPADZOOM', 'MOUSEROTATE', 'WHEELUPMOUSE', 'WHEELDOWNMOUSE', 'WHEELINMOUSE', 'WHEELOUTMOUSE', 'EVT_TWEAK_L', 'EVT_TWEAK_M', 'EVT_TWEAK_R', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'ZERO', 'ONE', 'TWO', 'THREE', 'FOUR', 'FIVE', 'SIX', 'SEVEN', 'EIGHT', 'NINE', 'LEFT_CTRL', 'LEFT_ALT', 'LEFT_SHIFT', 'RIGHT_ALT', 'RIGHT_CTRL', 'RIGHT_SHIFT', 'OSKEY', 'GRLESS', 'ESC', 'TAB', 'RET', 'SPACE', 'LINE_FEED', 'BACK_SPACE', 'DEL', 'SEMI_COLON', 'PERIOD', 'COMMA', 'QUOTE', 'ACCENT_GRAVE', 'MINUS', 'PLUS', 'SLASH', 'BACK_SLASH', 'EQUAL', 'LEFT_BRACKET', 'RIGHT_BRACKET', 'LEFT_ARROW', 'DOWN_ARROW', 'RIGHT_ARROW', 'UP_ARROW', 'NUMPAD_2', 'NUMPAD_4', 'NUMPAD_6', 'NUMPAD_8', 'NUMPAD_1', 'NUMPAD_3', 'NUMPAD_5', 'NUMPAD_7', 'NUMPAD_9', 'NUMPAD_PERIOD', 'NUMPAD_SLASH', 'NUMPAD_ASTERIX', 'NUMPAD_0', 'NUMPAD_MINUS', 'NUMPAD_ENTER', 'NUMPAD_PLUS', 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'F12', 'F13', 'F14', 'F15', 'F16', 'F17', 'F18', 'F19', 'PAUSE', 'INSERT', 'HOME', 'PAGE_UP', 'PAGE_DOWN', 'END', 'MEDIA_PLAY', 'MEDIA_STOP', 'MEDIA_FIRST', 'MEDIA_LAST', 'TEXTINPUT', 'WINDOW_DEACTIVATE', 'TIMER', 'TIMER0', 'TIMER1', 'TIMER2', 'TIMER_JOBS', 'TIMER_AUTOSAVE', 'TIMER_REPORT', 'TIMERREGION', 'NDOF_MOTION', 'NDOF_BUTTON_MENU', 'NDOF_BUTTON_FIT', 'NDOF_BUTTON_TOP', 'NDOF_BUTTON_BOTTOM', 'NDOF_BUTTON_LEFT', 'NDOF_BUTTON_RIGHT', 'NDOF_BUTTON_FRONT', 'NDOF_BUTTON_BACK', 'NDOF_BUTTON_ISO1', 'NDOF_BUTTON_ISO2', 'NDOF_BUTTON_ROLL_CW', 'NDOF_BUTTON_ROLL_CCW', 'NDOF_BUTTON_SPIN_CW', 'NDOF_BUTTON_SPIN_CCW', 'NDOF_BUTTON_TILT_CW', 'NDOF_BUTTON_TILT_CCW', 'NDOF_BUTTON_ROTATE', 'NDOF_BUTTON_PANZOOM', 'NDOF_BUTTON_DOMINANT', 'NDOF_BUTTON_PLUS', 'NDOF_BUTTON_MINUS', 'NDOF_BUTTON_ESC', 'NDOF_BUTTON_ALT', 'NDOF_BUTTON_SHIFT', 'NDOF_BUTTON_CTRL', 'NDOF_BUTTON_1', 'NDOF_BUTTON_2', 'NDOF_BUTTON_3', 'NDOF_BUTTON_4', 'NDOF_BUTTON_5', 'NDOF_BUTTON_6', 'NDOF_BUTTON_7', 'NDOF_BUTTON_8', 'NDOF_BUTTON_9', 'NDOF_BUTTON_10', 'NDOF_BUTTON_A', 'NDOF_BUTTON_B', 'NDOF_BUTTON_C', 'ACTIONZONE_AREA', 'ACTIONZONE_REGION', 'ACTIONZONE_FULLSCREEN']
        :param value: Value 
        :type value: enum in ['ANY', 'NOTHING', 'PRESS', 'RELEASE', 'CLICK', 'DOUBLE_CLICK', 'CLICK_DRAG', 'NORTH', 'NORTH_EAST', 'EAST', 'SOUTH_EAST', 'SOUTH', 'SOUTH_WEST', 'WEST', 'NORTH_WEST']
        :param any: Any 
        :type any: boolean, (optional)
        :param shift: Shift 
        :type shift: boolean, (optional)
        :param ctrl: Ctrl 
        :type ctrl: boolean, (optional)
        :param alt: Alt 
        :type alt: boolean, (optional)
        :param oskey: OS Key 
        :type oskey: boolean, (optional)
        :param key_modifier: Key ModifierNONE .LEFTMOUSE Left Mouse, LMB.MIDDLEMOUSE Middle Mouse, MMB.RIGHTMOUSE Right Mouse, RMB.BUTTON4MOUSE Button4 Mouse, MB4.BUTTON5MOUSE Button5 Mouse, MB5.BUTTON6MOUSE Button6 Mouse, MB6.BUTTON7MOUSE Button7 Mouse, MB7.PEN Pen.ERASER Eraser.MOUSEMOVE Mouse Move, MsMov.INBETWEEN_MOUSEMOVE In-between Move, MsSubMov.TRACKPADPAN Mouse/Trackpad Pan, MsPan.TRACKPADZOOM Mouse/Trackpad Zoom, MsZoom.MOUSEROTATE Mouse/Trackpad Rotate, MsRot.WHEELUPMOUSE Wheel Up, WhUp.WHEELDOWNMOUSE Wheel Down, WhDown.WHEELINMOUSE Wheel In, WhIn.WHEELOUTMOUSE Wheel Out, WhOut.EVT_TWEAK_L Tweak Left, TwkL.EVT_TWEAK_M Tweak Middle, TwkM.EVT_TWEAK_R Tweak Right, TwkR.A A.B B.C C.D D.E E.F F.G G.H H.I I.J J.K K.L L.M M.N N.O O.P P.Q Q.R R.S S.T T.U U.V V.W W.X X.Y Y.Z Z.ZERO 0.ONE 1.TWO 2.THREE 3.FOUR 4.FIVE 5.SIX 6.SEVEN 7.EIGHT 8.NINE 9.LEFT_CTRL Left Ctrl, CtrlL.LEFT_ALT Left Alt, AltL.LEFT_SHIFT Left Shift, ShiftL.RIGHT_ALT Right Alt, AltR.RIGHT_CTRL Right Ctrl, CtrlR.RIGHT_SHIFT Right Shift, ShiftR.OSKEY OS Key, Cmd.GRLESS Grless.ESC Esc.TAB Tab.RET Return, Enter.SPACE Spacebar, Space.LINE_FEED Line Feed.BACK_SPACE Back Space, BkSpace.DEL Delete, Del.SEMI_COLON ;.PERIOD ..COMMA ,.QUOTE “.ACCENT_GRAVE `.MINUS -.PLUS +.SLASH /.BACK_SLASH .EQUAL =.LEFT_BRACKET [.RIGHT_BRACKET ].LEFT_ARROW Left Arrow, ←.DOWN_ARROW Down Arrow, ↓.RIGHT_ARROW Right Arrow, →.UP_ARROW Up Arrow, ↑.NUMPAD_2 Numpad 2, Pad2.NUMPAD_4 Numpad 4, Pad4.NUMPAD_6 Numpad 6, Pad6.NUMPAD_8 Numpad 8, Pad8.NUMPAD_1 Numpad 1, Pad1.NUMPAD_3 Numpad 3, Pad3.NUMPAD_5 Numpad 5, Pad5.NUMPAD_7 Numpad 7, Pad7.NUMPAD_9 Numpad 9, Pad9.NUMPAD_PERIOD Numpad ., Pad..NUMPAD_SLASH Numpad /, Pad/.NUMPAD_ASTERIX Numpad *, Pad*.NUMPAD_0 Numpad 0, Pad0.NUMPAD_MINUS Numpad -, Pad-.NUMPAD_ENTER Numpad Enter, PadEnter.NUMPAD_PLUS Numpad +, Pad+.F1 F1.F2 F2.F3 F3.F4 F4.F5 F5.F6 F6.F7 F7.F8 F8.F9 F9.F10 F10.F11 F11.F12 F12.F13 F13.F14 F14.F15 F15.F16 F16.F17 F17.F18 F18.F19 F19.PAUSE Pause.INSERT Insert, Ins.HOME Home.PAGE_UP Page Up, PgUp.PAGE_DOWN Page Down, PgDown.END End.MEDIA_PLAY Media Play/Pause, >/||.MEDIA_STOP Media Stop, Stop.MEDIA_FIRST Media First, |<<.MEDIA_LAST Media Last, >>|.TEXTINPUT Text Input, TxtIn.WINDOW_DEACTIVATE Window Deactivate.TIMER Timer, Tmr.TIMER0 Timer 0, Tmr0.TIMER1 Timer 1, Tmr1.TIMER2 Timer 2, Tmr2.TIMER_JOBS Timer Jobs, TmrJob.TIMER_AUTOSAVE Timer Autosave, TmrSave.TIMER_REPORT Timer Report, TmrReport.TIMERREGION Timer Region, TmrReg.NDOF_MOTION NDOF Motion, NdofMov.NDOF_BUTTON_MENU NDOF Menu, NdofMenu.NDOF_BUTTON_FIT NDOF Fit, NdofFit.NDOF_BUTTON_TOP NDOF Top, Ndof↑.NDOF_BUTTON_BOTTOM NDOF Bottom, Ndof↓.NDOF_BUTTON_LEFT NDOF Left, Ndof←.NDOF_BUTTON_RIGHT NDOF Right, Ndof→.NDOF_BUTTON_FRONT NDOF Front, NdofFront.NDOF_BUTTON_BACK NDOF Back, NdofBack.NDOF_BUTTON_ISO1 NDOF Isometric 1, NdofIso1.NDOF_BUTTON_ISO2 NDOF Isometric 2, NdofIso2.NDOF_BUTTON_ROLL_CW NDOF Roll CW, NdofRCW.NDOF_BUTTON_ROLL_CCW NDOF Roll CCW, NdofRCCW.NDOF_BUTTON_SPIN_CW NDOF Spin CW, NdofSCW.NDOF_BUTTON_SPIN_CCW NDOF Spin CCW, NdofSCCW.NDOF_BUTTON_TILT_CW NDOF Tilt CW, NdofTCW.NDOF_BUTTON_TILT_CCW NDOF Tilt CCW, NdofTCCW.NDOF_BUTTON_ROTATE NDOF Rotate, NdofRot.NDOF_BUTTON_PANZOOM NDOF Pan/Zoom, NdofPanZoom.NDOF_BUTTON_DOMINANT NDOF Dominant, NdofDom.NDOF_BUTTON_PLUS NDOF Plus, Ndof+.NDOF_BUTTON_MINUS NDOF Minus, Ndof-.NDOF_BUTTON_ESC NDOF Esc, NdofEsc.NDOF_BUTTON_ALT NDOF Alt, NdofAlt.NDOF_BUTTON_SHIFT NDOF Shift, NdofShift.NDOF_BUTTON_CTRL NDOF Ctrl, NdofCtrl.NDOF_BUTTON_1 NDOF Button 1, NdofB1.NDOF_BUTTON_2 NDOF Button 2, NdofB2.NDOF_BUTTON_3 NDOF Button 3, NdofB3.NDOF_BUTTON_4 NDOF Button 4, NdofB4.NDOF_BUTTON_5 NDOF Button 5, NdofB5.NDOF_BUTTON_6 NDOF Button 6, NdofB6.NDOF_BUTTON_7 NDOF Button 7, NdofB7.NDOF_BUTTON_8 NDOF Button 8, NdofB8.NDOF_BUTTON_9 NDOF Button 9, NdofB9.NDOF_BUTTON_10 NDOF Button 10, NdofB10.NDOF_BUTTON_A NDOF Button A, NdofBA.NDOF_BUTTON_B NDOF Button B, NdofBB.NDOF_BUTTON_C NDOF Button C, NdofBC.ACTIONZONE_AREA ActionZone Area, AZone Area.ACTIONZONE_REGION ActionZone Region, AZone Region.ACTIONZONE_FULLSCREEN ActionZone Fullscreen, AZone FullScr. 
        :type key_modifier: enum in ['NONE', 'LEFTMOUSE', 'MIDDLEMOUSE', 'RIGHTMOUSE', 'BUTTON4MOUSE', 'BUTTON5MOUSE', 'BUTTON6MOUSE', 'BUTTON7MOUSE', 'PEN', 'ERASER', 'MOUSEMOVE', 'INBETWEEN_MOUSEMOVE', 'TRACKPADPAN', 'TRACKPADZOOM', 'MOUSEROTATE', 'WHEELUPMOUSE', 'WHEELDOWNMOUSE', 'WHEELINMOUSE', 'WHEELOUTMOUSE', 'EVT_TWEAK_L', 'EVT_TWEAK_M', 'EVT_TWEAK_R', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'ZERO', 'ONE', 'TWO', 'THREE', 'FOUR', 'FIVE', 'SIX', 'SEVEN', 'EIGHT', 'NINE', 'LEFT_CTRL', 'LEFT_ALT', 'LEFT_SHIFT', 'RIGHT_ALT', 'RIGHT_CTRL', 'RIGHT_SHIFT', 'OSKEY', 'GRLESS', 'ESC', 'TAB', 'RET', 'SPACE', 'LINE_FEED', 'BACK_SPACE', 'DEL', 'SEMI_COLON', 'PERIOD', 'COMMA', 'QUOTE', 'ACCENT_GRAVE', 'MINUS', 'PLUS', 'SLASH', 'BACK_SLASH', 'EQUAL', 'LEFT_BRACKET', 'RIGHT_BRACKET', 'LEFT_ARROW', 'DOWN_ARROW', 'RIGHT_ARROW', 'UP_ARROW', 'NUMPAD_2', 'NUMPAD_4', 'NUMPAD_6', 'NUMPAD_8', 'NUMPAD_1', 'NUMPAD_3', 'NUMPAD_5', 'NUMPAD_7', 'NUMPAD_9', 'NUMPAD_PERIOD', 'NUMPAD_SLASH', 'NUMPAD_ASTERIX', 'NUMPAD_0', 'NUMPAD_MINUS', 'NUMPAD_ENTER', 'NUMPAD_PLUS', 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'F12', 'F13', 'F14', 'F15', 'F16', 'F17', 'F18', 'F19', 'PAUSE', 'INSERT', 'HOME', 'PAGE_UP', 'PAGE_DOWN', 'END', 'MEDIA_PLAY', 'MEDIA_STOP', 'MEDIA_FIRST', 'MEDIA_LAST', 'TEXTINPUT', 'WINDOW_DEACTIVATE', 'TIMER', 'TIMER0', 'TIMER1', 'TIMER2', 'TIMER_JOBS', 'TIMER_AUTOSAVE', 'TIMER_REPORT', 'TIMERREGION', 'NDOF_MOTION', 'NDOF_BUTTON_MENU', 'NDOF_BUTTON_FIT', 'NDOF_BUTTON_TOP', 'NDOF_BUTTON_BOTTOM', 'NDOF_BUTTON_LEFT', 'NDOF_BUTTON_RIGHT', 'NDOF_BUTTON_FRONT', 'NDOF_BUTTON_BACK', 'NDOF_BUTTON_ISO1', 'NDOF_BUTTON_ISO2', 'NDOF_BUTTON_ROLL_CW', 'NDOF_BUTTON_ROLL_CCW', 'NDOF_BUTTON_SPIN_CW', 'NDOF_BUTTON_SPIN_CCW', 'NDOF_BUTTON_TILT_CW', 'NDOF_BUTTON_TILT_CCW', 'NDOF_BUTTON_ROTATE', 'NDOF_BUTTON_PANZOOM', 'NDOF_BUTTON_DOMINANT', 'NDOF_BUTTON_PLUS', 'NDOF_BUTTON_MINUS', 'NDOF_BUTTON_ESC', 'NDOF_BUTTON_ALT', 'NDOF_BUTTON_SHIFT', 'NDOF_BUTTON_CTRL', 'NDOF_BUTTON_1', 'NDOF_BUTTON_2', 'NDOF_BUTTON_3', 'NDOF_BUTTON_4', 'NDOF_BUTTON_5', 'NDOF_BUTTON_6', 'NDOF_BUTTON_7', 'NDOF_BUTTON_8', 'NDOF_BUTTON_9', 'NDOF_BUTTON_10', 'NDOF_BUTTON_A', 'NDOF_BUTTON_B', 'NDOF_BUTTON_C', 'ACTIONZONE_AREA', 'ACTIONZONE_REGION', 'ACTIONZONE_FULLSCREEN'], (optional)
        :param head: At Head, Force item to be added at start (not end) of key map so that it doesn’t get blocked by an existing key map item 
        :type head: boolean, (optional)
        :rtype: KeyMapItem 
        :return:  Item, Added key map item 
        '''
        pass

    def new_modal(self,
                  propvalue,
                  type,
                  value,
                  any=False,
                  shift=False,
                  ctrl=False,
                  alt=False,
                  oskey=False,
                  key_modifier='NONE'):
        '''new_modal 

        :param propvalue: Property Value 
        :type propvalue: string, (never None)
        :param type: TypeNONE .LEFTMOUSE Left Mouse, LMB.MIDDLEMOUSE Middle Mouse, MMB.RIGHTMOUSE Right Mouse, RMB.BUTTON4MOUSE Button4 Mouse, MB4.BUTTON5MOUSE Button5 Mouse, MB5.BUTTON6MOUSE Button6 Mouse, MB6.BUTTON7MOUSE Button7 Mouse, MB7.PEN Pen.ERASER Eraser.MOUSEMOVE Mouse Move, MsMov.INBETWEEN_MOUSEMOVE In-between Move, MsSubMov.TRACKPADPAN Mouse/Trackpad Pan, MsPan.TRACKPADZOOM Mouse/Trackpad Zoom, MsZoom.MOUSEROTATE Mouse/Trackpad Rotate, MsRot.WHEELUPMOUSE Wheel Up, WhUp.WHEELDOWNMOUSE Wheel Down, WhDown.WHEELINMOUSE Wheel In, WhIn.WHEELOUTMOUSE Wheel Out, WhOut.EVT_TWEAK_L Tweak Left, TwkL.EVT_TWEAK_M Tweak Middle, TwkM.EVT_TWEAK_R Tweak Right, TwkR.A A.B B.C C.D D.E E.F F.G G.H H.I I.J J.K K.L L.M M.N N.O O.P P.Q Q.R R.S S.T T.U U.V V.W W.X X.Y Y.Z Z.ZERO 0.ONE 1.TWO 2.THREE 3.FOUR 4.FIVE 5.SIX 6.SEVEN 7.EIGHT 8.NINE 9.LEFT_CTRL Left Ctrl, CtrlL.LEFT_ALT Left Alt, AltL.LEFT_SHIFT Left Shift, ShiftL.RIGHT_ALT Right Alt, AltR.RIGHT_CTRL Right Ctrl, CtrlR.RIGHT_SHIFT Right Shift, ShiftR.OSKEY OS Key, Cmd.GRLESS Grless.ESC Esc.TAB Tab.RET Return, Enter.SPACE Spacebar, Space.LINE_FEED Line Feed.BACK_SPACE Back Space, BkSpace.DEL Delete, Del.SEMI_COLON ;.PERIOD ..COMMA ,.QUOTE “.ACCENT_GRAVE `.MINUS -.PLUS +.SLASH /.BACK_SLASH .EQUAL =.LEFT_BRACKET [.RIGHT_BRACKET ].LEFT_ARROW Left Arrow, ←.DOWN_ARROW Down Arrow, ↓.RIGHT_ARROW Right Arrow, →.UP_ARROW Up Arrow, ↑.NUMPAD_2 Numpad 2, Pad2.NUMPAD_4 Numpad 4, Pad4.NUMPAD_6 Numpad 6, Pad6.NUMPAD_8 Numpad 8, Pad8.NUMPAD_1 Numpad 1, Pad1.NUMPAD_3 Numpad 3, Pad3.NUMPAD_5 Numpad 5, Pad5.NUMPAD_7 Numpad 7, Pad7.NUMPAD_9 Numpad 9, Pad9.NUMPAD_PERIOD Numpad ., Pad..NUMPAD_SLASH Numpad /, Pad/.NUMPAD_ASTERIX Numpad *, Pad*.NUMPAD_0 Numpad 0, Pad0.NUMPAD_MINUS Numpad -, Pad-.NUMPAD_ENTER Numpad Enter, PadEnter.NUMPAD_PLUS Numpad +, Pad+.F1 F1.F2 F2.F3 F3.F4 F4.F5 F5.F6 F6.F7 F7.F8 F8.F9 F9.F10 F10.F11 F11.F12 F12.F13 F13.F14 F14.F15 F15.F16 F16.F17 F17.F18 F18.F19 F19.PAUSE Pause.INSERT Insert, Ins.HOME Home.PAGE_UP Page Up, PgUp.PAGE_DOWN Page Down, PgDown.END End.MEDIA_PLAY Media Play/Pause, >/||.MEDIA_STOP Media Stop, Stop.MEDIA_FIRST Media First, |<<.MEDIA_LAST Media Last, >>|.TEXTINPUT Text Input, TxtIn.WINDOW_DEACTIVATE Window Deactivate.TIMER Timer, Tmr.TIMER0 Timer 0, Tmr0.TIMER1 Timer 1, Tmr1.TIMER2 Timer 2, Tmr2.TIMER_JOBS Timer Jobs, TmrJob.TIMER_AUTOSAVE Timer Autosave, TmrSave.TIMER_REPORT Timer Report, TmrReport.TIMERREGION Timer Region, TmrReg.NDOF_MOTION NDOF Motion, NdofMov.NDOF_BUTTON_MENU NDOF Menu, NdofMenu.NDOF_BUTTON_FIT NDOF Fit, NdofFit.NDOF_BUTTON_TOP NDOF Top, Ndof↑.NDOF_BUTTON_BOTTOM NDOF Bottom, Ndof↓.NDOF_BUTTON_LEFT NDOF Left, Ndof←.NDOF_BUTTON_RIGHT NDOF Right, Ndof→.NDOF_BUTTON_FRONT NDOF Front, NdofFront.NDOF_BUTTON_BACK NDOF Back, NdofBack.NDOF_BUTTON_ISO1 NDOF Isometric 1, NdofIso1.NDOF_BUTTON_ISO2 NDOF Isometric 2, NdofIso2.NDOF_BUTTON_ROLL_CW NDOF Roll CW, NdofRCW.NDOF_BUTTON_ROLL_CCW NDOF Roll CCW, NdofRCCW.NDOF_BUTTON_SPIN_CW NDOF Spin CW, NdofSCW.NDOF_BUTTON_SPIN_CCW NDOF Spin CCW, NdofSCCW.NDOF_BUTTON_TILT_CW NDOF Tilt CW, NdofTCW.NDOF_BUTTON_TILT_CCW NDOF Tilt CCW, NdofTCCW.NDOF_BUTTON_ROTATE NDOF Rotate, NdofRot.NDOF_BUTTON_PANZOOM NDOF Pan/Zoom, NdofPanZoom.NDOF_BUTTON_DOMINANT NDOF Dominant, NdofDom.NDOF_BUTTON_PLUS NDOF Plus, Ndof+.NDOF_BUTTON_MINUS NDOF Minus, Ndof-.NDOF_BUTTON_ESC NDOF Esc, NdofEsc.NDOF_BUTTON_ALT NDOF Alt, NdofAlt.NDOF_BUTTON_SHIFT NDOF Shift, NdofShift.NDOF_BUTTON_CTRL NDOF Ctrl, NdofCtrl.NDOF_BUTTON_1 NDOF Button 1, NdofB1.NDOF_BUTTON_2 NDOF Button 2, NdofB2.NDOF_BUTTON_3 NDOF Button 3, NdofB3.NDOF_BUTTON_4 NDOF Button 4, NdofB4.NDOF_BUTTON_5 NDOF Button 5, NdofB5.NDOF_BUTTON_6 NDOF Button 6, NdofB6.NDOF_BUTTON_7 NDOF Button 7, NdofB7.NDOF_BUTTON_8 NDOF Button 8, NdofB8.NDOF_BUTTON_9 NDOF Button 9, NdofB9.NDOF_BUTTON_10 NDOF Button 10, NdofB10.NDOF_BUTTON_A NDOF Button A, NdofBA.NDOF_BUTTON_B NDOF Button B, NdofBB.NDOF_BUTTON_C NDOF Button C, NdofBC.ACTIONZONE_AREA ActionZone Area, AZone Area.ACTIONZONE_REGION ActionZone Region, AZone Region.ACTIONZONE_FULLSCREEN ActionZone Fullscreen, AZone FullScr. 
        :type type: enum in ['NONE', 'LEFTMOUSE', 'MIDDLEMOUSE', 'RIGHTMOUSE', 'BUTTON4MOUSE', 'BUTTON5MOUSE', 'BUTTON6MOUSE', 'BUTTON7MOUSE', 'PEN', 'ERASER', 'MOUSEMOVE', 'INBETWEEN_MOUSEMOVE', 'TRACKPADPAN', 'TRACKPADZOOM', 'MOUSEROTATE', 'WHEELUPMOUSE', 'WHEELDOWNMOUSE', 'WHEELINMOUSE', 'WHEELOUTMOUSE', 'EVT_TWEAK_L', 'EVT_TWEAK_M', 'EVT_TWEAK_R', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'ZERO', 'ONE', 'TWO', 'THREE', 'FOUR', 'FIVE', 'SIX', 'SEVEN', 'EIGHT', 'NINE', 'LEFT_CTRL', 'LEFT_ALT', 'LEFT_SHIFT', 'RIGHT_ALT', 'RIGHT_CTRL', 'RIGHT_SHIFT', 'OSKEY', 'GRLESS', 'ESC', 'TAB', 'RET', 'SPACE', 'LINE_FEED', 'BACK_SPACE', 'DEL', 'SEMI_COLON', 'PERIOD', 'COMMA', 'QUOTE', 'ACCENT_GRAVE', 'MINUS', 'PLUS', 'SLASH', 'BACK_SLASH', 'EQUAL', 'LEFT_BRACKET', 'RIGHT_BRACKET', 'LEFT_ARROW', 'DOWN_ARROW', 'RIGHT_ARROW', 'UP_ARROW', 'NUMPAD_2', 'NUMPAD_4', 'NUMPAD_6', 'NUMPAD_8', 'NUMPAD_1', 'NUMPAD_3', 'NUMPAD_5', 'NUMPAD_7', 'NUMPAD_9', 'NUMPAD_PERIOD', 'NUMPAD_SLASH', 'NUMPAD_ASTERIX', 'NUMPAD_0', 'NUMPAD_MINUS', 'NUMPAD_ENTER', 'NUMPAD_PLUS', 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'F12', 'F13', 'F14', 'F15', 'F16', 'F17', 'F18', 'F19', 'PAUSE', 'INSERT', 'HOME', 'PAGE_UP', 'PAGE_DOWN', 'END', 'MEDIA_PLAY', 'MEDIA_STOP', 'MEDIA_FIRST', 'MEDIA_LAST', 'TEXTINPUT', 'WINDOW_DEACTIVATE', 'TIMER', 'TIMER0', 'TIMER1', 'TIMER2', 'TIMER_JOBS', 'TIMER_AUTOSAVE', 'TIMER_REPORT', 'TIMERREGION', 'NDOF_MOTION', 'NDOF_BUTTON_MENU', 'NDOF_BUTTON_FIT', 'NDOF_BUTTON_TOP', 'NDOF_BUTTON_BOTTOM', 'NDOF_BUTTON_LEFT', 'NDOF_BUTTON_RIGHT', 'NDOF_BUTTON_FRONT', 'NDOF_BUTTON_BACK', 'NDOF_BUTTON_ISO1', 'NDOF_BUTTON_ISO2', 'NDOF_BUTTON_ROLL_CW', 'NDOF_BUTTON_ROLL_CCW', 'NDOF_BUTTON_SPIN_CW', 'NDOF_BUTTON_SPIN_CCW', 'NDOF_BUTTON_TILT_CW', 'NDOF_BUTTON_TILT_CCW', 'NDOF_BUTTON_ROTATE', 'NDOF_BUTTON_PANZOOM', 'NDOF_BUTTON_DOMINANT', 'NDOF_BUTTON_PLUS', 'NDOF_BUTTON_MINUS', 'NDOF_BUTTON_ESC', 'NDOF_BUTTON_ALT', 'NDOF_BUTTON_SHIFT', 'NDOF_BUTTON_CTRL', 'NDOF_BUTTON_1', 'NDOF_BUTTON_2', 'NDOF_BUTTON_3', 'NDOF_BUTTON_4', 'NDOF_BUTTON_5', 'NDOF_BUTTON_6', 'NDOF_BUTTON_7', 'NDOF_BUTTON_8', 'NDOF_BUTTON_9', 'NDOF_BUTTON_10', 'NDOF_BUTTON_A', 'NDOF_BUTTON_B', 'NDOF_BUTTON_C', 'ACTIONZONE_AREA', 'ACTIONZONE_REGION', 'ACTIONZONE_FULLSCREEN']
        :param value: Value 
        :type value: enum in ['ANY', 'NOTHING', 'PRESS', 'RELEASE', 'CLICK', 'DOUBLE_CLICK', 'CLICK_DRAG', 'NORTH', 'NORTH_EAST', 'EAST', 'SOUTH_EAST', 'SOUTH', 'SOUTH_WEST', 'WEST', 'NORTH_WEST']
        :param any: Any 
        :type any: boolean, (optional)
        :param shift: Shift 
        :type shift: boolean, (optional)
        :param ctrl: Ctrl 
        :type ctrl: boolean, (optional)
        :param alt: Alt 
        :type alt: boolean, (optional)
        :param oskey: OS Key 
        :type oskey: boolean, (optional)
        :param key_modifier: Key ModifierNONE .LEFTMOUSE Left Mouse, LMB.MIDDLEMOUSE Middle Mouse, MMB.RIGHTMOUSE Right Mouse, RMB.BUTTON4MOUSE Button4 Mouse, MB4.BUTTON5MOUSE Button5 Mouse, MB5.BUTTON6MOUSE Button6 Mouse, MB6.BUTTON7MOUSE Button7 Mouse, MB7.PEN Pen.ERASER Eraser.MOUSEMOVE Mouse Move, MsMov.INBETWEEN_MOUSEMOVE In-between Move, MsSubMov.TRACKPADPAN Mouse/Trackpad Pan, MsPan.TRACKPADZOOM Mouse/Trackpad Zoom, MsZoom.MOUSEROTATE Mouse/Trackpad Rotate, MsRot.WHEELUPMOUSE Wheel Up, WhUp.WHEELDOWNMOUSE Wheel Down, WhDown.WHEELINMOUSE Wheel In, WhIn.WHEELOUTMOUSE Wheel Out, WhOut.EVT_TWEAK_L Tweak Left, TwkL.EVT_TWEAK_M Tweak Middle, TwkM.EVT_TWEAK_R Tweak Right, TwkR.A A.B B.C C.D D.E E.F F.G G.H H.I I.J J.K K.L L.M M.N N.O O.P P.Q Q.R R.S S.T T.U U.V V.W W.X X.Y Y.Z Z.ZERO 0.ONE 1.TWO 2.THREE 3.FOUR 4.FIVE 5.SIX 6.SEVEN 7.EIGHT 8.NINE 9.LEFT_CTRL Left Ctrl, CtrlL.LEFT_ALT Left Alt, AltL.LEFT_SHIFT Left Shift, ShiftL.RIGHT_ALT Right Alt, AltR.RIGHT_CTRL Right Ctrl, CtrlR.RIGHT_SHIFT Right Shift, ShiftR.OSKEY OS Key, Cmd.GRLESS Grless.ESC Esc.TAB Tab.RET Return, Enter.SPACE Spacebar, Space.LINE_FEED Line Feed.BACK_SPACE Back Space, BkSpace.DEL Delete, Del.SEMI_COLON ;.PERIOD ..COMMA ,.QUOTE “.ACCENT_GRAVE `.MINUS -.PLUS +.SLASH /.BACK_SLASH .EQUAL =.LEFT_BRACKET [.RIGHT_BRACKET ].LEFT_ARROW Left Arrow, ←.DOWN_ARROW Down Arrow, ↓.RIGHT_ARROW Right Arrow, →.UP_ARROW Up Arrow, ↑.NUMPAD_2 Numpad 2, Pad2.NUMPAD_4 Numpad 4, Pad4.NUMPAD_6 Numpad 6, Pad6.NUMPAD_8 Numpad 8, Pad8.NUMPAD_1 Numpad 1, Pad1.NUMPAD_3 Numpad 3, Pad3.NUMPAD_5 Numpad 5, Pad5.NUMPAD_7 Numpad 7, Pad7.NUMPAD_9 Numpad 9, Pad9.NUMPAD_PERIOD Numpad ., Pad..NUMPAD_SLASH Numpad /, Pad/.NUMPAD_ASTERIX Numpad *, Pad*.NUMPAD_0 Numpad 0, Pad0.NUMPAD_MINUS Numpad -, Pad-.NUMPAD_ENTER Numpad Enter, PadEnter.NUMPAD_PLUS Numpad +, Pad+.F1 F1.F2 F2.F3 F3.F4 F4.F5 F5.F6 F6.F7 F7.F8 F8.F9 F9.F10 F10.F11 F11.F12 F12.F13 F13.F14 F14.F15 F15.F16 F16.F17 F17.F18 F18.F19 F19.PAUSE Pause.INSERT Insert, Ins.HOME Home.PAGE_UP Page Up, PgUp.PAGE_DOWN Page Down, PgDown.END End.MEDIA_PLAY Media Play/Pause, >/||.MEDIA_STOP Media Stop, Stop.MEDIA_FIRST Media First, |<<.MEDIA_LAST Media Last, >>|.TEXTINPUT Text Input, TxtIn.WINDOW_DEACTIVATE Window Deactivate.TIMER Timer, Tmr.TIMER0 Timer 0, Tmr0.TIMER1 Timer 1, Tmr1.TIMER2 Timer 2, Tmr2.TIMER_JOBS Timer Jobs, TmrJob.TIMER_AUTOSAVE Timer Autosave, TmrSave.TIMER_REPORT Timer Report, TmrReport.TIMERREGION Timer Region, TmrReg.NDOF_MOTION NDOF Motion, NdofMov.NDOF_BUTTON_MENU NDOF Menu, NdofMenu.NDOF_BUTTON_FIT NDOF Fit, NdofFit.NDOF_BUTTON_TOP NDOF Top, Ndof↑.NDOF_BUTTON_BOTTOM NDOF Bottom, Ndof↓.NDOF_BUTTON_LEFT NDOF Left, Ndof←.NDOF_BUTTON_RIGHT NDOF Right, Ndof→.NDOF_BUTTON_FRONT NDOF Front, NdofFront.NDOF_BUTTON_BACK NDOF Back, NdofBack.NDOF_BUTTON_ISO1 NDOF Isometric 1, NdofIso1.NDOF_BUTTON_ISO2 NDOF Isometric 2, NdofIso2.NDOF_BUTTON_ROLL_CW NDOF Roll CW, NdofRCW.NDOF_BUTTON_ROLL_CCW NDOF Roll CCW, NdofRCCW.NDOF_BUTTON_SPIN_CW NDOF Spin CW, NdofSCW.NDOF_BUTTON_SPIN_CCW NDOF Spin CCW, NdofSCCW.NDOF_BUTTON_TILT_CW NDOF Tilt CW, NdofTCW.NDOF_BUTTON_TILT_CCW NDOF Tilt CCW, NdofTCCW.NDOF_BUTTON_ROTATE NDOF Rotate, NdofRot.NDOF_BUTTON_PANZOOM NDOF Pan/Zoom, NdofPanZoom.NDOF_BUTTON_DOMINANT NDOF Dominant, NdofDom.NDOF_BUTTON_PLUS NDOF Plus, Ndof+.NDOF_BUTTON_MINUS NDOF Minus, Ndof-.NDOF_BUTTON_ESC NDOF Esc, NdofEsc.NDOF_BUTTON_ALT NDOF Alt, NdofAlt.NDOF_BUTTON_SHIFT NDOF Shift, NdofShift.NDOF_BUTTON_CTRL NDOF Ctrl, NdofCtrl.NDOF_BUTTON_1 NDOF Button 1, NdofB1.NDOF_BUTTON_2 NDOF Button 2, NdofB2.NDOF_BUTTON_3 NDOF Button 3, NdofB3.NDOF_BUTTON_4 NDOF Button 4, NdofB4.NDOF_BUTTON_5 NDOF Button 5, NdofB5.NDOF_BUTTON_6 NDOF Button 6, NdofB6.NDOF_BUTTON_7 NDOF Button 7, NdofB7.NDOF_BUTTON_8 NDOF Button 8, NdofB8.NDOF_BUTTON_9 NDOF Button 9, NdofB9.NDOF_BUTTON_10 NDOF Button 10, NdofB10.NDOF_BUTTON_A NDOF Button A, NdofBA.NDOF_BUTTON_B NDOF Button B, NdofBB.NDOF_BUTTON_C NDOF Button C, NdofBC.ACTIONZONE_AREA ActionZone Area, AZone Area.ACTIONZONE_REGION ActionZone Region, AZone Region.ACTIONZONE_FULLSCREEN ActionZone Fullscreen, AZone FullScr. 
        :type key_modifier: enum in ['NONE', 'LEFTMOUSE', 'MIDDLEMOUSE', 'RIGHTMOUSE', 'BUTTON4MOUSE', 'BUTTON5MOUSE', 'BUTTON6MOUSE', 'BUTTON7MOUSE', 'PEN', 'ERASER', 'MOUSEMOVE', 'INBETWEEN_MOUSEMOVE', 'TRACKPADPAN', 'TRACKPADZOOM', 'MOUSEROTATE', 'WHEELUPMOUSE', 'WHEELDOWNMOUSE', 'WHEELINMOUSE', 'WHEELOUTMOUSE', 'EVT_TWEAK_L', 'EVT_TWEAK_M', 'EVT_TWEAK_R', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'ZERO', 'ONE', 'TWO', 'THREE', 'FOUR', 'FIVE', 'SIX', 'SEVEN', 'EIGHT', 'NINE', 'LEFT_CTRL', 'LEFT_ALT', 'LEFT_SHIFT', 'RIGHT_ALT', 'RIGHT_CTRL', 'RIGHT_SHIFT', 'OSKEY', 'GRLESS', 'ESC', 'TAB', 'RET', 'SPACE', 'LINE_FEED', 'BACK_SPACE', 'DEL', 'SEMI_COLON', 'PERIOD', 'COMMA', 'QUOTE', 'ACCENT_GRAVE', 'MINUS', 'PLUS', 'SLASH', 'BACK_SLASH', 'EQUAL', 'LEFT_BRACKET', 'RIGHT_BRACKET', 'LEFT_ARROW', 'DOWN_ARROW', 'RIGHT_ARROW', 'UP_ARROW', 'NUMPAD_2', 'NUMPAD_4', 'NUMPAD_6', 'NUMPAD_8', 'NUMPAD_1', 'NUMPAD_3', 'NUMPAD_5', 'NUMPAD_7', 'NUMPAD_9', 'NUMPAD_PERIOD', 'NUMPAD_SLASH', 'NUMPAD_ASTERIX', 'NUMPAD_0', 'NUMPAD_MINUS', 'NUMPAD_ENTER', 'NUMPAD_PLUS', 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'F12', 'F13', 'F14', 'F15', 'F16', 'F17', 'F18', 'F19', 'PAUSE', 'INSERT', 'HOME', 'PAGE_UP', 'PAGE_DOWN', 'END', 'MEDIA_PLAY', 'MEDIA_STOP', 'MEDIA_FIRST', 'MEDIA_LAST', 'TEXTINPUT', 'WINDOW_DEACTIVATE', 'TIMER', 'TIMER0', 'TIMER1', 'TIMER2', 'TIMER_JOBS', 'TIMER_AUTOSAVE', 'TIMER_REPORT', 'TIMERREGION', 'NDOF_MOTION', 'NDOF_BUTTON_MENU', 'NDOF_BUTTON_FIT', 'NDOF_BUTTON_TOP', 'NDOF_BUTTON_BOTTOM', 'NDOF_BUTTON_LEFT', 'NDOF_BUTTON_RIGHT', 'NDOF_BUTTON_FRONT', 'NDOF_BUTTON_BACK', 'NDOF_BUTTON_ISO1', 'NDOF_BUTTON_ISO2', 'NDOF_BUTTON_ROLL_CW', 'NDOF_BUTTON_ROLL_CCW', 'NDOF_BUTTON_SPIN_CW', 'NDOF_BUTTON_SPIN_CCW', 'NDOF_BUTTON_TILT_CW', 'NDOF_BUTTON_TILT_CCW', 'NDOF_BUTTON_ROTATE', 'NDOF_BUTTON_PANZOOM', 'NDOF_BUTTON_DOMINANT', 'NDOF_BUTTON_PLUS', 'NDOF_BUTTON_MINUS', 'NDOF_BUTTON_ESC', 'NDOF_BUTTON_ALT', 'NDOF_BUTTON_SHIFT', 'NDOF_BUTTON_CTRL', 'NDOF_BUTTON_1', 'NDOF_BUTTON_2', 'NDOF_BUTTON_3', 'NDOF_BUTTON_4', 'NDOF_BUTTON_5', 'NDOF_BUTTON_6', 'NDOF_BUTTON_7', 'NDOF_BUTTON_8', 'NDOF_BUTTON_9', 'NDOF_BUTTON_10', 'NDOF_BUTTON_A', 'NDOF_BUTTON_B', 'NDOF_BUTTON_C', 'ACTIONZONE_AREA', 'ACTIONZONE_REGION', 'ACTIONZONE_FULLSCREEN'], (optional)
        :rtype: KeyMapItem 
        :return:  Item, Added key map item 
        '''
        pass

    def new_from_item(self, item, head=False):
        '''new_from_item 

        :param item: Item, Item to use as a reference 
        :type item: KeyMapItem, (never None)
        :param head: At Head 
        :type head: boolean, (optional)
        :rtype: KeyMapItem 
        :return:  Item, Added key map item 
        '''
        pass

    def remove(self, item):
        '''remove 

        :param item: Item 
        :type item: KeyMapItem, (never None)
        '''
        pass

    def from_id(self, id):
        '''from_id 

        :param id: id, ID of the item 
        :type id: int in [-inf, inf]
        :rtype: KeyMapItem 
        :return:  Item 
        '''
        pass

    def find_from_operator(
            self,
            idname,
            properties=None,
            include={'ACTIONZONE', 'KEYBOARD', 'MOUSE', 'NDOF', 'TWEAK'},
            exclude={}):
        '''find_from_operator 

        :param idname: Operator Identifier 
        :type idname: string, (never None)
        :param include: Include 
        :type include: enum set in {'KEYBOARD_MODIFIER', 'KEYBOARD', 'MOUSE_WHEEL', 'MOUSE_GESTURE', 'MOUSE_BUTTON', 'MOUSE', 'NDOF', 'TWEAK', 'ACTIONZONE'}, (optional)
        :param exclude: Exclude 
        :type exclude: enum set in {'KEYBOARD_MODIFIER', 'KEYBOARD', 'MOUSE_WHEEL', 'MOUSE_GESTURE', 'MOUSE_BUTTON', 'MOUSE', 'NDOF', 'TWEAK', 'ACTIONZONE'}, (optional)
        :rtype: KeyMapItem 
        '''
        pass


class KeyMaps:
    '''Collection of keymaps '''

    def new(self,
            name,
            space_type='EMPTY',
            region_type='WINDOW',
            modal=False,
            tool=False):
        '''new 

        :param name: Name 
        :type name: string, (never None)
        :param space_type: Space TypeEMPTY Empty.VIEW_3D 3D Viewport, Manipulate objects in a 3D environment.IMAGE_EDITOR UV/Image Editor, View and edit images and UV Maps.NODE_EDITOR Node Editor, Editor for node-based shading and compositing tools.SEQUENCE_EDITOR Video Sequencer, Video editing tools.CLIP_EDITOR Movie Clip Editor, Motion tracking tools.DOPESHEET_EDITOR Dope Sheet, Adjust timing of keyframes.GRAPH_EDITOR Graph Editor, Edit drivers and keyframe interpolation.NLA_EDITOR Nonlinear Animation, Combine and layer Actions.TEXT_EDITOR Text Editor, Edit scripts and in-file documentation.CONSOLE Python Console, Interactive programmatic console for advanced editing and script development.INFO Info, Main menu bar and list of error messages (drag down to expand and display).TOPBAR Top Bar, Global bar at the top of the screen for global per-window settings.STATUSBAR Status Bar, Global bar at the bottom of the screen for general status information.OUTLINER Outliner, Overview of scene graph and all available data-blocks.PROPERTIES Properties, Edit properties of active object and related data-blocks.FILE_BROWSER File Browser, Browse for files and assets.PREFERENCES Preferences, Edit persistent configuration settings. 
        :type space_type: enum in ['EMPTY', 'VIEW_3D', 'IMAGE_EDITOR', 'NODE_EDITOR', 'SEQUENCE_EDITOR', 'CLIP_EDITOR', 'DOPESHEET_EDITOR', 'GRAPH_EDITOR', 'NLA_EDITOR', 'TEXT_EDITOR', 'CONSOLE', 'INFO', 'TOPBAR', 'STATUSBAR', 'OUTLINER', 'PROPERTIES', 'FILE_BROWSER', 'PREFERENCES'], (optional)
        :param region_type: Region Type 
        :type region_type: enum in ['WINDOW', 'HEADER', 'CHANNELS', 'TEMPORARY', 'UI', 'TOOLS', 'TOOL_PROPS', 'PREVIEW', 'HUD', 'NAVIGATION_BAR', 'EXECUTE', 'FOOTER'], (optional)
        :param modal: Modal, Keymap for modal operators 
        :type modal: boolean, (optional)
        :param tool: Tool, Keymap for active tools 
        :type tool: boolean, (optional)
        :rtype: KeyMap 
        :return:  Key Map, Added key map 
        '''
        pass

    def remove(self, keymap):
        '''remove 

        :param keymap: Key Map, Removed key map 
        :type keymap: KeyMap, (never None)
        '''
        pass

    def find(self, name, space_type='EMPTY', region_type='WINDOW'):
        '''find 

        :param name: Name 
        :type name: string, (never None)
        :param space_type: Space TypeEMPTY Empty.VIEW_3D 3D Viewport, Manipulate objects in a 3D environment.IMAGE_EDITOR UV/Image Editor, View and edit images and UV Maps.NODE_EDITOR Node Editor, Editor for node-based shading and compositing tools.SEQUENCE_EDITOR Video Sequencer, Video editing tools.CLIP_EDITOR Movie Clip Editor, Motion tracking tools.DOPESHEET_EDITOR Dope Sheet, Adjust timing of keyframes.GRAPH_EDITOR Graph Editor, Edit drivers and keyframe interpolation.NLA_EDITOR Nonlinear Animation, Combine and layer Actions.TEXT_EDITOR Text Editor, Edit scripts and in-file documentation.CONSOLE Python Console, Interactive programmatic console for advanced editing and script development.INFO Info, Main menu bar and list of error messages (drag down to expand and display).TOPBAR Top Bar, Global bar at the top of the screen for global per-window settings.STATUSBAR Status Bar, Global bar at the bottom of the screen for general status information.OUTLINER Outliner, Overview of scene graph and all available data-blocks.PROPERTIES Properties, Edit properties of active object and related data-blocks.FILE_BROWSER File Browser, Browse for files and assets.PREFERENCES Preferences, Edit persistent configuration settings. 
        :type space_type: enum in ['EMPTY', 'VIEW_3D', 'IMAGE_EDITOR', 'NODE_EDITOR', 'SEQUENCE_EDITOR', 'CLIP_EDITOR', 'DOPESHEET_EDITOR', 'GRAPH_EDITOR', 'NLA_EDITOR', 'TEXT_EDITOR', 'CONSOLE', 'INFO', 'TOPBAR', 'STATUSBAR', 'OUTLINER', 'PROPERTIES', 'FILE_BROWSER', 'PREFERENCES'], (optional)
        :param region_type: Region Type 
        :type region_type: enum in ['WINDOW', 'HEADER', 'CHANNELS', 'TEMPORARY', 'UI', 'TOOLS', 'TOOL_PROPS', 'PREVIEW', 'HUD', 'NAVIGATION_BAR', 'EXECUTE', 'FOOTER'], (optional)
        :rtype: KeyMap 
        :return:  Key Map, Corresponding key map 
        '''
        pass

    def find_modal(self, name):
        '''find_modal 

        :param name: Operator Name 
        :type name: string, (never None)
        :rtype: KeyMap 
        :return:  Key Map, Corresponding key map 
        '''
        pass


class Keyframe:
    '''Bezier curve point with two handles defining a Keyframe on an F-Curve '''

    amplitude = None
    '''Amount to boost elastic bounces for ‘elastic’ easing 

    :type:  float in [0, inf], default 0.0 
    '''

    back = None
    '''Amount of overshoot for ‘back’ easing 

    :type:  float in [-inf, inf], default 0.0 
    '''

    co = None
    '''Coordinates of the control point 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    easing = None
    '''Which ends of the segment between this and the next keyframe easing interpolation is applied to 

    :type:  enum in [‘AUTO’, ‘EASE_IN’, ‘EASE_OUT’, ‘EASE_IN_OUT’], default ‘AUTO’ 
    '''

    handle_left = None
    '''Coordinates of the left handle (before the control point) 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    handle_left_type = None
    '''Handle types 

    :type:  enum in [‘FREE’, ‘ALIGNED’, ‘VECTOR’, ‘AUTO’, ‘AUTO_CLAMPED’], default ‘FREE’ 
    '''

    handle_right = None
    '''Coordinates of the right handle (after the control point) 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    handle_right_type = None
    '''Handle types 

    :type:  enum in [‘FREE’, ‘ALIGNED’, ‘VECTOR’, ‘AUTO’, ‘AUTO_CLAMPED’], default ‘FREE’ 
    '''

    interpolation = None
    '''Interpolation method to use for segment of the F-Curve from this Keyframe until the next Keyframe 

    :type:  enum in [‘CONSTANT’, ‘LINEAR’, ‘BEZIER’, ‘SINE’, ‘QUAD’, ‘CUBIC’, ‘QUART’, ‘QUINT’, ‘EXPO’, ‘CIRC’, ‘BACK’, ‘BOUNCE’, ‘ELASTIC’], default ‘CONSTANT’ 
    '''

    period = None
    '''Time between bounces for elastic easing 

    :type:  float in [-inf, inf], default 0.0 
    '''

    select_control_point = None
    '''Control point selection status 

    :type:  boolean, default False 
    '''

    select_left_handle = None
    '''Left handle selection status 

    :type:  boolean, default False 
    '''

    select_right_handle = None
    '''Right handle selection status 

    :type:  boolean, default False 
    '''

    type = None
    '''Type of keyframe (for visual purposes only) 

    :type:  enum in [‘KEYFRAME’, ‘BREAKDOWN’, ‘MOVING_HOLD’, ‘EXTREME’, ‘JITTER’], default ‘KEYFRAME’ 
    '''


class KeyingSet:
    '''Settings that should be keyframed together '''

    bl_description = None
    '''A short description of the keying set 

    :type:  string, default “”, (never None) 
    '''

    bl_idname = None
    '''If this is set, the Keying Set gets a custom ID, otherwise it takes the name of the class used to define the Keying Set (for example, if the class name is “BUILTIN_KSI_location”, and bl_idname is not set by the script, then bl_idname = “BUILTIN_KSI_location”) 

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''

    :type:  string, default “”, (never None) 
    '''

    is_path_absolute = None
    '''Keying Set defines specific paths/settings to be keyframed (i.e. is not reliant on context info) 

    :type:  boolean, default False, (readonly) 
    '''

    paths = None
    '''Keying Set Paths to define settings that get keyframed together 

    :type:  KeyingSetPaths bpy_prop_collection of KeyingSetPath, (readonly) 
    '''

    type_info = None
    '''Callback function defines for built-in Keying Sets 

    :type:  KeyingSetInfo, (readonly) 
    '''

    use_insertkey_needed = None
    '''Only insert keyframes where they’re needed in the relevant F-Curves 

    :type:  boolean, default False 
    '''

    use_insertkey_override_needed = None
    '''Override default setting to only insert keyframes where they’re needed in the relevant F-Curves 

    :type:  boolean, default False 
    '''

    use_insertkey_override_visual = None
    '''Override default setting to insert keyframes based on ‘visual transforms’ 

    :type:  boolean, default False 
    '''

    use_insertkey_override_xyz_to_rgb = None
    '''Override default setting to set color for newly added transformation F-Curves (Location, Rotation, Scale) to be based on the transform axis 

    :type:  boolean, default False 
    '''

    use_insertkey_visual = None
    '''Insert keyframes based on ‘visual transforms’ 

    :type:  boolean, default False 
    '''

    use_insertkey_xyz_to_rgb = None
    '''Color for newly added transformation F-Curves (Location, Rotation, Scale) is based on the transform axis 

    :type:  boolean, default False 
    '''

    def refresh(self):
        '''Refresh Keying Set to ensure that it is valid for the current context (call before each use of one) 

        '''
        pass


class KeyingSetInfo:
    '''Callback function defines for builtin Keying Sets '''

    bl_description = None
    '''A short description of the keying set 

    :type:  string, default “”, (never None) 
    '''

    bl_idname = None
    '''If this is set, the Keying Set gets a custom ID, otherwise it takes the name of the class used to define the Keying Set (for example, if the class name is “BUILTIN_KSI_location”, and bl_idname is not set by the script, then bl_idname = “BUILTIN_KSI_location”) 

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_options = None
    '''Keying Set options to use when inserting keyframes 

    :type:  enum set in {‘INSERTKEY_NEEDED’, ‘INSERTKEY_VISUAL’, ‘INSERTKEY_XYZ_TO_RGB’}, default {‘INSERTKEY_NEEDED’} 
    '''

    def poll(self, context):
        '''Test if Keying Set can be used or not 

        :rtype: boolean 
        '''
        pass

    def iterator(self, context, ks):
        '''Call generate() on the structs which have properties to be keyframed 

        '''
        pass

    def generate(self, context, ks, data):
        '''Add Paths to the Keying Set to keyframe the properties of the given data 

        '''
        pass


class KeyingSetPath:
    '''Path to a setting for use in a Keying Set '''

    array_index = None
    '''Index to the specific setting if applicable 

    :type:  int in [-inf, inf], default 0 
    '''

    data_path = None
    '''Path to property setting 

    :type:  string, default “”, (never None) 
    '''

    group = None
    '''Name of Action Group to assign setting(s) for this path to 

    :type:  string, default “”, (never None) 
    '''

    group_method = None
    '''Method used to define which Group-name to use 

    :type:  enum in [‘NAMED’, ‘NONE’, ‘KEYINGSET’], default ‘NAMED’ 
    '''

    id = None
    '''ID-Block that keyframes for Keying Set should be added to (for Absolute Keying Sets only) 

    :type:  ID 
    '''

    id_type = None
    '''Type of ID-block that can be used 

    :type:  enum in [‘ACTION’, ‘ARMATURE’, ‘BRUSH’, ‘CAMERA’, ‘CACHEFILE’, ‘CURVE’, ‘FONT’, ‘GREASEPENCIL’, ‘COLLECTION’, ‘IMAGE’, ‘KEY’, ‘LIGHT’, ‘LIBRARY’, ‘LINESTYLE’, ‘LATTICE’, ‘MASK’, ‘MATERIAL’, ‘META’, ‘MESH’, ‘MOVIECLIP’, ‘NODETREE’, ‘OBJECT’, ‘PAINTCURVE’, ‘PALETTE’, ‘PARTICLE’, ‘LIGHT_PROBE’, ‘SCENE’, ‘SOUND’, ‘SPEAKER’, ‘TEXT’, ‘TEXTURE’, ‘WINDOWMANAGER’, ‘WORLD’, ‘WORKSPACE’], default ‘OBJECT’ 
    '''

    use_entire_array = None
    '''When an ‘array/vector’ type is chosen (Location, Rotation, Color, etc.), entire array is to be used 

    :type:  boolean, default False 
    '''

    use_insertkey_needed = None
    '''Only insert keyframes where they’re needed in the relevant F-Curves 

    :type:  boolean, default False 
    '''

    use_insertkey_override_needed = None
    '''Override default setting to only insert keyframes where they’re needed in the relevant F-Curves 

    :type:  boolean, default False 
    '''

    use_insertkey_override_visual = None
    '''Override default setting to insert keyframes based on ‘visual transforms’ 

    :type:  boolean, default False 
    '''

    use_insertkey_override_xyz_to_rgb = None
    '''Override default setting to set color for newly added transformation F-Curves (Location, Rotation, Scale) to be based on the transform axis 

    :type:  boolean, default False 
    '''

    use_insertkey_visual = None
    '''Insert keyframes based on ‘visual transforms’ 

    :type:  boolean, default False 
    '''

    use_insertkey_xyz_to_rgb = None
    '''Color for newly added transformation F-Curves (Location, Rotation, Scale) is based on the transform axis 

    :type:  boolean, default False 
    '''


class KeyingSetPaths:
    '''Collection of keying set paths '''

    active = None
    '''Active Keying Set used to insert/delete keyframes 

    :type:  KeyingSetPath 
    '''

    active_index = None
    '''Current Keying Set index 

    :type:  int in [-inf, inf], default 0 
    '''

    def add(self,
            target_id,
            data_path,
            index=-1,
            group_method='KEYINGSET',
            group_name=""):
        '''Add a new path for the Keying Set 

        :param target_id: Target ID, ID data-block for the destination 
        :type target_id: ID
        :param data_path: Data-Path, RNA-Path to destination property 
        :type data_path: string, (never None)
        :param index: Index, The index of the destination property (i.e. axis of Location/Rotation/etc.), or -1 for the entire array 
        :type index: int in [-1, inf], (optional)
        :param group_method: Grouping Method, Method used to define which Group-name to use 
        :type group_method: enum in ['NAMED', 'NONE', 'KEYINGSET'], (optional)
        :param group_name: Group Name, Name of Action Group to assign destination to (only if grouping mode is to use this name) 
        :type group_name: string, (optional, never None)
        :rtype: KeyingSetPath 
        :return:  New Path, Path created and added to the Keying Set 
        '''
        pass

    def remove(self, path):
        '''Remove the given path from the Keying Set 

        :param path: Path 
        :type path: KeyingSetPath, (never None)
        '''
        pass

    def clear(self):
        '''Remove all the paths from the Keying Set 

        '''
        pass


class KeyingSets:
    '''Scene keying sets '''

    active = None
    '''Active Keying Set used to insert/delete keyframes 

    :type:  KeyingSet 
    '''

    active_index = None
    '''Current Keying Set index (negative for ‘builtin’ and positive for ‘absolute’) 

    :type:  int in [-inf, inf], default 0 
    '''

    def new(self, idname="KeyingSet", name="KeyingSet"):
        '''Add a new Keying Set to Scene 

        :param idname: IDName, Internal identifier of Keying Set 
        :type idname: string, (optional, never None)
        :param name: Name, User visible name of Keying Set 
        :type name: string, (optional, never None)
        :rtype: KeyingSet 
        :return:  Newly created Keying Set 
        '''
        pass


class KeyingSetsAll:
    '''All available keying sets '''

    active = None
    '''Active Keying Set used to insert/delete keyframes 

    :type:  KeyingSet 
    '''

    active_index = None
    '''Current Keying Set index (negative for ‘builtin’ and positive for ‘absolute’) 

    :type:  int in [-inf, inf], default 0 
    '''


class KinematicConstraint:
    '''Inverse Kinematics '''

    chain_count = None
    '''How many bones are included in the IK effect - 0 uses all bones 

    :type:  int in [0, 255], default 0 
    '''

    distance = None
    '''Radius of limiting sphere 

    :type:  float in [0, 100], default 0.0 
    '''

    ik_type = None
    '''

    :type:  enum in [‘COPY_POSE’, ‘DISTANCE’], default ‘COPY_POSE’ 
    '''

    iterations = None
    '''Maximum number of solving iterations 

    :type:  int in [0, 10000], default 0 
    '''

    limit_mode = None
    '''Distances in relation to sphere of influence to allow 

    :type:  enum in [‘LIMITDIST_INSIDE’, ‘LIMITDIST_OUTSIDE’, ‘LIMITDIST_ONSURFACE’], default ‘LIMITDIST_INSIDE’ 
    '''

    lock_location_x = None
    '''Constraint position along X axis 

    :type:  boolean, default False 
    '''

    lock_location_y = None
    '''Constraint position along Y axis 

    :type:  boolean, default False 
    '''

    lock_location_z = None
    '''Constraint position along Z axis 

    :type:  boolean, default False 
    '''

    lock_rotation_x = None
    '''Constraint rotation along X axis 

    :type:  boolean, default False 
    '''

    lock_rotation_y = None
    '''Constraint rotation along Y axis 

    :type:  boolean, default False 
    '''

    lock_rotation_z = None
    '''Constraint rotation along Z axis 

    :type:  boolean, default False 
    '''

    orient_weight = None
    '''For Tree-IK: Weight of orientation control for this target 

    :type:  float in [0.01, 1], default 0.0 
    '''

    pole_angle = None
    '''Pole rotation offset 

    :type:  float in [-3.14159, 3.14159], default 0.0 
    '''

    pole_subtarget = None
    '''

    :type:  string, default “”, (never None) 
    '''

    pole_target = None
    '''Object for pole rotation 

    :type:  Object 
    '''

    reference_axis = None
    '''Constraint axis Lock options relative to Bone or Target reference 

    :type:  enum in [‘BONE’, ‘TARGET’], default ‘BONE’ 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    use_location = None
    '''Chain follows position of target 

    :type:  boolean, default False 
    '''

    use_rotation = None
    '''Chain follows rotation of target 

    :type:  boolean, default False 
    '''

    use_stretch = None
    '''Enable IK Stretching 

    :type:  boolean, default False 
    '''

    use_tail = None
    '''Include bone’s tail as last element in chain 

    :type:  boolean, default False 
    '''

    weight = None
    '''For Tree-IK: Weight of position control for this target 

    :type:  float in [0.01, 1], default 0.0 
    '''


class LaplacianDeformModifier:
    '''Mesh deform modifier '''

    is_bind = None
    '''Whether geometry has been bound to anchors 

    :type:  boolean, default False, (readonly) 
    '''

    iterations = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines Anchors 

    :type:  string, default “”, (never None) 
    '''


class LaplacianSmoothModifier:
    '''Smoothing effect modifier '''

    iterations = None
    '''

    :type:  int in [-32768, 32767], default 0 
    '''

    lambda_border = None
    '''Lambda factor in border 

    :type:  float in [-inf, inf], default 0.0 
    '''

    lambda_factor = None
    '''Smooth factor effect 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_normalized = None
    '''Improve and stabilize the enhanced shape 

    :type:  boolean, default False 
    '''

    use_volume_preserve = None
    '''Apply volume preservation after smooth 

    :type:  boolean, default False 
    '''

    use_x = None
    '''Smooth object along X axis 

    :type:  boolean, default False 
    '''

    use_y = None
    '''Smooth object along Y axis 

    :type:  boolean, default False 
    '''

    use_z = None
    '''Smooth object along Z axis 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines influence of modifier per point 

    :type:  string, default “”, (never None) 
    '''


class Lattice:
    '''Lattice data-block defining a grid for deforming other objects '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    interpolation_type_u = None
    '''

    :type:  enum in [‘KEY_LINEAR’, ‘KEY_CARDINAL’, ‘KEY_CATMULL_ROM’, ‘KEY_BSPLINE’], default ‘KEY_LINEAR’ 
    '''

    interpolation_type_v = None
    '''

    :type:  enum in [‘KEY_LINEAR’, ‘KEY_CARDINAL’, ‘KEY_CATMULL_ROM’, ‘KEY_BSPLINE’], default ‘KEY_LINEAR’ 
    '''

    interpolation_type_w = None
    '''

    :type:  enum in [‘KEY_LINEAR’, ‘KEY_CARDINAL’, ‘KEY_CATMULL_ROM’, ‘KEY_BSPLINE’], default ‘KEY_LINEAR’ 
    '''

    is_editmode = None
    '''True when used in editmode 

    :type:  boolean, default False, (readonly) 
    '''

    points = None
    '''Points of the lattice 

    :type:  bpy_prop_collection of LatticePoint, (readonly) 
    '''

    points_u = None
    '''Point in U direction (can’t be changed when there are shape keys) 

    :type:  int in [1, 64], default 0 
    '''

    points_v = None
    '''Point in V direction (can’t be changed when there are shape keys) 

    :type:  int in [1, 64], default 0 
    '''

    points_w = None
    '''Point in W direction (can’t be changed when there are shape keys) 

    :type:  int in [1, 64], default 0 
    '''

    shape_keys = None
    '''

    :type:  Key, (readonly) 
    '''

    use_outside = None
    '''Only draw, and take into account, the outer vertices 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group to apply the influence of the lattice 

    :type:  string, default “”, (never None) 
    '''

    def transform(self, matrix, shape_keys=False):
        '''Transform lattice by a matrix 

        :param matrix: Matrix 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        :param shape_keys: Transform Shape Keys 
        :type shape_keys: boolean, (optional)
        '''
        pass

    def update_gpu_tag(self):
        '''update_gpu_tag 

        '''
        pass


class LatticeGpencilModifier:
    '''Change stroke using lattice to deform modifier '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_vertex = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    object = None
    '''Lattice object to deform with 

    :type:  Object 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    strength = None
    '''Strength of modifier effect 

    :type:  float in [-inf, inf], default 0.0 
    '''

    vertex_group = None
    '''Vertex group name for modulating the deform 

    :type:  string, default “”, (never None) 
    '''


class LatticeModifier:
    '''Lattice deformation modifier '''

    object = None
    '''Lattice object to deform with 

    :type:  Object 
    '''

    strength = None
    '''Strength of modifier effect 

    :type:  float in [-inf, inf], default 0.0 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines influence of modifier per point 

    :type:  string, default “”, (never None) 
    '''


class LatticePoint:
    '''Point in the lattice grid '''

    co = None
    '''Original undeformed location used to calculate the strength of the deform effect (edit/animate the Deformed Location instead) 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    co_deform = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    groups = None
    '''Weights for the vertex groups this point is member of 

    :type:  bpy_prop_collection of VertexGroupElement, (readonly) 
    '''

    select = None
    '''Selection status 

    :type:  boolean, default False 
    '''

    weight_softbody = None
    '''Softbody goal weight 

    :type:  float in [0.01, 100], default 0.0 
    '''


class LayerCollection:
    '''Layer collection '''

    children = None
    '''Child layer collections 

    :type:  bpy_prop_collection of LayerCollection, (readonly) 
    '''

    collection = None
    '''Collection this layer collection is wrapping 

    :type:  Collection, (readonly, never None) 
    '''

    exclude = None
    '''Exclude collection from view layer 

    :type:  boolean, default False 
    '''

    hide_viewport = None
    '''Disable collection in viewport for this view layer 

    :type:  boolean, default False 
    '''

    holdout = None
    '''Mask out objects in collection from view layer 

    :type:  boolean, default False 
    '''

    indirect_only = None
    '''Objects in collection only contribute indirectly (through shadows and reflections) in the view layer 

    :type:  boolean, default False 
    '''

    is_visible = None
    '''Whether this collection is visible, take into account the collection parent 

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''Name of this view layer (same as its collection one) 

    :type:  string, default “”, (readonly, never None) 
    '''

    def has_objects(self):
        '''

        :rtype: boolean 
        '''
        pass

    def has_selected_objects(self, view_layer):
        '''

        :param view_layer: ViewLayer the layer collection belongs to 
        :type view_layer: ViewLayer
        :rtype: boolean 
        '''
        pass


class LayerObjects:
    '''Collections of objects '''

    active = None
    '''Active object for this layer 

    :type:  Object 
    '''

    selected = None
    '''All the selected objects of this layer 

    :type:  bpy_prop_collection of Object, (readonly) 
    '''


class Library:
    '''External .blend file from which data is linked '''

    filepath = None
    '''Path to the library .blend file 

    :type:  string, default “”, (never None) 
    '''

    packed_file = None
    '''

    :type:  PackedFile, (readonly) 
    '''

    parent = None
    '''

    :type:  Library, (readonly) 
    '''

    version = None
    '''Version of Blender the library .blend was saved with 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0), (readonly) 
    '''

    users_id = None
    '''ID data blocks which use this library (readonly) '''

    def reload(self):
        '''Reload this library and all its linked data-blocks 

        '''
        pass


class Light:
    '''Light data-block for lighting a scene '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    color = None
    '''Light color 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''

    cutoff_distance = None
    '''Distance at which the light influence will be set to 0 

    :type:  float in [0, inf], default 1.0 
    '''

    cycles = None
    '''Cycles light settings 

    :type:  CyclesLightSettings, (readonly) 
    '''

    distance = None
    '''Falloff distance - the light is at half the original intensity at this point 

    :type:  float in [0, inf], default 0.0 
    '''

    node_tree = None
    '''Node tree for node based lights 

    :type:  NodeTree, (readonly) 
    '''

    specular_factor = None
    '''Specular reflection multiplier 

    :type:  float in [0, 9999], default 1.0 
    '''

    type = None
    '''Type of Light 

    :type:  enum in [‘POINT’, ‘SUN’, ‘SPOT’, ‘AREA’], default ‘POINT’ 
    '''

    use_custom_distance = None
    '''Use custom attenuation distance instead of global light threshold 

    :type:  boolean, default False 
    '''

    use_nodes = None
    '''Use shader nodes to render the light 

    :type:  boolean, default False 
    '''


class LightProbe:
    '''Light Probe data-block for lighting capture objects '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    clip_end = None
    '''Probe clip end, beyond which objects will not appear in reflections 

    :type:  float in [1e-06, inf], default 40.0 
    '''

    clip_start = None
    '''Probe clip start, below which objects will not appear in reflections 

    :type:  float in [1e-06, inf], default 0.8 
    '''

    falloff = None
    '''Control how fast the probe influence decreases 

    :type:  float in [0, 1], default 0.2 
    '''

    grid_resolution_x = None
    '''Number of sample along the x axis of the volume 

    :type:  int in [1, 256], default 4 
    '''

    grid_resolution_y = None
    '''Number of sample along the y axis of the volume 

    :type:  int in [1, 256], default 4 
    '''

    grid_resolution_z = None
    '''Number of sample along the z axis of the volume 

    :type:  int in [1, 256], default 4 
    '''

    influence_distance = None
    '''Influence distance of the probe 

    :type:  float in [0, inf], default 2.5 
    '''

    influence_type = None
    '''Type of influence volume 

    :type:  enum in [‘ELIPSOID’, ‘BOX’], default ‘ELIPSOID’ 
    '''

    intensity = None
    '''Modify the intensity of the lighting captured by this probe 

    :type:  float in [0, inf], default 1.0 
    '''

    invert_visibility_collection = None
    '''Invert visibility collection 

    :type:  boolean, default False 
    '''

    parallax_distance = None
    '''Lowest corner of the parallax bounding box 

    :type:  float in [0, inf], default 2.5 
    '''

    parallax_type = None
    '''Type of parallax volume 

    :type:  enum in [‘ELIPSOID’, ‘BOX’], default ‘ELIPSOID’ 
    '''

    show_clip = None
    '''Show the clipping distances in the 3D view 

    :type:  boolean, default False 
    '''

    show_data = None
    '''Show captured lighting data into the 3D view for debugging purpose 

    :type:  boolean, default False 
    '''

    show_influence = None
    '''Show the influence volume in the 3D view 

    :type:  boolean, default False 
    '''

    show_parallax = None
    '''Show the parallax correction volume in the 3D view 

    :type:  boolean, default False 
    '''

    type = None
    '''Type of light probe 

    :type:  enum in [‘CUBEMAP’, ‘PLANAR’, ‘GRID’], default ‘CUBEMAP’, (readonly) 
    '''

    use_custom_parallax = None
    '''Enable custom settings for the parallax correction volume 

    :type:  boolean, default False 
    '''

    visibility_bleed_bias = None
    '''Bias for reducing light-bleed on variance shadow maps 

    :type:  float in [0, 1], default 0.0 
    '''

    visibility_blur = None
    '''Filter size of the visibility blur 

    :type:  float in [0, 1], default 0.2 
    '''

    visibility_buffer_bias = None
    '''Bias for reducing self shadowing 

    :type:  float in [0.001, 9999], default 1.0 
    '''

    visibility_collection = None
    '''Restrict objects visible for this probe 

    :type:  Collection 
    '''


class LimitDistanceConstraint:
    '''Limit the distance from target object '''

    distance = None
    '''Radius of limiting sphere 

    :type:  float in [-inf, inf], default 0.0 
    '''

    head_tail = None
    '''Target along length of bone: Head=0, Tail=1 

    :type:  float in [0, 1], default 0.0 
    '''

    limit_mode = None
    '''Distances in relation to sphere of influence to allow 

    :type:  enum in [‘LIMITDIST_INSIDE’, ‘LIMITDIST_OUTSIDE’, ‘LIMITDIST_ONSURFACE’], default ‘LIMITDIST_INSIDE’ 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    use_bbone_shape = None
    '''Follow shape of B-Bone segments when calculating Head/Tail position 

    :type:  boolean, default False 
    '''

    use_transform_limit = None
    '''Transforms are affected by this constraint as well 

    :type:  boolean, default False 
    '''


class LimitLocationConstraint:
    '''Limit the location of the constrained object '''

    max_x = None
    '''Highest X value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    max_y = None
    '''Highest Y value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    max_z = None
    '''Highest Z value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_x = None
    '''Lowest X value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_y = None
    '''Lowest Y value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_z = None
    '''Lowest Z value to allow 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_max_x = None
    '''Use the maximum X value 

    :type:  boolean, default False 
    '''

    use_max_y = None
    '''Use the maximum Y value 

    :type:  boolean, default False 
    '''

    use_max_z = None
    '''Use the maximum Z value 

    :type:  boolean, default False 
    '''

    use_min_x = None
    '''Use the minimum X value 

    :type:  boolean, default False 
    '''

    use_min_y = None
    '''Use the minimum Y value 

    :type:  boolean, default False 
    '''

    use_min_z = None
    '''Use the minimum Z value 

    :type:  boolean, default False 
    '''

    use_transform_limit = None
    '''Transforms are affected by this constraint as well 

    :type:  boolean, default False 
    '''


class LimitRotationConstraint:
    '''Limit the rotation of the constrained object '''

    max_x = None
    '''Highest X value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    max_y = None
    '''Highest Y value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    max_z = None
    '''Highest Z value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    min_x = None
    '''Lowest X value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    min_y = None
    '''Lowest Y value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    min_z = None
    '''Lowest Z value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    use_limit_x = None
    '''Use the minimum X value 

    :type:  boolean, default False 
    '''

    use_limit_y = None
    '''Use the minimum Y value 

    :type:  boolean, default False 
    '''

    use_limit_z = None
    '''Use the minimum Z value 

    :type:  boolean, default False 
    '''

    use_transform_limit = None
    '''Transforms are affected by this constraint as well 

    :type:  boolean, default False 
    '''


class LimitScaleConstraint:
    '''Limit the scaling of the constrained object '''

    max_x = None
    '''Highest X value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    max_y = None
    '''Highest Y value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    max_z = None
    '''Highest Z value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    min_x = None
    '''Lowest X value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    min_y = None
    '''Lowest Y value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    min_z = None
    '''Lowest Z value to allow 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    use_max_x = None
    '''Use the maximum X value 

    :type:  boolean, default False 
    '''

    use_max_y = None
    '''Use the maximum Y value 

    :type:  boolean, default False 
    '''

    use_max_z = None
    '''Use the maximum Z value 

    :type:  boolean, default False 
    '''

    use_min_x = None
    '''Use the minimum X value 

    :type:  boolean, default False 
    '''

    use_min_y = None
    '''Use the minimum Y value 

    :type:  boolean, default False 
    '''

    use_min_z = None
    '''Use the minimum Z value 

    :type:  boolean, default False 
    '''

    use_transform_limit = None
    '''Transforms are affected by this constraint as well 

    :type:  boolean, default False 
    '''


class LineStyleAlphaModifier:
    '''Base type to define alpha transparency modifiers '''

    pass


class LineStyleAlphaModifier_AlongStroke:
    '''Change alpha transparency along stroke '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleAlphaModifier_CreaseAngle:
    '''Alpha transparency based on the angle between two adjacent faces '''

    angle_max = None
    '''Maximum angle to modify thickness 

    :type:  float in [-inf, inf], default 0.0 
    '''

    angle_min = None
    '''Minimum angle to modify thickness 

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleAlphaModifier_Curvature_3D:
    '''Alpha transparency based on the radial curvature of 3D mesh surfaces '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curvature_max = None
    '''Maximum Curvature 

    :type:  float in [0, 10000], default 0.0 
    '''

    curvature_min = None
    '''Minimum Curvature 

    :type:  float in [0, 10000], default 0.0 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleAlphaModifier_DistanceFromCamera:
    '''Change alpha transparency based on the distance from the camera '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    range_max = None
    '''Upper bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    range_min = None
    '''Lower bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleAlphaModifier_DistanceFromObject:
    '''Change alpha transparency based on the distance from an object '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    range_max = None
    '''Upper bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    range_min = None
    '''Lower bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    target = None
    '''Target object from which the distance is measured 

    :type:  Object 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleAlphaModifier_Material:
    '''Change alpha transparency based on a material attribute '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    material_attribute = None
    '''Specify which material attribute is used 

    :type:  enum in [‘LINE’, ‘LINE_R’, ‘LINE_G’, ‘LINE_B’, ‘LINE_A’, ‘DIFF’, ‘DIFF_R’, ‘DIFF_G’, ‘DIFF_B’, ‘SPEC’, ‘SPEC_R’, ‘SPEC_G’, ‘SPEC_B’, ‘SPEC_HARD’, ‘ALPHA’], default ‘LINE’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleAlphaModifier_Noise:
    '''Alpha transparency based on random noise '''

    amplitude = None
    '''Amplitude of the noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    period = None
    '''Period of the noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    seed = None
    '''Seed for the noise generation 

    :type:  int in [-inf, inf], default 0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleAlphaModifier_Tangent:
    '''Alpha transparency based on the direction of the stroke '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleAlphaModifiers:
    '''Alpha modifiers for changing line alphas '''

    def new(self, name, type):
        '''Add a alpha modifier to line style 

        :param name: New name for the alpha modifier (not unique) 
        :type name: string, (never None)
        :param type: Alpha modifier type to add 
        :type type: enum in ['ALONG_STROKE', 'CREASE_ANGLE', 'CURVATURE_3D', 'DISTANCE_FROM_CAMERA', 'DISTANCE_FROM_OBJECT', 'MATERIAL', 'NOISE', 'TANGENT']
        :rtype: LineStyleAlphaModifier 
        :return:  Newly added alpha modifier 
        '''
        pass

    def remove(self, modifier):
        '''Remove a alpha modifier from line style 

        :param modifier: Alpha modifier to remove 
        :type modifier: LineStyleAlphaModifier, (never None)
        '''
        pass


class LineStyleColorModifier:
    '''Base type to define line color modifiers '''

    pass


class LineStyleColorModifier_AlongStroke:
    '''Change line color along stroke '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    color_ramp = None
    '''Color ramp used to change line color 

    :type:  ColorRamp, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleColorModifier_CreaseAngle:
    '''Change line color based on the underlying crease angle '''

    angle_max = None
    '''Maximum angle to modify thickness 

    :type:  float in [-inf, inf], default 0.0 
    '''

    angle_min = None
    '''Minimum angle to modify thickness 

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    color_ramp = None
    '''Color ramp used to change line color 

    :type:  ColorRamp, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleColorModifier_Curvature_3D:
    '''Change line color based on the radial curvature of 3D mesh surfaces '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    color_ramp = None
    '''Color ramp used to change line color 

    :type:  ColorRamp, (readonly) 
    '''

    curvature_max = None
    '''Maximum Curvature 

    :type:  float in [-inf, inf], default 0.0 
    '''

    curvature_min = None
    '''Minimum Curvature 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleColorModifier_DistanceFromCamera:
    '''Change line color based on the distance from the camera '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    color_ramp = None
    '''Color ramp used to change line color 

    :type:  ColorRamp, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    range_max = None
    '''Upper bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    range_min = None
    '''Lower bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleColorModifier_DistanceFromObject:
    '''Change line color based on the distance from an object '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    color_ramp = None
    '''Color ramp used to change line color 

    :type:  ColorRamp, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    range_max = None
    '''Upper bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    range_min = None
    '''Lower bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    target = None
    '''Target object from which the distance is measured 

    :type:  Object 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleColorModifier_Material:
    '''Change line color based on a material attribute '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    color_ramp = None
    '''Color ramp used to change line color 

    :type:  ColorRamp, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    material_attribute = None
    '''Specify which material attribute is used 

    :type:  enum in [‘LINE’, ‘LINE_R’, ‘LINE_G’, ‘LINE_B’, ‘LINE_A’, ‘DIFF’, ‘DIFF_R’, ‘DIFF_G’, ‘DIFF_B’, ‘SPEC’, ‘SPEC_R’, ‘SPEC_G’, ‘SPEC_B’, ‘SPEC_HARD’, ‘ALPHA’], default ‘LINE’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''

    use_ramp = None
    '''Use color ramp to map the BW average into an RGB color 

    :type:  boolean, default False 
    '''


class LineStyleColorModifier_Noise:
    '''Change line color based on random noise '''

    amplitude = None
    '''Amplitude of the noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    color_ramp = None
    '''Color ramp used to change line color 

    :type:  ColorRamp, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    period = None
    '''Period of the noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    seed = None
    '''Seed for the noise generation 

    :type:  int in [-inf, inf], default 0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleColorModifier_Tangent:
    '''Change line color based on the direction of a stroke '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    color_ramp = None
    '''Color ramp used to change line color 

    :type:  ColorRamp, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleColorModifiers:
    '''Color modifiers for changing line colors '''

    def new(self, name, type):
        '''Add a color modifier to line style 

        :param name: New name for the color modifier (not unique) 
        :type name: string, (never None)
        :param type: Color modifier type to add 
        :type type: enum in ['ALONG_STROKE', 'CREASE_ANGLE', 'CURVATURE_3D', 'DISTANCE_FROM_CAMERA', 'DISTANCE_FROM_OBJECT', 'MATERIAL', 'NOISE', 'TANGENT']
        :rtype: LineStyleColorModifier 
        :return:  Newly added color modifier 
        '''
        pass

    def remove(self, modifier):
        '''Remove a color modifier from line style 

        :param modifier: Color modifier to remove 
        :type modifier: LineStyleColorModifier, (never None)
        '''
        pass


class LineStyleGeometryModifier:
    '''Base type to define stroke geometry modifiers '''

    pass


class LineStyleGeometryModifier_2DOffset:
    '''Add two-dimensional offsets to stroke backbone geometry '''

    end = None
    '''Displacement that is applied from the end of the stroke 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    start = None
    '''Displacement that is applied from the beginning of the stroke 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''

    x = None
    '''Displacement that is applied to the X coordinates of stroke vertices 

    :type:  float in [-inf, inf], default 0.0 
    '''

    y = None
    '''Displacement that is applied to the Y coordinates of stroke vertices 

    :type:  float in [-inf, inf], default 0.0 
    '''


class LineStyleGeometryModifier_2DTransform:
    '''Apply two-dimensional scaling and rotation to stroke backbone geometry '''

    angle = None
    '''Rotation angle 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    pivot = None
    '''Pivot of scaling and rotation operations 

    :type:  enum in [‘CENTER’, ‘START’, ‘END’, ‘PARAM’, ‘ABSOLUTE’], default ‘CENTER’ 
    '''

    pivot_u = None
    '''Pivot in terms of the stroke point parameter u (0 <= u <= 1) 

    :type:  float in [0, 1], default 0.0 
    '''

    pivot_x = None
    '''2D X coordinate of the absolute pivot 

    :type:  float in [-inf, inf], default 0.0 
    '''

    pivot_y = None
    '''2D Y coordinate of the absolute pivot 

    :type:  float in [-inf, inf], default 0.0 
    '''

    scale_x = None
    '''Scaling factor that is applied along the X axis 

    :type:  float in [-inf, inf], default 0.0 
    '''

    scale_y = None
    '''Scaling factor that is applied along the Y axis 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_BackboneStretcher:
    '''Stretch the beginning and the end of stroke backbone '''

    backbone_length = None
    '''Amount of backbone stretching 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_BezierCurve:
    '''Replace stroke backbone geometry by a Bezier curve approximation of the original backbone geometry '''

    error = None
    '''Maximum distance allowed between the new Bezier curve and the original backbone geometry 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_Blueprint:
    '''Produce a blueprint using circular, elliptic, and square contour strokes '''

    backbone_length = None
    '''Amount of backbone stretching 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    random_backbone = None
    '''Randomness of the backbone stretching 

    :type:  int in [0, inf], default 0 
    '''

    random_center = None
    '''Randomness of the center 

    :type:  int in [0, inf], default 0 
    '''

    random_radius = None
    '''Randomness of the radius 

    :type:  int in [0, inf], default 0 
    '''

    rounds = None
    '''Number of rounds in contour strokes 

    :type:  int in [1, 1000], default 0 
    '''

    shape = None
    '''Select the shape of blueprint contour strokes 

    :type:  enum in [‘CIRCLES’, ‘ELLIPSES’, ‘SQUARES’], default ‘CIRCLES’ 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_GuidingLines:
    '''Modify the stroke geometry so that it corresponds to its main direction line '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    offset = None
    '''Displacement that is applied to the main direction line along its normal 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_PerlinNoise1D:
    '''Add one-dimensional Perlin noise to stroke backbone geometry '''

    amplitude = None
    '''Amplitude of the Perlin noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    angle = None
    '''Displacement direction 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    frequency = None
    '''Frequency of the Perlin noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    octaves = None
    '''Number of octaves (i.e., the amount of detail of the Perlin noise) 

    :type:  int in [0, inf], default 0 
    '''

    seed = None
    '''Seed for random number generation (if negative, time is used as a seed instead) 

    :type:  int in [-inf, inf], default 0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_PerlinNoise2D:
    '''Add two-dimensional Perlin noise to stroke backbone geometry '''

    amplitude = None
    '''Amplitude of the Perlin noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    angle = None
    '''Displacement direction 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    frequency = None
    '''Frequency of the Perlin noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    octaves = None
    '''Number of octaves (i.e., the amount of detail of the Perlin noise) 

    :type:  int in [0, inf], default 0 
    '''

    seed = None
    '''Seed for random number generation (if negative, time is used as a seed instead) 

    :type:  int in [-inf, inf], default 0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_Polygonalization:
    '''Modify the stroke geometry so that it looks more ‘polygonal’ '''

    error = None
    '''Maximum distance between the original stroke and its polygonal approximation 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_Sampling:
    '''Specify a new sampling value that determines the resolution of stroke polylines '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    sampling = None
    '''New sampling value to be used for subsequent modifiers 

    :type:  float in [0, 10000], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_Simplification:
    '''Simplify the stroke set '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    tolerance = None
    '''Distance below which segments will be merged 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_SinusDisplacement:
    '''Add sinus displacement to stroke backbone geometry '''

    amplitude = None
    '''Amplitude of the sinus displacement 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    phase = None
    '''Phase of the sinus displacement 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''

    wavelength = None
    '''Wavelength of the sinus displacement 

    :type:  float in [-inf, inf], default 0.0 
    '''


class LineStyleGeometryModifier_SpatialNoise:
    '''Add spatial noise to stroke backbone geometry '''

    amplitude = None
    '''Amplitude of the spatial noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    octaves = None
    '''Number of octaves (i.e., the amount of detail of the spatial noise) 

    :type:  int in [0, inf], default 0 
    '''

    scale = None
    '''Scale of the spatial noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    smooth = None
    '''If true, the spatial noise is smooth 

    :type:  boolean, default False 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''

    use_pure_random = None
    '''If true, the spatial noise does not show any coherence 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifier_TipRemover:
    '''Remove a piece of stroke at the beginning and the end of stroke backbone '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    tip_length = None
    '''Length of tips to be removed 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘2D_OFFSET’, ‘2D_TRANSFORM’, ‘BACKBONE_STRETCHER’, ‘BEZIER_CURVE’, ‘BLUEPRINT’, ‘GUIDING_LINES’, ‘PERLIN_NOISE_1D’, ‘PERLIN_NOISE_2D’, ‘POLYGONIZATION’, ‘SAMPLING’, ‘SIMPLIFICATION’, ‘SINUS_DISPLACEMENT’, ‘SPATIAL_NOISE’, ‘TIP_REMOVER’], default ‘2D_OFFSET’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleGeometryModifiers:
    '''Geometry modifiers for changing line geometries '''

    def new(self, name, type):
        '''Add a geometry modifier to line style 

        :param name: New name for the geometry modifier (not unique) 
        :type name: string, (never None)
        :param type: Geometry modifier type to add 
        :type type: enum in ['2D_OFFSET', '2D_TRANSFORM', 'BACKBONE_STRETCHER', 'BEZIER_CURVE', 'BLUEPRINT', 'GUIDING_LINES', 'PERLIN_NOISE_1D', 'PERLIN_NOISE_2D', 'POLYGONIZATION', 'SAMPLING', 'SIMPLIFICATION', 'SINUS_DISPLACEMENT', 'SPATIAL_NOISE', 'TIP_REMOVER']
        :rtype: LineStyleGeometryModifier 
        :return:  Newly added geometry modifier 
        '''
        pass

    def remove(self, modifier):
        '''Remove a geometry modifier from line style 

        :param modifier: Geometry modifier to remove 
        :type modifier: LineStyleGeometryModifier, (never None)
        '''
        pass


class LineStyleModifier:
    '''Base type to define modifiers '''

    pass


class LineStyleTextureSlot:
    '''Texture slot for textures in a LineStyle data-block '''

    alpha_factor = None
    '''Amount texture affects alpha 

    :type:  float in [-inf, inf], default 0.0 
    '''

    diffuse_color_factor = None
    '''Amount texture affects diffuse color 

    :type:  float in [-inf, inf], default 0.0 
    '''

    mapping = None
    '''

    :type:  enum in [‘FLAT’, ‘CUBE’, ‘TUBE’, ‘SPHERE’], default ‘FLAT’ 
    '''

    mapping_x = None
    '''

    :type:  enum in [‘NONE’, ‘X’, ‘Y’, ‘Z’], default ‘NONE’ 
    '''

    mapping_y = None
    '''

    :type:  enum in [‘NONE’, ‘X’, ‘Y’, ‘Z’], default ‘NONE’ 
    '''

    mapping_z = None
    '''

    :type:  enum in [‘NONE’, ‘X’, ‘Y’, ‘Z’], default ‘NONE’ 
    '''

    texture_coords = None
    '''Texture coordinates used to map the texture onto the background 

    :type:  enum in [‘WINDOW’, ‘GLOBAL’, ‘ALONG_STROKE’, ‘ORCO’], default ‘WINDOW’ 
    '''

    use_map_alpha = None
    '''The texture affects the alpha value 

    :type:  boolean, default False 
    '''

    use_map_color_diffuse = None
    '''The texture affects basic color of the stroke 

    :type:  boolean, default False 
    '''


class LineStyleTextureSlots:
    '''Collection of texture slots '''

    pass


class LineStyleThicknessModifier:
    '''Base type to define line thickness modifiers '''

    pass


class LineStyleThicknessModifier_AlongStroke:
    '''Change line thickness along stroke '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CALLIGRAPHY’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''

    value_max = None
    '''Maximum output value of the mapping 

    :type:  float in [-inf, inf], default 0.0 
    '''

    value_min = None
    '''Minimum output value of the mapping 

    :type:  float in [-inf, inf], default 0.0 
    '''


class LineStyleThicknessModifier_Calligraphy:
    '''Change line thickness so that stroke looks like made with a calligraphic pen '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    orientation = None
    '''Angle of the main direction 

    :type:  float in [-inf, inf], default 0.0 
    '''

    thickness_max = None
    '''Maximum thickness in the main direction 

    :type:  float in [0, 10000], default 0.0 
    '''

    thickness_min = None
    '''Minimum thickness in the direction perpendicular to the main direction 

    :type:  float in [0, 10000], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CALLIGRAPHY’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleThicknessModifier_CreaseAngle:
    '''Line thickness based on the angle between two adjacent faces '''

    angle_max = None
    '''Maximum angle to modify thickness 

    :type:  float in [-inf, inf], default 0.0 
    '''

    angle_min = None
    '''Minimum angle to modify thickness 

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    thickness_max = None
    '''Maximum thickness 

    :type:  float in [0, 10000], default 0.0 
    '''

    thickness_min = None
    '''Minimum thickness 

    :type:  float in [0, 10000], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CALLIGRAPHY’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleThicknessModifier_Curvature_3D:
    '''Line thickness based on the radial curvature of 3D mesh surfaces '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curvature_max = None
    '''Maximum Curvature 

    :type:  float in [0, 10000], default 0.0 
    '''

    curvature_min = None
    '''Minimum Curvature 

    :type:  float in [0, 10000], default 0.0 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    thickness_max = None
    '''Maximum thickness 

    :type:  float in [0, 10000], default 0.0 
    '''

    thickness_min = None
    '''Minimum thickness 

    :type:  float in [0, 10000], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CALLIGRAPHY’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleThicknessModifier_DistanceFromCamera:
    '''Change line thickness based on the distance from the camera '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    range_max = None
    '''Upper bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    range_min = None
    '''Lower bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CALLIGRAPHY’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''

    value_max = None
    '''Maximum output value of the mapping 

    :type:  float in [-inf, inf], default 0.0 
    '''

    value_min = None
    '''Minimum output value of the mapping 

    :type:  float in [-inf, inf], default 0.0 
    '''


class LineStyleThicknessModifier_DistanceFromObject:
    '''Change line thickness based on the distance from an object '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    range_max = None
    '''Upper bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    range_min = None
    '''Lower bound of the input range the mapping is applied 

    :type:  float in [-inf, inf], default 0.0 
    '''

    target = None
    '''Target object from which the distance is measured 

    :type:  Object 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CALLIGRAPHY’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''

    value_max = None
    '''Maximum output value of the mapping 

    :type:  float in [-inf, inf], default 0.0 
    '''

    value_min = None
    '''Minimum output value of the mapping 

    :type:  float in [-inf, inf], default 0.0 
    '''


class LineStyleThicknessModifier_Material:
    '''Change line thickness based on a material attribute '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    material_attribute = None
    '''Specify which material attribute is used 

    :type:  enum in [‘LINE’, ‘LINE_R’, ‘LINE_G’, ‘LINE_B’, ‘LINE_A’, ‘DIFF’, ‘DIFF_R’, ‘DIFF_G’, ‘DIFF_B’, ‘SPEC’, ‘SPEC_R’, ‘SPEC_G’, ‘SPEC_B’, ‘SPEC_HARD’, ‘ALPHA’], default ‘LINE’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CALLIGRAPHY’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''

    value_max = None
    '''Maximum output value of the mapping 

    :type:  float in [-inf, inf], default 0.0 
    '''

    value_min = None
    '''Minimum output value of the mapping 

    :type:  float in [-inf, inf], default 0.0 
    '''


class LineStyleThicknessModifier_Noise:
    '''Line thickness based on random noise '''

    amplitude = None
    '''Amplitude of the noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    period = None
    '''Period of the noise 

    :type:  float in [-inf, inf], default 0.0 
    '''

    seed = None
    '''Seed for the noise generation 

    :type:  int in [-inf, inf], default 0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CALLIGRAPHY’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''

    use_asymmetric = None
    '''Allow thickness to be assigned asymmetrically 

    :type:  boolean, default False 
    '''


class LineStyleThicknessModifier_Tangent:
    '''Thickness based on the direction of the stroke '''

    blend = None
    '''Specify how the modifier value is blended into the base value 

    :type:  enum in [‘MIX’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘DIFFERENCE’, ‘MINIMUM’, ‘MAXIMUM’], default ‘MIX’ 
    '''

    curve = None
    '''Curve used for the curve mapping 

    :type:  CurveMapping, (readonly) 
    '''

    expanded = None
    '''True if the modifier tab is expanded 

    :type:  boolean, default False 
    '''

    influence = None
    '''Influence factor by which the modifier changes the property 

    :type:  float in [0, 1], default 0.0 
    '''

    invert = None
    '''Invert the fade-out direction of the linear mapping 

    :type:  boolean, default False 
    '''

    mapping = None
    '''Select the mapping type 

    :type:  enum in [‘LINEAR’, ‘CURVE’], default ‘LINEAR’ 
    '''

    name = None
    '''Name of the modifier 

    :type:  string, default “”, (never None) 
    '''

    thickness_max = None
    '''Maximum thickness 

    :type:  float in [0, 10000], default 0.0 
    '''

    thickness_min = None
    '''Minimum thickness 

    :type:  float in [0, 10000], default 0.0 
    '''

    type = None
    '''Type of the modifier 

    :type:  enum in [‘ALONG_STROKE’, ‘CALLIGRAPHY’, ‘CREASE_ANGLE’, ‘CURVATURE_3D’, ‘DISTANCE_FROM_CAMERA’, ‘DISTANCE_FROM_OBJECT’, ‘MATERIAL’, ‘NOISE’, ‘TANGENT’], default ‘ALONG_STROKE’, (readonly) 
    '''

    use = None
    '''Enable or disable this modifier during stroke rendering 

    :type:  boolean, default False 
    '''


class LineStyleThicknessModifiers:
    '''Thickness modifiers for changing line thickness '''

    def new(self, name, type):
        '''Add a thickness modifier to line style 

        :param name: New name for the thickness modifier (not unique) 
        :type name: string, (never None)
        :param type: Thickness modifier type to add 
        :type type: enum in ['ALONG_STROKE', 'CALLIGRAPHY', 'CREASE_ANGLE', 'CURVATURE_3D', 'DISTANCE_FROM_CAMERA', 'DISTANCE_FROM_OBJECT', 'MATERIAL', 'NOISE', 'TANGENT']
        :rtype: LineStyleThicknessModifier 
        :return:  Newly added thickness modifier 
        '''
        pass

    def remove(self, modifier):
        '''Remove a thickness modifier from line style 

        :param modifier: Thickness modifier to remove 
        :type modifier: LineStyleThicknessModifier, (never None)
        '''
        pass


class Linesets:
    '''Line sets for associating lines and style parameters '''

    active = None
    '''Active line set being displayed 

    :type:  FreestyleLineSet, (readonly) 
    '''

    active_index = None
    '''Index of active line set slot 

    :type:  int in [0, inf], default 0 
    '''

    def new(self, name):
        '''Add a line set to scene render layer Freestyle settings 

        :param name: New name for the line set (not unique) 
        :type name: string, (never None)
        :rtype: FreestyleLineSet 
        :return:  Newly created line set 
        '''
        pass

    def remove(self, lineset):
        '''Remove a line set from scene render layer Freestyle settings 

        :param lineset: Line set to remove 
        :type lineset: FreestyleLineSet, (never None)
        '''
        pass


class LockedTrackConstraint:
    '''Point toward the target along the track axis, while locking the other axis '''

    head_tail = None
    '''Target along length of bone: Head=0, Tail=1 

    :type:  float in [0, 1], default 0.0 
    '''

    lock_axis = None
    '''Axis that points upward 

    :type:  enum in [‘LOCK_X’, ‘LOCK_Y’, ‘LOCK_Z’], default ‘LOCK_X’ 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    track_axis = None
    '''Axis that points to the target object 

    :type:  enum in [‘TRACK_X’, ‘TRACK_Y’, ‘TRACK_Z’, ‘TRACK_NEGATIVE_X’, ‘TRACK_NEGATIVE_Y’, ‘TRACK_NEGATIVE_Z’], default ‘TRACK_X’ 
    '''

    use_bbone_shape = None
    '''Follow shape of B-Bone segments when calculating Head/Tail position 

    :type:  boolean, default False 
    '''


class LoopColors:
    '''Collection of vertex colors '''

    active = None
    '''Active vertex color layer 

    :type:  MeshLoopColorLayer 
    '''

    active_index = None
    '''Active vertex color index 

    :type:  int in [0, inf], default 0 
    '''

    def new(self, name="Col", do_init=True):
        '''Add a vertex color layer to Mesh 

        :param name: Vertex color name 
        :type name: string, (optional, never None)
        :param do_init: Whether new layer’s data should be initialized by copying current active one 
        :type do_init: boolean, (optional)
        :rtype: MeshLoopColorLayer 
        :return:  The newly created layer 
        '''
        pass

    def remove(self, layer):
        '''Remove a vertex color layer 

        :param layer: The layer to remove 
        :type layer: MeshLoopColorLayer, (never None)
        '''
        pass


class MASK_UL_layers:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class MATERIAL_UL_matslots:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class MESH_UL_fmaps:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class MESH_UL_shape_keys:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class MESH_UL_uvmaps:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class MESH_UL_vcols:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class MESH_UL_vgroups:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class Macro:
    '''Storage of a macro operator being executed, or registered after execution '''

    bl_description = None
    '''

    :type:  string, default “” 
    '''

    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_options = None
    '''Options for this operator type 

    :type:  enum set in {‘REGISTER’, ‘UNDO’, ‘UNDO_GROUPED’, ‘BLOCKING’, ‘MACRO’, ‘GRAB_CURSOR’, ‘PRESET’, ‘INTERNAL’, ‘USE_EVAL_DATA’}, default {‘REGISTER’} 
    '''

    bl_translation_context = None
    '''

    :type:  string, default “Operator” 
    '''

    bl_undo_group = None
    '''

    :type:  string, default “” 
    '''

    name = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    properties = None
    '''

    :type:  OperatorProperties, (readonly, never None) 
    '''

    def report(self, type, message):
        '''report 

        :param type: Type 
        :type type: enum set in {'DEBUG', 'INFO', 'OPERATOR', 'PROPERTY', 'WARNING', 'ERROR', 'ERROR_INVALID_INPUT', 'ERROR_INVALID_CONTEXT', 'ERROR_OUT_OF_MEMORY'}
        :param message: Report Message 
        :type message: string, (never None)
        '''
        pass

    def draw(self, context):
        '''Draw function for the operator 

        '''
        pass


class MagicTexture:
    '''Procedural noise texture '''

    noise_depth = None
    '''Depth of the noise 

    :type:  int in [0, 30], default 0 
    '''

    turbulence = None
    '''Turbulence of the noise 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class MaintainVolumeConstraint:
    '''Maintain a constant volume along a single scaling axis '''

    free_axis = None
    '''The free scaling axis of the object 

    :type:  enum in [‘SAMEVOL_X’, ‘SAMEVOL_Y’, ‘SAMEVOL_Z’], default ‘SAMEVOL_X’ 
    '''

    volume = None
    '''Volume of the bone at rest 

    :type:  float in [0.001, 100], default 0.0 
    '''


class MarbleTexture:
    '''Procedural noise texture '''

    marble_type = None
    '''

    :type:  enum in [‘SOFT’, ‘SHARP’, ‘SHARPER’], default ‘SOFT’ 
    '''

    nabla = None
    '''Size of derivative offset used for calculating normal 

    :type:  float in [0.001, 0.1], default 0.0 
    '''

    noise_basis = None
    '''Noise basis used for turbulence 

    :type:  enum in [‘BLENDER_ORIGINAL’, ‘ORIGINAL_PERLIN’, ‘IMPROVED_PERLIN’, ‘VORONOI_F1’, ‘VORONOI_F2’, ‘VORONOI_F3’, ‘VORONOI_F4’, ‘VORONOI_F2_F1’, ‘VORONOI_CRACKLE’, ‘CELL_NOISE’], default ‘BLENDER_ORIGINAL’ 
    '''

    noise_basis_2 = None
    '''

    :type:  enum in [‘SIN’, ‘SAW’, ‘TRI’], default ‘SIN’ 
    '''

    noise_depth = None
    '''Depth of the cloud calculation 

    :type:  int in [0, 30], default 0 
    '''

    noise_scale = None
    '''Scaling for noise input 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    noise_type = None
    '''

    :type:  enum in [‘SOFT_NOISE’, ‘HARD_NOISE’], default ‘SOFT_NOISE’ 
    '''

    turbulence = None
    '''Turbulence of the bandnoise and ringnoise types 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class Mask:
    '''Mask data-block defining mask for compositing '''

    active_layer_index = None
    '''Index of active layer in list of all mask’s layers 

    :type:  int in [-inf, inf], default 0 
    '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    frame_end = None
    '''Final frame of the mask (used for sequencer) 

    :type:  int in [0, 1048574], default 0 
    '''

    frame_start = None
    '''First frame of the mask (used for sequencer) 

    :type:  int in [0, 1048574], default 0 
    '''

    layers = None
    '''Collection of layers which defines this mask 

    :type:  MaskLayers bpy_prop_collection of MaskLayer, (readonly) 
    '''


class MaskLayer:
    '''Single layer used for masking pixels '''

    alpha = None
    '''Render Opacity 

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend = None
    '''Method of blending mask layers 

    :type:  enum in [‘MERGE_ADD’, ‘MERGE_SUBTRACT’, ‘ADD’, ‘SUBTRACT’, ‘LIGHTEN’, ‘DARKEN’, ‘MUL’, ‘REPLACE’, ‘DIFFERENCE’], default ‘ADD’ 
    '''

    falloff = None
    '''Falloff type the feather 

    :type:  enum in [‘SMOOTH’, ‘SPHERE’, ‘ROOT’, ‘INVERSE_SQUARE’, ‘SHARP’, ‘LINEAR’], default ‘SMOOTH’ 
    '''

    hide = None
    '''Restrict visibility in the viewport 

    :type:  boolean, default False 
    '''

    hide_render = None
    '''Restrict renderability 

    :type:  boolean, default False 
    '''

    hide_select = None
    '''Restrict selection in the viewport 

    :type:  boolean, default False 
    '''

    invert = None
    '''Invert the mask black/white 

    :type:  boolean, default False 
    '''

    name = None
    '''Unique name of layer 

    :type:  string, default “”, (never None) 
    '''

    select = None
    '''Layer is selected for editing in the Dope Sheet 

    :type:  boolean, default False 
    '''

    splines = None
    '''Collection of splines which defines this layer 

    :type:  MaskSplines bpy_prop_collection of MaskSpline, (readonly) 
    '''

    use_fill_holes = None
    '''Calculate holes when filling overlapping curves 

    :type:  boolean, default False 
    '''

    use_fill_overlap = None
    '''Calculate self intersections and overlap before filling 

    :type:  boolean, default False 
    '''


class MaskLayers:
    '''Collection of layers used by mask '''

    active = None
    '''Active layer in this mask 

    :type:  MaskLayer 
    '''

    def new(self, name=""):
        '''Add layer to this mask 

        :param name: Name, Name of new layer 
        :type name: string, (optional, never None)
        :rtype: MaskLayer 
        :return:  New mask layer 
        '''
        pass

    def remove(self, layer):
        '''Remove layer from this mask 

        :param layer: Shape to be removed 
        :type layer: MaskLayer, (never None)
        '''
        pass

    def clear(self):
        '''Remove all mask layers 

        '''
        pass


class MaskModifier:
    '''Mask modifier to hide parts of the mesh '''

    armature = None
    '''Armature to use as source of bones to mask 

    :type:  Object 
    '''

    invert_vertex_group = None
    '''Use vertices that are not part of region defined 

    :type:  boolean, default False 
    '''

    mode = None
    '''

    :type:  enum in [‘VERTEX_GROUP’, ‘ARMATURE’], default ‘VERTEX_GROUP’ 
    '''

    threshold = None
    '''Weights over this threshold remain 

    :type:  float in [0, 1], default 0.0 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''


class MaskParent:
    '''Parenting settings for masking element '''

    id = None
    '''ID-block to which masking element would be parented to or to it’s property 

    :type:  ID 
    '''

    id_type = None
    '''Type of ID-block that can be used 

    :type:  enum in [‘MOVIECLIP’], default ‘MOVIECLIP’ 
    '''

    parent = None
    '''Name of parent object in specified data-block to which parenting happens 

    :type:  string, default “”, (never None) 
    '''

    sub_parent = None
    '''Name of parent sub-object in specified data-block to which parenting happens 

    :type:  string, default “”, (never None) 
    '''

    type = None
    '''Parent Type 

    :type:  enum in [‘POINT_TRACK’, ‘PLANE_TRACK’], default ‘POINT_TRACK’ 
    '''


class MaskSequence:
    '''Sequence strip to load a video from a mask '''

    alpha_mode = None
    '''Representation of alpha information in the RGBA pixels 

    :type:  enum in [‘STRAIGHT’, ‘PREMUL’], default ‘STRAIGHT’ 
    '''

    animation_offset_end = None
    '''Animation end offset (trim end) 

    :type:  int in [0, inf], default 0 
    '''

    animation_offset_start = None
    '''Animation start offset (trim start) 

    :type:  int in [0, inf], default 0 
    '''

    color_multiply = None
    '''

    :type:  float in [0, 20], default 1.0 
    '''

    color_saturation = None
    '''Adjust the intensity of the input’s color 

    :type:  float in [0, 20], default 1.0 
    '''

    crop = None
    '''

    :type:  SequenceCrop, (readonly) 
    '''

    mask = None
    '''Mask that this sequence uses 

    :type:  Mask 
    '''

    strobe = None
    '''Only display every nth frame 

    :type:  float in [1, 30], default 0.0 
    '''

    transform = None
    '''

    :type:  SequenceTransform, (readonly) 
    '''

    use_crop = None
    '''Crop image before processing 

    :type:  boolean, default False 
    '''

    use_deinterlace = None
    '''Remove fields from video movies 

    :type:  boolean, default False 
    '''

    use_flip_x = None
    '''Flip on the X axis 

    :type:  boolean, default False 
    '''

    use_flip_y = None
    '''Flip on the Y axis 

    :type:  boolean, default False 
    '''

    use_float = None
    '''Convert input to float data 

    :type:  boolean, default False 
    '''

    use_reverse_frames = None
    '''Reverse frame order 

    :type:  boolean, default False 
    '''

    use_translation = None
    '''Translate image before processing 

    :type:  boolean, default False 
    '''


class MaskSpline:
    '''Single spline used for defining mask shape '''

    offset_mode = None
    '''The method used for calculating the feather offset 

    :type:  enum in [‘EVEN’, ‘SMOOTH’], default ‘EVEN’ 
    '''

    points = None
    '''Collection of points 

    :type:  MaskSplinePoints bpy_prop_collection of MaskSplinePoint, (readonly) 
    '''

    use_cyclic = None
    '''Make this spline a closed loop 

    :type:  boolean, default False 
    '''

    use_fill = None
    '''Make this spline filled 

    :type:  boolean, default False 
    '''

    use_self_intersection_check = None
    '''Prevent feather from self-intersections 

    :type:  boolean, default False 
    '''

    weight_interpolation = None
    '''The type of weight interpolation for spline 

    :type:  enum in [‘LINEAR’, ‘EASE’], default ‘LINEAR’ 
    '''


class MaskSplinePoint:
    '''Single point in spline used for defining mask '''

    co = None
    '''Coordinates of the control point 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    feather_points = None
    '''Points defining feather 

    :type:  bpy_prop_collection of MaskSplinePointUW, (readonly) 
    '''

    handle_left = None
    '''Coordinates of the first handle 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    handle_left_type = None
    '''Handle type 

    :type:  enum in [‘AUTO’, ‘VECTOR’, ‘ALIGNED’, ‘ALIGNED_DOUBLESIDE’, ‘FREE’], default ‘FREE’ 
    '''

    handle_right = None
    '''Coordinates of the second handle 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    handle_right_type = None
    '''Handle type 

    :type:  enum in [‘AUTO’, ‘VECTOR’, ‘ALIGNED’, ‘ALIGNED_DOUBLESIDE’, ‘FREE’], default ‘FREE’ 
    '''

    handle_type = None
    '''Handle type 

    :type:  enum in [‘AUTO’, ‘VECTOR’, ‘ALIGNED’, ‘ALIGNED_DOUBLESIDE’, ‘FREE’], default ‘FREE’ 
    '''

    parent = None
    '''

    :type:  MaskParent, (readonly) 
    '''

    select = None
    '''Selection status 

    :type:  boolean, default False 
    '''

    weight = None
    '''Weight of the point 

    :type:  float in [0, 1], default 0.0 
    '''


class MaskSplinePointUW:
    '''Single point in spline segment defining feather '''

    select = None
    '''Selection status 

    :type:  boolean, default False 
    '''

    u = None
    '''U coordinate of point along spline segment 

    :type:  float in [0, 1], default 0.0 
    '''

    weight = None
    '''Weight of feather point 

    :type:  float in [0, 1], default 0.0 
    '''


class MaskSplinePoints:
    '''Collection of masking spline points '''

    def add(self, count):
        '''Add a number of point to this spline 

        :param count: Number, Number of points to add to the spline 
        :type count: int in [0, inf]
        '''
        pass

    def remove(self, point):
        '''Remove a point from a spline 

        :param point: The point to remove 
        :type point: MaskSplinePoint, (never None)
        '''
        pass


class MaskSplines:
    '''Collection of masking splines '''

    active = None
    '''Active spline of masking layer 

    :type:  MaskSpline 
    '''

    active_point = None
    '''Active spline of masking layer 

    :type:  MaskSplinePoint 
    '''

    def new(self):
        '''Add a new spline to the layer 

        :rtype: MaskSpline 
        :return:  The newly created spline 
        '''
        pass

    def remove(self, spline):
        '''Remove a spline from a layer 

        :param spline: The spline to remove 
        :type spline: MaskSpline, (never None)
        '''
        pass


class Material:
    '''Material data-block to define the appearance of geometric objects for rendering '''

    alpha_threshold = None
    '''A pixel is rendered only if its alpha value is above this threshold 

    :type:  float in [0, 1], default 0.0 
    '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    blend_method = None
    '''Blend Mode for Transparent Faces 

    :type:  enum in [‘OPAQUE’, ‘ADD’, ‘MULTIPLY’, ‘CLIP’, ‘HASHED’, ‘BLEND’], default ‘OPAQUE’ 
    '''

    cycles = None
    '''Cycles material settings 

    :type:  CyclesMaterialSettings, (readonly) 
    '''

    diffuse_color = None
    '''Diffuse color of the material 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    grease_pencil = None
    '''Grease pencil color settings for material 

    :type:  MaterialGPencilStyle, (readonly) 
    '''

    is_grease_pencil = None
    '''True if this material has grease pencil data 

    :type:  boolean, default False, (readonly) 
    '''

    line_color = None
    '''Line color used for Freestyle line rendering 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    line_priority = None
    '''The line color of a higher priority is used at material boundaries 

    :type:  int in [0, 32767], default 0 
    '''

    metallic = None
    '''Amount of mirror reflection for raytrace 

    :type:  float in [0, 1], default 0.0 
    '''

    node_tree = None
    '''Node tree for node based materials 

    :type:  NodeTree, (readonly) 
    '''

    paint_active_slot = None
    '''Index of active texture paint slot 

    :type:  int in [0, 32767], default 0 
    '''

    paint_clone_slot = None
    '''Index of clone texture paint slot 

    :type:  int in [0, 32767], default 0 
    '''

    pass_index = None
    '''Index number for the “Material Index” render pass 

    :type:  int in [0, 32767], default 0 
    '''

    preview_render_type = None
    '''Type of preview render 

    :type:  enum in [‘FLAT’, ‘SPHERE’, ‘CUBE’, ‘HAIR’, ‘SHADERBALL’, ‘CLOTH’, ‘FLUID’], default ‘FLAT’ 
    '''

    refraction_depth = None
    '''Approximate the thickness of the object to compute two refraction event (0 is disabled) 

    :type:  float in [0, inf], default 0.0 
    '''

    roughness = None
    '''Roughness of the material 

    :type:  float in [0, 1], default 0.25 
    '''

    shadow_method = None
    '''Shadow mapping method 

    :type:  enum in [‘NONE’, ‘OPAQUE’, ‘CLIP’, ‘HASHED’], default ‘NONE’ 
    '''

    show_transparent_back = None
    '''Limit transparency to a single layer (avoids transparency sorting problems) 

    :type:  boolean, default False 
    '''

    specular_color = None
    '''Specular color of the material 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    specular_intensity = None
    '''How intense (bright) the specular reflection is 

    :type:  float in [0, 1], default 0.5 
    '''

    texture_paint_images = None
    '''Texture images used for texture painting 

    :type:  bpy_prop_collection of Image, (readonly) 
    '''

    texture_paint_slots = None
    '''Texture slots defining the mapping and influence of textures 

    :type:  bpy_prop_collection of TexPaintSlot, (readonly) 
    '''

    use_nodes = None
    '''Use shader nodes to render the material 

    :type:  boolean, default False 
    '''

    use_preview_world = None
    '''Use the current world background to light the preview render 

    :type:  boolean, default False 
    '''

    use_screen_refraction = None
    '''Use raytraced screen space refractions 

    :type:  boolean, default False 
    '''

    use_sss_translucency = None
    '''Add translucency effect to subsurface 

    :type:  boolean, default False 
    '''


class MaterialGPencilStyle:
    color = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    fill_color = None
    '''Color for filling region bounded by each stroke 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    fill_image = None
    '''

    :type:  Image 
    '''

    fill_style = None
    '''Select style used to fill strokes 

    :type:  enum in [‘SOLID’, ‘GRADIENT’, ‘CHESSBOARD’, ‘TEXTURE’], default ‘SOLID’ 
    '''

    flip = None
    '''Flip filling colors 

    :type:  boolean, default False 
    '''

    ghost = None
    '''Display strokes using this color when showing onion skins 

    :type:  boolean, default False 
    '''

    gradient_type = None
    '''Select type of gradient used to fill strokes 

    :type:  enum in [‘LINEAR’, ‘RADIAL’], default ‘LINEAR’ 
    '''

    hide = None
    '''Set color Visibility 

    :type:  boolean, default False 
    '''

    is_fill_visible = None
    '''True when opacity of fill is set high enough to be visible 

    :type:  boolean, default False, (readonly) 
    '''

    is_stroke_visible = None
    '''True when opacity of stroke is set high enough to be visible 

    :type:  boolean, default False, (readonly) 
    '''

    lock = None
    '''Protect color from further editing and/or frame changes 

    :type:  boolean, default False 
    '''

    mix_color = None
    '''Color for mixing with primary filling color 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    mix_factor = None
    '''Mix Adjustment Factor 

    :type:  float in [0, 1], default 0.0 
    '''

    mode = None
    '''Select draw mode for stroke 

    :type:  enum in [‘LINE’, ‘DOTS’, ‘BOX’], default ‘LINE’ 
    '''

    pass_index = None
    '''Index number for the “Color Index” pass 

    :type:  int in [0, 32767], default 0 
    '''

    pattern_angle = None
    '''Pattern Orientation Angle 

    :type:  float in [-inf, inf], default 0.0 
    '''

    pattern_gridsize = None
    '''Box Size 

    :type:  float in [0.0001, 10], default 0.0 
    '''

    pattern_radius = None
    '''Pattern Radius 

    :type:  float in [0.0001, 10], default 0.0 
    '''

    pattern_scale = None
    '''Scale Factor for UV coordinates 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    pattern_shift = None
    '''Shift filling pattern in 2d space 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    pixel_size = None
    '''Texture Pixel Size factor along the stroke 

    :type:  float in [1, 5000], default 0.0 
    '''

    show_fill = None
    '''Show stroke fills of this material 

    :type:  boolean, default False 
    '''

    show_stroke = None
    '''Show stroke lines of this material 

    :type:  boolean, default False 
    '''

    stroke_image = None
    '''

    :type:  Image 
    '''

    stroke_style = None
    '''Select style used to draw strokes 

    :type:  enum in [‘SOLID’, ‘TEXTURE’], default ‘SOLID’ 
    '''

    texture_angle = None
    '''Texture Orientation Angle 

    :type:  float in [-inf, inf], default 0.0 
    '''

    texture_clamp = None
    '''Do not repeat texture and clamp to one instance only 

    :type:  boolean, default False 
    '''

    texture_mix = None
    '''Mix texture image with filling colors 

    :type:  boolean, default False 
    '''

    texture_offset = None
    '''Shift Texture in 2d Space 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    texture_opacity = None
    '''Texture Opacity 

    :type:  float in [0, 1], default 0.0 
    '''

    texture_scale = None
    '''Scale Factor for Texture 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    use_fill_pattern = None
    '''Use Fill Texture as a pattern to apply color 

    :type:  boolean, default False 
    '''

    use_follow_path = None
    '''Keep Dots and Boxes aligned to drawing path 

    :type:  boolean, default False 
    '''

    use_stroke_pattern = None
    '''Use Stroke Texture as a pattern to apply color 

    :type:  boolean, default False 
    '''


class MaterialSlot:
    '''Material slot in an object '''

    link = None
    '''Link material to object or the object’s data 

    :type:  enum in [‘OBJECT’, ‘DATA’], default ‘DATA’ 
    '''

    material = None
    '''Material data-block used by this material slot 

    :type:  Material 
    '''

    name = None
    '''Material slot name 

    :type:  string, default “”, (readonly, never None) 
    '''


class Menu:
    '''Editor menu containing buttons '''

    bl_description = None
    '''

    :type:  string, default “” 
    '''

    bl_idname = None
    '''If this is set, the menu gets a custom ID, otherwise it takes the name of the class used to define the menu (for example, if the class name is “OBJECT_MT_hello”, and bl_idname is not set by the script, then bl_idname = “OBJECT_MT_hello”) 

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''The menu label 

    :type:  string, default “”, (never None) 
    '''

    bl_owner_id = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_translation_context = None
    '''

    :type:  string, default “*”, (never None) 
    '''

    layout = None
    '''Defines the structure of the menu in the UI 

    :type:  UILayout, (readonly) 
    '''

    def draw(self, context):
        '''Draw UI elements into the menu UI layout 

        '''
        pass

    def draw_preset(self, context):
        '''Optionally: - preset_add_operator (string) - preset_extensions (set of strings) - preset_operator_defaults (dict of keyword args) 

        '''
        pass

    def path_menu(self,
                  searchpaths,
                  operator,
                  *,
                  props_default=None,
                  prop_filepath='filepath',
                  filter_ext=None,
                  filter_path=None,
                  display_name=None,
                  add_operator=None):
        '''Populate a menu from a list of paths. 

        :param searchpaths: Paths to scan. 
        :type searchpaths: sequence of strings.
        :param operator: The operator id to use with each file. 
        :type operator: string
        :param prop_filepath: Optional operator filepath property (defaults to “filepath”). 
        :type prop_filepath: string
        :param props_default: Properties to assign to each operator. 
        :type props_default: dict
        :param filter_ext: Optional callback that takes the file extensions.Returning false excludes the file from the list. 
        :type filter_ext: Callable that takes a string and returns a bool.
        :param display_name: Optional callback that takes the full path, returns the name to display. 
        :type display_name: Callable that takes a string and returns a string.
        '''
        pass


class Mesh:
    '''Mesh data-block defining geometric surfaces '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    auto_smooth_angle = None
    '''Maximum angle between face normals that will be considered as smooth (unused if custom split normals data are available) 

    :type:  float in [0, 3.14159], default 3.14159 
    '''

    auto_texspace = None
    '''Adjust active object’s texture space automatically when transforming object 

    :type:  boolean, default False 
    '''

    cycles = None
    '''Cycles mesh settings 

    :type:  CyclesMeshSettings, (readonly) 
    '''

    edges = None
    '''Edges of the mesh 

    :type:  MeshEdges bpy_prop_collection of MeshEdge, (readonly) 
    '''

    face_maps = None
    '''

    :type:  MeshFaceMapLayers bpy_prop_collection of MeshFaceMapLayer, (readonly) 
    '''

    has_custom_normals = None
    '''True if there are custom split normals data in this mesh 

    :type:  boolean, default False, (readonly) 
    '''

    is_editmode = None
    '''True when used in editmode 

    :type:  boolean, default False, (readonly) 
    '''

    loop_triangles = None
    '''Tessellation of mesh polygons into triangles 

    :type:  MeshLoopTriangle bpy_prop_collection of MeshLoopTriangle, (readonly) 
    '''

    loops = None
    '''Loops of the mesh (polygon corners) 

    :type:  MeshLoops bpy_prop_collection of MeshLoop, (readonly) 
    '''

    materials = None
    '''

    :type:  IDMaterials bpy_prop_collection of Material, (readonly) 
    '''

    polygon_layers_float = None
    '''

    :type:  PolygonFloatProperties bpy_prop_collection of MeshPolygonFloatPropertyLayer, (readonly) 
    '''

    polygon_layers_int = None
    '''

    :type:  PolygonIntProperties bpy_prop_collection of MeshPolygonIntPropertyLayer, (readonly) 
    '''

    polygon_layers_string = None
    '''

    :type:  PolygonStringProperties bpy_prop_collection of MeshPolygonStringPropertyLayer, (readonly) 
    '''

    polygons = None
    '''Polygons of the mesh 

    :type:  MeshPolygons bpy_prop_collection of MeshPolygon, (readonly) 
    '''

    shape_keys = None
    '''

    :type:  Key, (readonly) 
    '''

    show_double_sided = None
    '''Display the mesh with double or single sided lighting (OpenGL only) 

    :type:  boolean, default False 
    '''

    skin_vertices = None
    '''All skin vertices 

    :type:  bpy_prop_collection of MeshSkinVertexLayer, (readonly) 
    '''

    texco_mesh = None
    '''Derive texture coordinates from another mesh 

    :type:  Mesh 
    '''

    texspace_location = None
    '''Texture space location 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    texspace_size = None
    '''Texture space size 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    texture_mesh = None
    '''Use another mesh for texture indices (vertex indices must be aligned) 

    :type:  Mesh 
    '''

    total_edge_sel = None
    '''Selected edge count in editmode 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    total_face_sel = None
    '''Selected face count in editmode 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    total_vert_sel = None
    '''Selected vertex count in editmode 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    use_auto_smooth = None
    '''Auto smooth (based on smooth/sharp faces/edges and angle between faces), or use custom split normals data if available 

    :type:  boolean, default False 
    '''

    use_auto_texspace = None
    '''Adjust active object’s texture space automatically when transforming object 

    :type:  boolean, default False 
    '''

    use_customdata_edge_bevel = None
    '''

    :type:  boolean, default False 
    '''

    use_customdata_edge_crease = None
    '''

    :type:  boolean, default False 
    '''

    use_customdata_vertex_bevel = None
    '''

    :type:  boolean, default False 
    '''

    use_mirror_topology = None
    '''Use topology based mirroring (for when both sides of mesh have matching, unique topology) 

    :type:  boolean, default False 
    '''

    use_mirror_x = None
    '''X Axis mirror editing 

    :type:  boolean, default False 
    '''

    use_paint_mask = None
    '''Face selection masking for painting 

    :type:  boolean, default False 
    '''

    use_paint_mask_vertex = None
    '''Vertex selection masking for painting (weight paint only) 

    :type:  boolean, default False 
    '''

    uv_layer_clone = None
    '''UV loop layer to be used as cloning source 

    :type:  MeshUVLoopLayer 
    '''

    uv_layer_clone_index = None
    '''Clone UV loop layer index 

    :type:  int in [0, inf], default 0 
    '''

    uv_layer_stencil = None
    '''UV loop layer to mask the painted area 

    :type:  MeshUVLoopLayer 
    '''

    uv_layer_stencil_index = None
    '''Mask UV loop layer index 

    :type:  int in [0, inf], default 0 
    '''

    uv_layers = None
    '''All UV loop layers 

    :type:  UVLoopLayers bpy_prop_collection of MeshUVLoopLayer, (readonly) 
    '''

    vertex_colors = None
    '''All vertex colors 

    :type:  LoopColors bpy_prop_collection of MeshLoopColorLayer, (readonly) 
    '''

    vertex_layers_float = None
    '''

    :type:  VertexFloatProperties bpy_prop_collection of MeshVertexFloatPropertyLayer, (readonly) 
    '''

    vertex_layers_int = None
    '''

    :type:  VertexIntProperties bpy_prop_collection of MeshVertexIntPropertyLayer, (readonly) 
    '''

    vertex_layers_string = None
    '''

    :type:  VertexStringProperties bpy_prop_collection of MeshVertexStringPropertyLayer, (readonly) 
    '''

    vertex_paint_masks = None
    '''Vertex paint mask 

    :type:  bpy_prop_collection of MeshPaintMaskLayer, (readonly) 
    '''

    vertices = None
    '''Vertices of the mesh 

    :type:  MeshVertices bpy_prop_collection of MeshVertex, (readonly) 
    '''

    edge_keys = None
    '''(readonly) '''

    def transform(self, matrix, shape_keys=False):
        '''Transform mesh vertices by a matrix (Warning: inverts normals if matrix is negative) 

        :param matrix: Matrix 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        :param shape_keys: Transform Shape Keys 
        :type shape_keys: boolean, (optional)
        '''
        pass

    def flip_normals(self):
        '''Invert winding of all polygons (clears tessellation, does not handle custom normals) 

        '''
        pass

    def calc_normals(self):
        '''Calculate vertex normals 

        '''
        pass

    def create_normals_split(self):
        '''Empty split vertex normals 

        '''
        pass

    def calc_normals_split(self):
        '''Calculate split vertex normals, which preserve sharp edges 

        '''
        pass

    def free_normals_split(self):
        '''Free split vertex normals 

        '''
        pass

    def split_faces(self, free_loop_normals=True):
        '''Split faces based on the edge angle 

        :param free_loop_normals: Free Loop Notmals, Free loop normals custom data layer 
        :type free_loop_normals: boolean, (optional)
        '''
        pass

    def calc_tangents(self, uvmap=""):
        '''Compute tangents and bitangent signs, to be used together with the split normals to get a complete tangent space for normal mapping (split normals are also computed if not yet present) 

        :param uvmap: Name of the UV map to use for tangent space computation 
        :type uvmap: string, (optional, never None)
        '''
        pass

    def free_tangents(self):
        '''Free tangents 

        '''
        pass

    def calc_loop_triangles(self):
        '''Calculate loop triangle tessellation (supports editmode too) 

        '''
        pass

    def calc_smooth_groups(self, use_bitflags=False):
        '''Calculate smooth groups from sharp edges 

        :param use_bitflags: Produce bitflags groups instead of simple numeric values 
        :type use_bitflags: boolean, (optional)
        '''
        pass

    def normals_split_custom_set(self, normals):
        '''Define custom split normals of this mesh (use zero-vectors to keep auto ones) 

        :param normals: Normals 
        :type normals: float multi-dimensional array of 1 * 3 items in [-1, 1]
        '''
        pass

    def normals_split_custom_set_from_vertices(self, normals):
        '''Define custom split normals of this mesh, from vertices’ normals (use zero-vectors to keep auto ones) 

        :param normals: Normals 
        :type normals: float multi-dimensional array of 1 * 3 items in [-1, 1]
        '''
        pass

    def update(self,
               calc_edges=False,
               calc_edges_loose=False,
               calc_loop_triangles=False):
        '''update 

        :param calc_edges: Calculate Edges, Force recalculation of edges 
        :type calc_edges: boolean, (optional)
        :param calc_edges_loose: Calculate Loose Edges, Calculate the loose state of each edge 
        :type calc_edges_loose: boolean, (optional)
        :param calc_loop_triangles: Calculate Triangules, Force recalculation of triangle tessellation 
        :type calc_loop_triangles: boolean, (optional)
        '''
        pass

    def update_gpu_tag(self):
        '''update_gpu_tag 

        '''
        pass

    def unit_test_compare(self, mesh=None):
        '''unit_test_compare 

        :param mesh: Mesh to compare to 
        :type mesh: Mesh, (optional)
        :rtype: string, (never None) 
        :return:  Return value, String description of result of comparison 
        '''
        pass

    def validate(self, verbose=False, clean_customdata=True):
        '''Validate geometry, return True when the mesh has had invalid geometry corrected/removed 

        :param verbose: Verbose, Output information about the errors found 
        :type verbose: boolean, (optional)
        :param clean_customdata: Clean Custom Data, Remove temp/cached custom-data layers, like e.g. normals… 
        :type clean_customdata: boolean, (optional)
        :rtype: boolean 
        :return:  Result 
        '''
        pass

    def validate_material_indices(self):
        '''Validate material indices of polygons, return True when the mesh has had invalid indices corrected (to default 0) 

        :rtype: boolean 
        :return:  Result 
        '''
        pass

    def count_selected_items(self):
        '''Return the number of selected items (vert, edge, face) 

        :rtype: int array of 3 items in [0, inf] 
        :return:  Result 
        '''
        pass

    def from_pydata(self, vertices, edges, faces):
        '''Make a mesh from a list of vertices/edges/faces Until we have a nicer way to make geometry, use this. 

        :param vertices: float triplets each representing (X, Y, Z) eg: [(0.0, 1.0, 0.5), …]. 
        :type vertices: iterable object
        :param edges: int pairs, each pair contains two indices to the vertices argument. eg: [(1, 2), …] 
        :type edges: iterable object
        :param faces: iterator of faces, each faces contains three or more indices to the vertices argument. eg: [(5, 6, 8, 9), (1, 2, 3), …] 
        :type faces: iterable object
        '''
        pass


class MeshCacheModifier:
    '''Cache Mesh '''

    cache_format = None
    '''

    :type:  enum in [‘MDD’, ‘PC2’], default ‘MDD’ 
    '''

    deform_mode = None
    '''

    :type:  enum in [‘OVERWRITE’, ‘INTEGRATE’], default ‘OVERWRITE’ 
    '''

    eval_factor = None
    '''Evaluation time in seconds 

    :type:  float in [0, 1], default 0.0 
    '''

    eval_frame = None
    '''The frame to evaluate (starting at 0) 

    :type:  float in [0, 1.04857e+06], default 0.0 
    '''

    eval_time = None
    '''Evaluation time in seconds 

    :type:  float in [0, inf], default 0.0 
    '''

    factor = None
    '''Influence of the deformation 

    :type:  float in [0, 1], default 0.0 
    '''

    filepath = None
    '''Path to external displacements file 

    :type:  string, default “”, (never None) 
    '''

    flip_axis = None
    '''

    :type:  enum set in {‘X’, ‘Y’, ‘Z’}, default {‘X’} 
    '''

    forward_axis = None
    '''

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''

    frame_scale = None
    '''Evaluation time in seconds 

    :type:  float in [0, 100], default 0.0 
    '''

    frame_start = None
    '''Add this to the start frame 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    interpolation = None
    '''

    :type:  enum in [‘NONE’, ‘LINEAR’], default ‘NONE’ 
    '''

    play_mode = None
    '''

    :type:  enum in [‘SCENE’, ‘CUSTOM’], default ‘SCENE’ 
    '''

    time_mode = None
    '''Method to control playback time 

    :type:  enum in [‘FRAME’, ‘TIME’, ‘FACTOR’], default ‘FRAME’ 
    '''

    up_axis = None
    '''

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''


class MeshDeformModifier:
    '''Mesh deformation modifier to deform with other meshes '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    is_bound = None
    '''Whether geometry has been bound to control cage 

    :type:  boolean, default False, (readonly) 
    '''

    object = None
    '''Mesh object to deform with 

    :type:  Object 
    '''

    precision = None
    '''The grid size for binding 

    :type:  int in [2, 10], default 0 
    '''

    use_dynamic_bind = None
    '''Recompute binding dynamically on top of other deformers (slower and more memory consuming) 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''


class MeshEdge:
    '''Edge in a Mesh data-block '''

    bevel_weight = None
    '''Weight used by the Bevel modifier 

    :type:  float in [-inf, inf], default 0.0 
    '''

    crease = None
    '''Weight used by the Subdivision Surface modifier for creasing 

    :type:  float in [0, 1], default 0.0 
    '''

    hide = None
    '''

    :type:  boolean, default False 
    '''

    index = None
    '''Index of this edge 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    is_loose = None
    '''Loose edge 

    :type:  boolean, default False 
    '''

    select = None
    '''

    :type:  boolean, default False 
    '''

    use_edge_sharp = None
    '''Sharp edge for the Edge Split modifier 

    :type:  boolean, default False 
    '''

    use_freestyle_mark = None
    '''Edge mark for Freestyle line rendering 

    :type:  boolean, default False 
    '''

    use_seam = None
    '''Seam edge for UV unwrapping 

    :type:  boolean, default False 
    '''

    vertices = None
    '''Vertex indices 

    :type:  int array of 2 items in [0, inf], default (0, 0) 
    '''

    key = None
    '''(readonly) '''


class MeshEdges:
    '''Collection of mesh edges '''

    def add(self, count):
        '''add 

        :param count: Count, Number of edges to add 
        :type count: int in [0, inf]
        '''
        pass


class MeshFaceMap:
    value = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''


class MeshFaceMapLayer:
    '''Per-face map index '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshFaceMap, (readonly) 
    '''

    name = None
    '''Name of face-map layer 

    :type:  string, default “”, (never None) 
    '''


class MeshFaceMapLayers:
    '''Collection of mesh face-maps '''

    active = None
    '''

    :type:  MeshFaceMapLayer, (readonly) 
    '''

    def new(self, name="Face Map"):
        '''Add a float property layer to Mesh 

        :param name: Face map name 
        :type name: string, (optional, never None)
        :rtype: MeshFaceMapLayer 
        :return:  The newly created layer 
        '''
        pass

    def remove(self, layer):
        '''Remove a face map layer 

        :param layer: The layer to remove 
        :type layer: MeshFaceMapLayer, (never None)
        '''
        pass


class MeshLoop:
    '''Loop in a Mesh data-block '''

    bitangent = None
    '''Bitangent vector of this vertex for this polygon (must be computed beforehand using calc_tangents, use it only if really needed, slower access than bitangent_sign) 

    :type:  float array of 3 items in [-1, 1], default (0.0, 0.0, 0.0), (readonly) 
    '''

    bitangent_sign = None
    '''Sign of the bitangent vector of this vertex for this polygon (must be computed beforehand using calc_tangents, bitangent = bitangent_sign * cross(normal, tangent)) 

    :type:  float in [-1, 1], default 0.0, (readonly) 
    '''

    edge_index = None
    '''Edge index 

    :type:  int in [0, inf], default 0 
    '''

    index = None
    '''Index of this loop 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    normal = None
    '''Local space unit length split normal vector of this vertex for this polygon (must be computed beforehand using calc_normals_split or calc_tangents) 

    :type:  float array of 3 items in [-1, 1], default (0.0, 0.0, 0.0) 
    '''

    tangent = None
    '''Local space unit length tangent vector of this vertex for this polygon (must be computed beforehand using calc_tangents) 

    :type:  float array of 3 items in [-1, 1], default (0.0, 0.0, 0.0), (readonly) 
    '''

    vertex_index = None
    '''Vertex index 

    :type:  int in [0, inf], default 0 
    '''


class MeshLoopColor:
    '''Vertex loop colors in a Mesh '''

    color = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''


class MeshLoopColorLayer:
    '''Layer of vertex colors in a Mesh data-block '''

    active = None
    '''Sets the layer as active for display and editing 

    :type:  boolean, default False 
    '''

    active_render = None
    '''Sets the layer as active for rendering 

    :type:  boolean, default False 
    '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshLoopColor, (readonly) 
    '''

    name = None
    '''Name of Vertex color layer 

    :type:  string, default “”, (never None) 
    '''


class MeshLoopTriangle:
    '''Tessellated triangle in a Mesh data-block '''

    area = None
    '''Area of this triangle 

    :type:  float in [0, inf], default 0.0, (readonly) 
    '''

    index = None
    '''Index of this loop triangle 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    loops = None
    '''Indices of mesh loops that make up the triangle 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0), (readonly) 
    '''

    material_index = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    normal = None
    '''Local space unit length normal vector for this triangle 

    :type:  float array of 3 items in [-1, 1], default (0.0, 0.0, 0.0), (readonly) 
    '''

    polygon_index = None
    '''Index of mesh polygon that the triangle is a part of 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    split_normals = None
    '''Local space unit length split normals vectors of the vertices of this triangle (must be computed beforehand using calc_normals_split or calc_tangents) 

    :type:  float multi-dimensional array of 3 * 3 items in [-1, 1], default ((0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0)), (readonly) 
    '''

    use_smooth = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    vertices = None
    '''Indices of triangle vertices 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0), (readonly) 
    '''

    center = None
    '''The midpoint of the face. (readonly) '''

    edge_keys = None
    '''(readonly) '''


class MeshLoopTriangles:
    '''Tessellation of mesh polygons into triangles '''

    pass


class MeshLoops:
    '''Collection of mesh loops '''

    def add(self, count):
        '''add 

        :param count: Count, Number of loops to add 
        :type count: int in [0, inf]
        '''
        pass


class MeshPaintMaskLayer:
    '''Per-vertex paint mask data '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshPaintMaskProperty, (readonly) 
    '''


class MeshPaintMaskProperty:
    '''Floating point paint mask value '''

    value = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''


class MeshPolygon:
    '''Polygon in a Mesh data-block '''

    area = None
    '''Read only area of this polygon 

    :type:  float in [0, inf], default 0.0, (readonly) 
    '''

    center = None
    '''Center of this polygon 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    hide = None
    '''

    :type:  boolean, default False 
    '''

    index = None
    '''Index of this polygon 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    loop_start = None
    '''Index of the first loop of this polygon 

    :type:  int in [0, inf], default 0 
    '''

    loop_total = None
    '''Number of loops used by this polygon 

    :type:  int in [0, inf], default 0 
    '''

    material_index = None
    '''

    :type:  int in [0, 32767], default 0 
    '''

    normal = None
    '''Local space unit length normal vector for this polygon 

    :type:  float array of 3 items in [-1, 1], default (0.0, 0.0, 0.0), (readonly) 
    '''

    select = None
    '''

    :type:  boolean, default False 
    '''

    use_freestyle_mark = None
    '''Face mark for Freestyle line rendering 

    :type:  boolean, default False 
    '''

    use_smooth = None
    '''

    :type:  boolean, default False 
    '''

    vertices = None
    '''Vertex indices 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0) 
    '''

    edge_keys = None
    '''(readonly) '''

    loop_indices = None
    '''(readonly) '''

    def flip(self):
        '''Invert winding of this polygon (flip its normal) 

        '''
        pass


class MeshPolygonFloatProperty:
    '''User defined floating point number value in a float properties layer '''

    value = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''


class MeshPolygonFloatPropertyLayer:
    '''User defined layer of floating point number values '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshPolygonFloatProperty, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''


class MeshPolygonIntProperty:
    '''User defined integer number value in an integer properties layer '''

    value = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''


class MeshPolygonIntPropertyLayer:
    '''User defined layer of integer number values '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshPolygonIntProperty, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''


class MeshPolygonStringProperty:
    '''User defined string text value in a string properties layer '''

    value = None
    '''

    :type:  string, default “”, (never None) 
    '''


class MeshPolygonStringPropertyLayer:
    '''User defined layer of string text values '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshPolygonStringProperty, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''


class MeshPolygons:
    '''Collection of mesh polygons '''

    active = None
    '''The active polygon for this mesh 

    :type:  int in [-inf, inf], default 0 
    '''

    def add(self, count):
        '''add 

        :param count: Count, Number of polygons to add 
        :type count: int in [0, inf]
        '''
        pass


class MeshSequenceCacheModifier:
    '''Cache Mesh '''

    cache_file = None
    '''

    :type:  CacheFile 
    '''

    object_path = None
    '''Path to the object in the Alembic archive used to lookup geometric data 

    :type:  string, default “”, (never None) 
    '''

    read_data = None
    '''

    :type:  enum set in {‘VERT’, ‘POLY’, ‘UV’, ‘COLOR’}, default {‘VERT’} 
    '''


class MeshSkinVertex:
    '''Per-vertex skin data for use with the Skin modifier '''

    radius = None
    '''Radius of the skin 

    :type:  float array of 2 items in [0, inf], default (0.0, 0.0) 
    '''

    use_loose = None
    '''If vertex has multiple adjacent edges, it is hulled to them directly 

    :type:  boolean, default False 
    '''

    use_root = None
    '''Vertex is a root for rotation calculations and armature generation, setting this flag does not clear other roots in the same mesh island 

    :type:  boolean, default False 
    '''


class MeshSkinVertexLayer:
    '''Per-vertex skin data for use with the Skin modifier '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshSkinVertex, (readonly) 
    '''

    name = None
    '''Name of skin layer 

    :type:  string, default “”, (never None) 
    '''


class MeshStatVis:
    distort_max = None
    '''Maximum angle to display 

    :type:  float in [0, 3.14159], default 0.5 
    '''

    distort_min = None
    '''Minimum angle to display 

    :type:  float in [0, 3.14159], default 0.5 
    '''

    overhang_axis = None
    '''

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''

    overhang_max = None
    '''Maximum angle to display 

    :type:  float in [0, 3.14159], default 0.5 
    '''

    overhang_min = None
    '''Minimum angle to display 

    :type:  float in [0, 3.14159], default 0.5 
    '''

    sharp_max = None
    '''Maximum angle to display 

    :type:  float in [-3.14159, 3.14159], default 0.5 
    '''

    sharp_min = None
    '''Minimum angle to display 

    :type:  float in [-3.14159, 3.14159], default 0.5 
    '''

    thickness_max = None
    '''Maximum for measuring thickness 

    :type:  float in [0, 1000], default 0.5 
    '''

    thickness_min = None
    '''Minimum for measuring thickness 

    :type:  float in [0, 1000], default 0.5 
    '''

    thickness_samples = None
    '''Number of samples to test per face 

    :type:  int in [1, 32], default 0 
    '''

    type = None
    '''Type of data to visualize/check 

    :type:  enum in [‘OVERHANG’, ‘THICKNESS’, ‘INTERSECT’, ‘DISTORT’, ‘SHARP’], default ‘OVERHANG’ 
    '''


class MeshUVLoop:
    pin_uv = None
    '''

    :type:  boolean, default False 
    '''

    select = None
    '''

    :type:  boolean, default False 
    '''

    select_edge = None
    '''

    :type:  boolean, default False 
    '''

    uv = None
    '''

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''


class MeshUVLoopLayer:
    active = None
    '''Set the map as active for display and editing 

    :type:  boolean, default False 
    '''

    active_clone = None
    '''Set the map as active for cloning 

    :type:  boolean, default False 
    '''

    active_render = None
    '''Set the map as active for rendering 

    :type:  boolean, default False 
    '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshUVLoop, (readonly) 
    '''

    name = None
    '''Name of UV map 

    :type:  string, default “”, (never None) 
    '''


class MeshVertex:
    '''Vertex in a Mesh data-block '''

    bevel_weight = None
    '''Weight used by the Bevel modifier ‘Only Vertices’ option 

    :type:  float in [-inf, inf], default 0.0 
    '''

    co = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    groups = None
    '''Weights for the vertex groups this vertex is member of 

    :type:  bpy_prop_collection of VertexGroupElement, (readonly) 
    '''

    hide = None
    '''

    :type:  boolean, default False 
    '''

    index = None
    '''Index of this vertex 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    normal = None
    '''Vertex Normal 

    :type:  float array of 3 items in [-1, 1], default (0.0, 0.0, 0.0) 
    '''

    select = None
    '''

    :type:  boolean, default False 
    '''

    undeformed_co = None
    '''For meshes with modifiers applied, the coordinate of the vertex with no deforming modifiers applied, as used for generated texture coordinates 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''


class MeshVertexFloatProperty:
    '''User defined floating point number value in a float properties layer '''

    value = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''


class MeshVertexFloatPropertyLayer:
    '''User defined layer of floating point number values '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshVertexFloatProperty, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''


class MeshVertexIntProperty:
    '''User defined integer number value in an integer properties layer '''

    value = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''


class MeshVertexIntPropertyLayer:
    '''User defined layer of integer number values '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshVertexIntProperty, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''


class MeshVertexStringProperty:
    '''User defined string text value in a string properties layer '''

    value = None
    '''

    :type:  string, default “”, (never None) 
    '''


class MeshVertexStringPropertyLayer:
    '''User defined layer of string text values '''

    data = None
    '''

    :type:  bpy_prop_collection of MeshVertexStringProperty, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''


class MeshVertices:
    '''Collection of mesh vertices '''

    def add(self, count):
        '''add 

        :param count: Count, Number of vertices to add 
        :type count: int in [0, inf]
        '''
        pass


class MetaBall:
    '''Metaball data-block to defined blobby surfaces '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    cycles = None
    '''Cycles mesh settings 

    :type:  CyclesMeshSettings, (readonly) 
    '''

    elements = None
    '''Meta elements 

    :type:  MetaBallElements bpy_prop_collection of MetaElement, (readonly) 
    '''

    is_editmode = None
    '''True when used in editmode 

    :type:  boolean, default False, (readonly) 
    '''

    materials = None
    '''

    :type:  IDMaterials bpy_prop_collection of Material, (readonly) 
    '''

    render_resolution = None
    '''Polygonization resolution in rendering 

    :type:  float in [0.005, 10000], default 0.0 
    '''

    resolution = None
    '''Polygonization resolution in the 3D viewport 

    :type:  float in [0.005, 10000], default 0.0 
    '''

    texspace_location = None
    '''Texture space location 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    texspace_size = None
    '''Texture space size 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    threshold = None
    '''Influence of meta elements 

    :type:  float in [0, 5], default 0.0 
    '''

    update_method = None
    '''Metaball edit update behavior 

    :type:  enum in [‘UPDATE_ALWAYS’, ‘HALFRES’, ‘FAST’, ‘NEVER’], default ‘UPDATE_ALWAYS’ 
    '''

    use_auto_texspace = None
    '''Adjust active object’s texture space automatically when transforming object 

    :type:  boolean, default False 
    '''

    def transform(self, matrix):
        '''Transform meta elements by a matrix 

        :param matrix: Matrix 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf]
        '''
        pass

    def update_gpu_tag(self):
        '''update_gpu_tag 

        '''
        pass


class MetaBallElements:
    '''Collection of metaball elements '''

    active = None
    '''Last selected element 

    :type:  MetaElement, (readonly) 
    '''

    def new(self, type='BALL'):
        '''Add a new element to the metaball 

        :param type: type for the new meta-element 
        :type type: enum in ['BALL', 'CAPSULE', 'PLANE', 'ELLIPSOID', 'CUBE'], (optional)
        :rtype: MetaElement 
        :return:  The newly created meta-element 
        '''
        pass

    def remove(self, element):
        '''Remove an element from the metaball 

        :param element: The element to remove 
        :type element: MetaElement, (never None)
        '''
        pass

    def clear(self):
        '''Remove all elements from the metaball 

        '''
        pass


class MetaElement:
    '''Blobby element in a Metaball data-block '''

    co = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    hide = None
    '''Hide element 

    :type:  boolean, default False 
    '''

    radius = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    rotation = None
    '''Normalized quaternion rotation 

    :type:  float array of 4 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    size_x = None
    '''Size of element, use of components depends on element type 

    :type:  float in [0, 20], default 0.0 
    '''

    size_y = None
    '''Size of element, use of components depends on element type 

    :type:  float in [0, 20], default 0.0 
    '''

    size_z = None
    '''Size of element, use of components depends on element type 

    :type:  float in [0, 20], default 0.0 
    '''

    stiffness = None
    '''Stiffness defines how much of the element to fill 

    :type:  float in [0, 10], default 0.0 
    '''

    type = None
    '''Metaball types 

    :type:  enum in [‘BALL’, ‘CAPSULE’, ‘PLANE’, ‘ELLIPSOID’, ‘CUBE’], default ‘BALL’ 
    '''

    use_negative = None
    '''Set metaball as negative one 

    :type:  boolean, default False 
    '''


class MetaSequence:
    '''Sequence strip to group other strips as a single sequence strip '''

    alpha_mode = None
    '''Representation of alpha information in the RGBA pixels 

    :type:  enum in [‘STRAIGHT’, ‘PREMUL’], default ‘STRAIGHT’ 
    '''

    animation_offset_end = None
    '''Animation end offset (trim end) 

    :type:  int in [0, inf], default 0 
    '''

    animation_offset_start = None
    '''Animation start offset (trim start) 

    :type:  int in [0, inf], default 0 
    '''

    color_multiply = None
    '''

    :type:  float in [0, 20], default 1.0 
    '''

    color_saturation = None
    '''Adjust the intensity of the input’s color 

    :type:  float in [0, 20], default 1.0 
    '''

    crop = None
    '''

    :type:  SequenceCrop, (readonly) 
    '''

    proxy = None
    '''

    :type:  SequenceProxy, (readonly) 
    '''

    sequences = None
    '''

    :type:  bpy_prop_collection of Sequence, (readonly) 
    '''

    strobe = None
    '''Only display every nth frame 

    :type:  float in [1, 30], default 0.0 
    '''

    transform = None
    '''

    :type:  SequenceTransform, (readonly) 
    '''

    use_crop = None
    '''Crop image before processing 

    :type:  boolean, default False 
    '''

    use_deinterlace = None
    '''Remove fields from video movies 

    :type:  boolean, default False 
    '''

    use_flip_x = None
    '''Flip on the X axis 

    :type:  boolean, default False 
    '''

    use_flip_y = None
    '''Flip on the Y axis 

    :type:  boolean, default False 
    '''

    use_float = None
    '''Convert input to float data 

    :type:  boolean, default False 
    '''

    use_proxy = None
    '''Use a preview proxy and/or timecode index for this strip 

    :type:  boolean, default False 
    '''

    use_reverse_frames = None
    '''Reverse frame order 

    :type:  boolean, default False 
    '''

    use_translation = None
    '''Translate image before processing 

    :type:  boolean, default False 
    '''


class MirrorGpencilModifier:
    '''Change stroke using lattice to deform modifier '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    object = None
    '''Object used as center 

    :type:  Object 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    use_clip = None
    '''Clip points 

    :type:  boolean, default False 
    '''

    x_axis = None
    '''Mirror this axis 

    :type:  boolean, default False 
    '''

    y_axis = None
    '''Mirror this axis 

    :type:  boolean, default False 
    '''

    z_axis = None
    '''Mirror this axis 

    :type:  boolean, default False 
    '''


class MirrorModifier:
    '''Mirroring modifier '''

    merge_threshold = None
    '''Distance within which mirrored vertices are merged 

    :type:  float in [0, inf], default 0.0 
    '''

    mirror_object = None
    '''Object to use as mirror 

    :type:  Object 
    '''

    mirror_offset_u = None
    '''Amount to offset mirrored UVs flipping point from the 0.5 on the U axis 

    :type:  float in [-1, 1], default 0.0 
    '''

    mirror_offset_v = None
    '''Amount to offset mirrored UVs flipping point from the 0.5 point on the V axis 

    :type:  float in [-1, 1], default 0.0 
    '''

    offset_u = None
    '''Mirrored UV offset on the U axis 

    :type:  float in [-10000, 10000], default 0.0 
    '''

    offset_v = None
    '''Mirrored UV offset on the V axis 

    :type:  float in [-10000, 10000], default 0.0 
    '''

    use_axis = None
    '''Enable axis mirror 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    use_bisect_axis = None
    '''Cuts the mesh across the mirror plane 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    use_bisect_flip_axis = None
    '''Flips the direction of the slice 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    use_clip = None
    '''Prevent vertices from going through the mirror during transform 

    :type:  boolean, default False 
    '''

    use_mirror_merge = None
    '''Merge vertices within the merge threshold 

    :type:  boolean, default False 
    '''

    use_mirror_u = None
    '''Mirror the U texture coordinate around the flip offset point 

    :type:  boolean, default False 
    '''

    use_mirror_v = None
    '''Mirror the V texture coordinate around the flip offset point 

    :type:  boolean, default False 
    '''

    use_mirror_vertex_groups = None
    '''Mirror vertex groups (e.g. .R->.L) 

    :type:  boolean, default False 
    '''


class Modifier:
    '''Modifier affecting the geometry data of an object '''

    name = None
    '''Modifier name 

    :type:  string, default “”, (never None) 
    '''

    show_expanded = None
    '''Set modifier expanded in the user interface 

    :type:  boolean, default False 
    '''

    show_in_editmode = None
    '''Display modifier in Edit mode 

    :type:  boolean, default False 
    '''

    show_on_cage = None
    '''Adjust edit cage to modifier result 

    :type:  boolean, default False 
    '''

    show_render = None
    '''Use modifier during render 

    :type:  boolean, default False 
    '''

    show_viewport = None
    '''Display modifier in viewport 

    :type:  boolean, default False 
    '''

    type = None
    '''

    :type:  enum in [‘DATA_TRANSFER’, ‘MESH_CACHE’, ‘MESH_SEQUENCE_CACHE’, ‘NORMAL_EDIT’, ‘WEIGHTED_NORMAL’, ‘UV_PROJECT’, ‘UV_WARP’, ‘VERTEX_WEIGHT_EDIT’, ‘VERTEX_WEIGHT_MIX’, ‘VERTEX_WEIGHT_PROXIMITY’, ‘ARRAY’, ‘BEVEL’, ‘BOOLEAN’, ‘BUILD’, ‘DECIMATE’, ‘EDGE_SPLIT’, ‘MASK’, ‘MIRROR’, ‘MULTIRES’, ‘REMESH’, ‘SCREW’, ‘SKIN’, ‘SOLIDIFY’, ‘SUBSURF’, ‘TRIANGULATE’, ‘WIREFRAME’, ‘ARMATURE’, ‘CAST’, ‘CURVE’, ‘DISPLACE’, ‘HOOK’, ‘LAPLACIANDEFORM’, ‘LATTICE’, ‘MESH_DEFORM’, ‘SHRINKWRAP’, ‘SIMPLE_DEFORM’, ‘SMOOTH’, ‘CORRECTIVE_SMOOTH’, ‘LAPLACIANSMOOTH’, ‘SURFACE_DEFORM’, ‘WARP’, ‘WAVE’, ‘CLOTH’, ‘COLLISION’, ‘DYNAMIC_PAINT’, ‘EXPLODE’, ‘FLUID_SIMULATION’, ‘OCEAN’, ‘PARTICLE_INSTANCE’, ‘PARTICLE_SYSTEM’, ‘SMOKE’, ‘SOFT_BODY’, ‘SURFACE’], default ‘DATA_TRANSFER’, (readonly) 
    '''

    use_apply_on_spline = None
    '''Apply this and all preceding deformation modifiers on splines’ points rather than on filled curve/surface 

    :type:  boolean, default False 
    '''


class MotionPath:
    '''Cache of the worldspace positions of an element over a frame range '''

    color = None
    '''Custom color for motion path 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    frame_end = None
    '''End frame of the stored range 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    frame_start = None
    '''Starting frame of the stored range 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    is_modified = None
    '''Path is being edited 

    :type:  boolean, default False 
    '''

    length = None
    '''Number of frames cached 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    line_thickness = None
    '''Line thickness for drawing path 

    :type:  int in [1, 6], default 0 
    '''

    lines = None
    '''Draw straight lines between keyframe points 

    :type:  boolean, default False 
    '''

    points = None
    '''Cached positions per frame 

    :type:  bpy_prop_collection of MotionPathVert, (readonly) 
    '''

    use_bone_head = None
    '''For PoseBone paths, use the bone head location when calculating this path 

    :type:  boolean, default False, (readonly) 
    '''

    use_custom_color = None
    '''Use custom color for this motion path 

    :type:  boolean, default False 
    '''


class MotionPathVert:
    '''Cached location on path '''

    co = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    select = None
    '''Path point is selected for editing 

    :type:  boolean, default False 
    '''


class MovieClip:
    '''MovieClip data-block referencing an external movie file '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    colorspace_settings = None
    '''Input color space settings 

    :type:  ColorManagedInputColorspaceSettings, (readonly) 
    '''

    display_aspect = None
    '''Display Aspect for this clip, does not affect rendering 

    :type:  float array of 2 items in [0.1, inf], default (0.0, 0.0) 
    '''

    filepath = None
    '''Filename of the movie or sequence file 

    :type:  string, default “”, (never None) 
    '''

    fps = None
    '''Detected frame rate of the movie clip in frames per second 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    frame_duration = None
    '''Detected duration of movie clip in frames 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    frame_offset = None
    '''Offset of footage first frame relative to it’s file name (affects only how footage is loading, does not change data associated with a clip) 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_start = None
    '''Global scene frame number at which this movie starts playing (affects all data associated with a clip) 

    :type:  int in [-inf, inf], default 0 
    '''

    grease_pencil = None
    '''Grease pencil data for this movie clip 

    :type:  GreasePencil 
    '''

    proxy = None
    '''

    :type:  MovieClipProxy, (readonly) 
    '''

    size = None
    '''Width and height in pixels, zero when image data cant be loaded 

    :type:  int array of 2 items in [-inf, inf], default (0, 0), (readonly) 
    '''

    source = None
    '''Where the clip comes from 

    :type:  enum in [‘SEQUENCE’, ‘MOVIE’], default ‘SEQUENCE’, (readonly) 
    '''

    tracking = None
    '''

    :type:  MovieTracking, (readonly) 
    '''

    use_proxy = None
    '''Use a preview proxy and/or timecode index for this clip 

    :type:  boolean, default False 
    '''

    use_proxy_custom_directory = None
    '''Create proxy images in a custom directory (default is movie location) 

    :type:  boolean, default False 
    '''

    def metadata(self):
        '''Retrieve metadata of the movie file 

        :rtype: IDPropertyWrapPtr 
        :return:  Dict-like object containing the metadata 
        '''
        pass


class MovieClipProxy:
    '''Proxy parameters for a movie clip '''

    build_100 = None
    '''Build proxy resolution 100% of the original footage dimension 

    :type:  boolean, default False 
    '''

    build_25 = None
    '''Build proxy resolution 25% of the original footage dimension 

    :type:  boolean, default False 
    '''

    build_50 = None
    '''Build proxy resolution 50% of the original footage dimension 

    :type:  boolean, default False 
    '''

    build_75 = None
    '''Build proxy resolution 75% of the original footage dimension 

    :type:  boolean, default False 
    '''

    build_free_run = None
    '''Build free run time code index 

    :type:  boolean, default False 
    '''

    build_free_run_rec_date = None
    '''Build free run time code index using Record Date/Time 

    :type:  boolean, default False 
    '''

    build_record_run = None
    '''Build record run time code index 

    :type:  boolean, default False 
    '''

    build_undistorted_100 = None
    '''Build proxy resolution 100% of the original undistorted footage dimension 

    :type:  boolean, default False 
    '''

    build_undistorted_25 = None
    '''Build proxy resolution 25% of the original undistorted footage dimension 

    :type:  boolean, default False 
    '''

    build_undistorted_50 = None
    '''Build proxy resolution 50% of the original undistorted footage dimension 

    :type:  boolean, default False 
    '''

    build_undistorted_75 = None
    '''Build proxy resolution 75% of the original undistorted footage dimension 

    :type:  boolean, default False 
    '''

    directory = None
    '''Location to store the proxy files 

    :type:  string, default “”, (never None) 
    '''

    quality = None
    '''JPEG quality of proxy images 

    :type:  int in [0, 32767], default 0 
    '''

    timecode = None
    '''

    :type:  enum in [‘NONE’, ‘RECORD_RUN’, ‘FREE_RUN’, ‘FREE_RUN_REC_DATE’, ‘FREE_RUN_NO_GAPS’], default ‘NONE’ 
    '''


class MovieClipScopes:
    '''Scopes for statistical view of a movie clip '''

    pass


class MovieClipSequence:
    '''Sequence strip to load a video from the clip editor '''

    alpha_mode = None
    '''Representation of alpha information in the RGBA pixels 

    :type:  enum in [‘STRAIGHT’, ‘PREMUL’], default ‘STRAIGHT’ 
    '''

    animation_offset_end = None
    '''Animation end offset (trim end) 

    :type:  int in [0, inf], default 0 
    '''

    animation_offset_start = None
    '''Animation start offset (trim start) 

    :type:  int in [0, inf], default 0 
    '''

    color_multiply = None
    '''

    :type:  float in [0, 20], default 1.0 
    '''

    color_saturation = None
    '''Adjust the intensity of the input’s color 

    :type:  float in [0, 20], default 1.0 
    '''

    crop = None
    '''

    :type:  SequenceCrop, (readonly) 
    '''

    fps = None
    '''Frames per second 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    stabilize2d = None
    '''Use the 2D stabilized version of the clip 

    :type:  boolean, default False 
    '''

    strobe = None
    '''Only display every nth frame 

    :type:  float in [1, 30], default 0.0 
    '''

    transform = None
    '''

    :type:  SequenceTransform, (readonly) 
    '''

    undistort = None
    '''Use the undistorted version of the clip 

    :type:  boolean, default False 
    '''

    use_crop = None
    '''Crop image before processing 

    :type:  boolean, default False 
    '''

    use_deinterlace = None
    '''Remove fields from video movies 

    :type:  boolean, default False 
    '''

    use_flip_x = None
    '''Flip on the X axis 

    :type:  boolean, default False 
    '''

    use_flip_y = None
    '''Flip on the Y axis 

    :type:  boolean, default False 
    '''

    use_float = None
    '''Convert input to float data 

    :type:  boolean, default False 
    '''

    use_reverse_frames = None
    '''Reverse frame order 

    :type:  boolean, default False 
    '''

    use_translation = None
    '''Translate image before processing 

    :type:  boolean, default False 
    '''


class MovieClipUser:
    '''Parameters defining how a MovieClip data-block is used by another data-block '''

    frame_current = None
    '''Current frame number in movie or image sequence 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    proxy_render_size = None
    '''Draw preview using full resolution or different proxy resolutions 

    :type:  enum in [‘PROXY_25’, ‘PROXY_50’, ‘PROXY_75’, ‘PROXY_100’, ‘FULL’], default ‘FULL’ 
    '''

    use_render_undistorted = None
    '''Render preview using undistorted proxy 

    :type:  boolean, default False 
    '''


class MovieReconstructedCamera:
    '''Match-moving reconstructed camera data from tracker '''

    average_error = None
    '''Average error of reconstruction 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    frame = None
    '''Frame number marker is keyframed on 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    matrix = None
    '''Worldspace transformation matrix 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)), (readonly) 
    '''


class MovieSequence:
    '''Sequence strip to load a video '''

    alpha_mode = None
    '''Representation of alpha information in the RGBA pixels 

    :type:  enum in [‘STRAIGHT’, ‘PREMUL’], default ‘STRAIGHT’ 
    '''

    animation_offset_end = None
    '''Animation end offset (trim end) 

    :type:  int in [0, inf], default 0 
    '''

    animation_offset_start = None
    '''Animation start offset (trim start) 

    :type:  int in [0, inf], default 0 
    '''

    color_multiply = None
    '''

    :type:  float in [0, 20], default 1.0 
    '''

    color_saturation = None
    '''Adjust the intensity of the input’s color 

    :type:  float in [0, 20], default 1.0 
    '''

    colorspace_settings = None
    '''Input color space settings 

    :type:  ColorManagedInputColorspaceSettings, (readonly) 
    '''

    crop = None
    '''

    :type:  SequenceCrop, (readonly) 
    '''

    elements = None
    '''

    :type:  bpy_prop_collection of SequenceElement, (readonly) 
    '''

    filepath = None
    '''

    :type:  string, default “”, (never None) 
    '''

    fps = None
    '''Frames per second 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    mpeg_preseek = None
    '''For MPEG movies, preseek this many frames 

    :type:  int in [0, 50], default 0 
    '''

    proxy = None
    '''

    :type:  SequenceProxy, (readonly) 
    '''

    stereo_3d_format = None
    '''Settings for stereo 3d 

    :type:  Stereo3dFormat, (readonly, never None) 
    '''

    stream_index = None
    '''For files with several movie streams, use the stream with the given index 

    :type:  int in [0, 20], default 0 
    '''

    strobe = None
    '''Only display every nth frame 

    :type:  float in [1, 30], default 0.0 
    '''

    transform = None
    '''

    :type:  SequenceTransform, (readonly) 
    '''

    use_crop = None
    '''Crop image before processing 

    :type:  boolean, default False 
    '''

    use_deinterlace = None
    '''Remove fields from video movies 

    :type:  boolean, default False 
    '''

    use_flip_x = None
    '''Flip on the X axis 

    :type:  boolean, default False 
    '''

    use_flip_y = None
    '''Flip on the Y axis 

    :type:  boolean, default False 
    '''

    use_float = None
    '''Convert input to float data 

    :type:  boolean, default False 
    '''

    use_multiview = None
    '''Use Multiple Views (when available) 

    :type:  boolean, default False 
    '''

    use_proxy = None
    '''Use a preview proxy and/or timecode index for this strip 

    :type:  boolean, default False 
    '''

    use_reverse_frames = None
    '''Reverse frame order 

    :type:  boolean, default False 
    '''

    use_translation = None
    '''Translate image before processing 

    :type:  boolean, default False 
    '''

    views_format = None
    '''Mode to load movie views 

    :type:  enum in [‘INDIVIDUAL’, ‘STEREO_3D’], default ‘INDIVIDUAL’ 
    '''

    def metadata(self):
        '''Retrieve metadata of the movie file 

        :rtype: IDPropertyWrapPtr 
        :return:  Dict-like object containing the metadata 
        '''
        pass


class MovieTracking:
    '''Match-moving data for tracking '''

    active_object_index = None
    '''Index of active object 

    :type:  int in [-inf, inf], default 0 
    '''

    camera = None
    '''

    :type:  MovieTrackingCamera, (readonly) 
    '''

    dopesheet = None
    '''

    :type:  MovieTrackingDopesheet, (readonly) 
    '''

    objects = None
    '''Collection of objects in this tracking data object 

    :type:  MovieTrackingObjects bpy_prop_collection of MovieTrackingObject, (readonly) 
    '''

    plane_tracks = None
    '''Collection of plane tracks in this tracking data object 

    :type:  MovieTrackingPlaneTracks bpy_prop_collection of MovieTrackingPlaneTrack, (readonly) 
    '''

    reconstruction = None
    '''

    :type:  MovieTrackingReconstruction, (readonly) 
    '''

    settings = None
    '''

    :type:  MovieTrackingSettings, (readonly) 
    '''

    stabilization = None
    '''

    :type:  MovieTrackingStabilization, (readonly) 
    '''

    tracks = None
    '''Collection of tracks in this tracking data object 

    :type:  MovieTrackingTracks bpy_prop_collection of MovieTrackingTrack, (readonly) 
    '''


class MovieTrackingCamera:
    '''Match-moving camera data for tracking '''

    distortion_model = None
    '''Distortion model used for camera lenses 

    :type:  enum in [‘POLYNOMIAL’, ‘DIVISION’], default ‘POLYNOMIAL’ 
    '''

    division_k1 = None
    '''First coefficient of second order division distortion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    division_k2 = None
    '''First coefficient of second order division distortion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    focal_length = None
    '''Camera’s focal length 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    focal_length_pixels = None
    '''Camera’s focal length 

    :type:  float in [0, inf], default 0.0 
    '''

    k1 = None
    '''First coefficient of third order polynomial radial distortion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    k2 = None
    '''Second coefficient of third order polynomial radial distortion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    k3 = None
    '''Third coefficient of third order polynomial radial distortion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    pixel_aspect = None
    '''Pixel aspect ratio 

    :type:  float in [0.1, inf], default 1.0 
    '''

    principal = None
    '''Optical center of lens 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    sensor_width = None
    '''Width of CCD sensor in millimeters 

    :type:  float in [0, 500], default 0.0 
    '''

    units = None
    '''Units used for camera focal length 

    :type:  enum in [‘PIXELS’, ‘MILLIMETERS’], default ‘PIXELS’ 
    '''


class MovieTrackingDopesheet:
    '''Match-moving dopesheet data '''

    show_hidden = None
    '''Include channels from objects/bone that aren’t visible 

    :type:  boolean, default False 
    '''

    show_only_selected = None
    '''Only include channels relating to selected objects and data 

    :type:  boolean, default False 
    '''

    sort_method = None
    '''Method to be used to sort channels in dopesheet view 

    :type:  enum in [‘NAME’, ‘LONGEST’, ‘TOTAL’, ‘AVERAGE_ERROR’], default ‘NAME’ 
    '''

    use_invert_sort = None
    '''Invert sort order of dopesheet channels 

    :type:  boolean, default False 
    '''


class MovieTrackingMarker:
    '''Match-moving marker data for tracking '''

    co = None
    '''Marker position at frame in normalized coordinates 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    frame = None
    '''Frame number marker is keyframed on 

    :type:  int in [-inf, inf], default 0 
    '''

    is_keyed = None
    '''Whether the position of the marker is keyframed or tracked 

    :type:  boolean, default False 
    '''

    mute = None
    '''Is marker muted for current frame 

    :type:  boolean, default False 
    '''

    pattern_bound_box = None
    '''Pattern area bounding box in normalized coordinates 

    :type:  float multi-dimensional array of 2 * 2 items in [-inf, inf], default ((0.0, 0.0), (0.0, 0.0)), (readonly) 
    '''

    pattern_corners = None
    '''Array of coordinates which represents pattern’s corners in normalized coordinates relative to marker position 

    :type:  float multi-dimensional array of 4 * 2 items in [-inf, inf], default ((0.0, 0.0), (0.0, 0.0), (0.0, 0.0), (0.0, 0.0)) 
    '''

    search_max = None
    '''Right-bottom corner of search area in normalized coordinates relative to marker position 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    search_min = None
    '''Left-bottom corner of search area in normalized coordinates relative to marker position 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''


class MovieTrackingMarkers:
    '''Collection of markers for movie tracking track '''

    def find_frame(self, frame, exact=True):
        '''Get marker for specified frame 

        :param frame: Frame, Frame number to find marker for 
        :type frame: int in [0, 1048574]
        :param exact: Exact, Get marker at exact frame number rather than get estimated marker 
        :type exact: boolean, (optional)
        :rtype: MovieTrackingMarker 
        :return:  Marker for specified frame 
        '''
        pass

    def insert_frame(self, frame, co=(0.0, 0.0)):
        '''Insert a new marker at the specified frame 

        :param frame: Frame, Frame number to insert marker to 
        :type frame: int in [0, 1048574]
        :param co: Coordinate, Place new marker at the given frame using specified in normalized space coordinates 
        :type co: float array of 2 items in [-1, 1], (optional)
        :rtype: MovieTrackingMarker 
        :return:  Newly created marker 
        '''
        pass

    def delete_frame(self, frame):
        '''Delete marker at specified frame 

        :param frame: Frame, Frame number to delete marker from 
        :type frame: int in [0, 1048574]
        '''
        pass


class MovieTrackingObject:
    '''Match-moving object tracking and reconstruction data '''

    is_camera = None
    '''Object is used for camera tracking 

    :type:  boolean, default False, (readonly) 
    '''

    keyframe_a = None
    '''First keyframe used for reconstruction initialization 

    :type:  int in [-inf, inf], default 0 
    '''

    keyframe_b = None
    '''Second keyframe used for reconstruction initialization 

    :type:  int in [-inf, inf], default 0 
    '''

    name = None
    '''Unique name of object 

    :type:  string, default “”, (never None) 
    '''

    plane_tracks = None
    '''Collection of plane tracks in this tracking data object 

    :type:  MovieTrackingObjectPlaneTracks bpy_prop_collection of MovieTrackingPlaneTrack, (readonly) 
    '''

    reconstruction = None
    '''

    :type:  MovieTrackingReconstruction, (readonly) 
    '''

    scale = None
    '''Scale of object solution in camera space 

    :type:  float in [0.0001, 10000], default 1.0 
    '''

    tracks = None
    '''Collection of tracks in this tracking data object 

    :type:  MovieTrackingObjectTracks bpy_prop_collection of MovieTrackingTrack, (readonly) 
    '''


class MovieTrackingObjectPlaneTracks:
    '''Collection of tracking plane tracks '''

    active = None
    '''Active track in this tracking data object 

    :type:  MovieTrackingTrack 
    '''


class MovieTrackingObjectTracks:
    '''Collection of movie tracking tracks '''

    active = None
    '''Active track in this tracking data object 

    :type:  MovieTrackingTrack 
    '''

    def new(self, name="", frame=1):
        '''create new motion track in this movie clip 

        :param name: Name of new track 
        :type name: string, (optional, never None)
        :param frame: Frame, Frame number to add tracks on 
        :type frame: int in [0, 1048574], (optional)
        :rtype: MovieTrackingTrack 
        :return:  Newly created track 
        '''
        pass


class MovieTrackingObjects:
    '''Collection of movie tracking objects '''

    active = None
    '''Active object in this tracking data object 

    :type:  MovieTrackingObject 
    '''

    def new(self, name):
        '''Add tracking object to this movie clip 

        :param name: Name of new object 
        :type name: string, (never None)
        :rtype: MovieTrackingObject 
        :return:  New motion tracking object 
        '''
        pass

    def remove(self, object):
        '''Remove tracking object from this movie clip 

        :param object: Motion tracking object to be removed 
        :type object: MovieTrackingObject, (never None)
        '''
        pass


class MovieTrackingPlaneMarker:
    '''Match-moving plane marker data for tracking '''

    corners = None
    '''Array of coordinates which represents UI rectangle corners in frame normalized coordinates 

    :type:  float multi-dimensional array of 4 * 2 items in [-inf, inf], default ((0.0, 0.0), (0.0, 0.0), (0.0, 0.0), (0.0, 0.0)) 
    '''

    frame = None
    '''Frame number marker is keyframed on 

    :type:  int in [-inf, inf], default 0 
    '''

    mute = None
    '''Is marker muted for current frame 

    :type:  boolean, default False 
    '''


class MovieTrackingPlaneMarkers:
    '''Collection of markers for movie tracking plane track '''

    def find_frame(self, frame, exact=True):
        '''Get plane marker for specified frame 

        :param frame: Frame, Frame number to find marker for 
        :type frame: int in [0, 1048574]
        :param exact: Exact, Get plane marker at exact frame number rather than get estimated marker 
        :type exact: boolean, (optional)
        :rtype: MovieTrackingPlaneMarker 
        :return:  Plane marker for specified frame 
        '''
        pass

    def insert_frame(self, frame):
        '''Insert a new plane marker at the specified frame 

        :param frame: Frame, Frame number to insert marker to 
        :type frame: int in [0, 1048574]
        :rtype: MovieTrackingPlaneMarker 
        :return:  Newly created plane marker 
        '''
        pass

    def delete_frame(self, frame):
        '''Delete plane marker at specified frame 

        :param frame: Frame, Frame number to delete plane marker from 
        :type frame: int in [0, 1048574]
        '''
        pass


class MovieTrackingPlaneTrack:
    '''Match-moving plane track data for tracking '''

    image = None
    '''Image displayed in the track during editing in clip editor 

    :type:  Image 
    '''

    image_opacity = None
    '''Opacity of the image 

    :type:  float in [0, 1], default 0.0 
    '''

    markers = None
    '''Collection of markers in track 

    :type:  MovieTrackingPlaneMarkers bpy_prop_collection of MovieTrackingPlaneMarker, (readonly) 
    '''

    name = None
    '''Unique name of track 

    :type:  string, default “”, (never None) 
    '''

    select = None
    '''Plane track is selected 

    :type:  boolean, default False 
    '''

    use_auto_keying = None
    '''Automatic keyframe insertion when moving plane corners 

    :type:  boolean, default False 
    '''


class MovieTrackingPlaneTracks:
    '''Collection of movie tracking plane tracks '''

    active = None
    '''Active plane track in this tracking data object 

    :type:  MovieTrackingPlaneTrack 
    '''


class MovieTrackingReconstructedCameras:
    '''Collection of solved cameras '''

    def find_frame(self, frame=1):
        '''Find a reconstructed camera for a give frame number 

        :param frame: Frame, Frame number to find camera for 
        :type frame: int in [0, 1048574], (optional)
        :rtype: MovieReconstructedCamera 
        :return:  Camera for a given frame 
        '''
        pass

    def matrix_from_frame(self, frame=1):
        '''Return interpolated camera matrix for a given frame 

        :param frame: Frame, Frame number to find camera for 
        :type frame: int in [0, 1048574], (optional)
        :rtype: float multi-dimensional array of 4 * 4 items in [-inf, inf] 
        :return:  Matrix, Interpolated camera matrix for a given frame 
        '''
        pass


class MovieTrackingReconstruction:
    '''Match-moving reconstruction data from tracker '''

    average_error = None
    '''Average error of reconstruction 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    cameras = None
    '''Collection of solved cameras 

    :type:  MovieTrackingReconstructedCameras bpy_prop_collection of MovieReconstructedCamera, (readonly) 
    '''

    is_valid = None
    '''Is tracking data contains valid reconstruction information 

    :type:  boolean, default False, (readonly) 
    '''


class MovieTrackingSettings:
    '''Match moving settings '''

    clean_action = None
    '''Cleanup action to execute 

    :type:  enum in [‘SELECT’, ‘DELETE_TRACK’, ‘DELETE_SEGMENTS’], default ‘SELECT’ 
    '''

    clean_error = None
    '''Effect on tracks which have a larger re-projection error 

    :type:  float in [0, inf], default 0.0 
    '''

    clean_frames = None
    '''Effect on tracks which are tracked less than the specified amount of frames 

    :type:  int in [0, inf], default 0 
    '''

    default_correlation_min = None
    '''Default minimum value of correlation between matched pattern and reference that is still treated as successful tracking 

    :type:  float in [0, 1], default 0.0 
    '''

    default_frames_limit = None
    '''Every tracking cycle, this number of frames are tracked 

    :type:  int in [0, 32767], default 0 
    '''

    default_margin = None
    '''Default distance from image boundary at which marker stops tracking 

    :type:  int in [0, 300], default 0 
    '''

    default_motion_model = None
    '''Default motion model to use for tracking 

    :type:  enum in [‘Perspective’, ‘Affine’, ‘LocRotScale’, ‘LocScale’, ‘LocRot’, ‘Loc’], default ‘Loc’ 
    '''

    default_pattern_match = None
    '''Track pattern from given frame when tracking marker to next frame 

    :type:  enum in [‘KEYFRAME’, ‘PREV_FRAME’], default ‘KEYFRAME’ 
    '''

    default_pattern_size = None
    '''Size of pattern area for newly created tracks 

    :type:  int in [5, 1000], default 0 
    '''

    default_search_size = None
    '''Size of search area for newly created tracks 

    :type:  int in [5, 1000], default 0 
    '''

    default_weight = None
    '''Influence of newly created track on a final solution 

    :type:  float in [0, 1], default 0.0 
    '''

    distance = None
    '''Distance between two bundles used for scene scaling 

    :type:  float in [-inf, inf], default 1.0 
    '''

    object_distance = None
    '''Distance between two bundles used for object scaling 

    :type:  float in [0.001, 10000], default 1.0 
    '''

    refine_intrinsics = None
    '''Refine intrinsics during camera solving 

    :type:  enum in [‘NONE’, ‘FOCAL_LENGTH’, ‘FOCAL_LENGTH_RADIAL_K1’, ‘FOCAL_LENGTH_RADIAL_K1_K2’, ‘FOCAL_LENGTH_PRINCIPAL_POINT_RADIAL_K1_K2’, ‘FOCAL_LENGTH_PRINCIPAL_POINT’, ‘RADIAL_K1_K2’], default ‘NONE’ 
    '''

    show_default_expanded = None
    '''Show default options expanded in the user interface 

    :type:  boolean, default False 
    '''

    show_extra_expanded = None
    '''Show extra options expanded in the user interface 

    :type:  boolean, default False 
    '''

    speed = None
    '''Limit speed of tracking to make visual feedback easier (this does not affect the tracking quality) 

    :type:  enum in [‘FASTEST’, ‘DOUBLE’, ‘REALTIME’, ‘HALF’, ‘QUARTER’], default ‘FASTEST’ 
    '''

    use_default_blue_channel = None
    '''Use blue channel from footage for tracking 

    :type:  boolean, default False 
    '''

    use_default_brute = None
    '''Use a brute-force translation-only initialization when tracking 

    :type:  boolean, default False 
    '''

    use_default_green_channel = None
    '''Use green channel from footage for tracking 

    :type:  boolean, default False 
    '''

    use_default_mask = None
    '''Use a grease pencil data-block as a mask to use only specified areas of pattern when tracking 

    :type:  boolean, default False 
    '''

    use_default_normalization = None
    '''Normalize light intensities while tracking (slower) 

    :type:  boolean, default False 
    '''

    use_default_red_channel = None
    '''Use red channel from footage for tracking 

    :type:  boolean, default False 
    '''

    use_keyframe_selection = None
    '''Automatically select keyframes when solving camera/object motion 

    :type:  boolean, default False 
    '''

    use_tripod_solver = None
    '''Use special solver to track a stable camera position, such as a tripod 

    :type:  boolean, default False 
    '''


class MovieTrackingStabilization:
    '''2D stabilization based on tracking markers '''

    active_rotation_track_index = None
    '''Index of active track in rotation stabilization tracks list 

    :type:  int in [-inf, inf], default 0 
    '''

    active_track_index = None
    '''Index of active track in translation stabilization tracks list 

    :type:  int in [-inf, inf], default 0 
    '''

    anchor_frame = None
    '''Reference point to anchor stabilization (other frames will be adjusted relative to this frame’s position) 

    :type:  int in [0, 1048574], default 0 
    '''

    filter_type = None
    '''Interpolation to use for sub-pixel shifts and rotations due to stabilization 

    :type:  enum in [‘NEAREST’, ‘BILINEAR’, ‘BICUBIC’], default ‘NEAREST’ 
    '''

    influence_location = None
    '''Influence of stabilization algorithm on footage location 

    :type:  float in [0, 1], default 0.0 
    '''

    influence_rotation = None
    '''Influence of stabilization algorithm on footage rotation 

    :type:  float in [0, 1], default 0.0 
    '''

    influence_scale = None
    '''Influence of stabilization algorithm on footage scale 

    :type:  float in [0, 1], default 0.0 
    '''

    rotation_tracks = None
    '''Collection of tracks used for 2D stabilization (translation) 

    :type:  bpy_prop_collection of MovieTrackingTrack, (readonly) 
    '''

    scale_max = None
    '''Limit the amount of automatic scaling 

    :type:  float in [0, 10], default 0.0 
    '''

    show_tracks_expanded = None
    '''Show UI list of tracks participating in stabilization 

    :type:  boolean, default False 
    '''

    target_position = None
    '''Known relative offset of original shot, will be subtracted (e.g. for panning shot, can be animated) 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    target_rotation = None
    '''Rotation present on original shot, will be compensated (e.g. for deliberate tilting) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    target_scale = None
    '''Explicitly scale resulting frame to compensate zoom of original shot 

    :type:  float in [1.192e-07, inf], default 0.0 
    '''

    tracks = None
    '''Collection of tracks used for 2D stabilization (translation) 

    :type:  bpy_prop_collection of MovieTrackingTrack, (readonly) 
    '''

    use_2d_stabilization = None
    '''Use 2D stabilization for footage 

    :type:  boolean, default False 
    '''

    use_autoscale = None
    '''Automatically scale footage to cover unfilled areas when stabilizing 

    :type:  boolean, default False 
    '''

    use_stabilize_rotation = None
    '''Stabilize detected rotation around center of frame 

    :type:  boolean, default False 
    '''

    use_stabilize_scale = None
    '''Compensate any scale changes relative to center of rotation 

    :type:  boolean, default False 
    '''


class MovieTrackingTrack:
    '''Match-moving track data for tracking '''

    average_error = None
    '''Average error of re-projection 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    bundle = None
    '''Position of bundle reconstructed from this track 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    color = None
    '''Color of the track in the Movie Clip Editor and the 3D viewport after a solve 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    correlation_min = None
    '''Minimal value of correlation between matched pattern and reference that is still treated as successful tracking 

    :type:  float in [0, 1], default 0.0 
    '''

    frames_limit = None
    '''Every tracking cycle, this number of frames are tracked 

    :type:  int in [0, 32767], default 0 
    '''

    grease_pencil = None
    '''Grease pencil data for this track 

    :type:  GreasePencil 
    '''

    has_bundle = None
    '''True if track has a valid bundle 

    :type:  boolean, default False, (readonly) 
    '''

    hide = None
    '''Track is hidden 

    :type:  boolean, default False 
    '''

    lock = None
    '''Track is locked and all changes to it are disabled 

    :type:  boolean, default False 
    '''

    margin = None
    '''Distance from image boundary at which marker stops tracking 

    :type:  int in [0, 300], default 0 
    '''

    markers = None
    '''Collection of markers in track 

    :type:  MovieTrackingMarkers bpy_prop_collection of MovieTrackingMarker, (readonly) 
    '''

    motion_model = None
    '''Default motion model to use for tracking 

    :type:  enum in [‘Perspective’, ‘Affine’, ‘LocRotScale’, ‘LocScale’, ‘LocRot’, ‘Loc’], default ‘Loc’ 
    '''

    name = None
    '''Unique name of track 

    :type:  string, default “”, (never None) 
    '''

    offset = None
    '''Offset of track from the parenting point 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    pattern_match = None
    '''Track pattern from given frame when tracking marker to next frame 

    :type:  enum in [‘KEYFRAME’, ‘PREV_FRAME’], default ‘KEYFRAME’ 
    '''

    select = None
    '''Track is selected 

    :type:  boolean, default False 
    '''

    select_anchor = None
    '''Track’s anchor point is selected 

    :type:  boolean, default False 
    '''

    select_pattern = None
    '''Track’s pattern area is selected 

    :type:  boolean, default False 
    '''

    select_search = None
    '''Track’s search area is selected 

    :type:  boolean, default False 
    '''

    use_alpha_preview = None
    '''Apply track’s mask on displaying preview 

    :type:  boolean, default False 
    '''

    use_blue_channel = None
    '''Use blue channel from footage for tracking 

    :type:  boolean, default False 
    '''

    use_brute = None
    '''Use a brute-force translation only pre-track before refinement 

    :type:  boolean, default False 
    '''

    use_custom_color = None
    '''Use custom color instead of theme-defined 

    :type:  boolean, default False 
    '''

    use_grayscale_preview = None
    '''Display what the tracking algorithm sees in the preview 

    :type:  boolean, default False 
    '''

    use_green_channel = None
    '''Use green channel from footage for tracking 

    :type:  boolean, default False 
    '''

    use_mask = None
    '''Use a grease pencil data-block as a mask to use only specified areas of pattern when tracking 

    :type:  boolean, default False 
    '''

    use_normalization = None
    '''Normalize light intensities while tracking. Slower 

    :type:  boolean, default False 
    '''

    use_red_channel = None
    '''Use red channel from footage for tracking 

    :type:  boolean, default False 
    '''

    weight = None
    '''Influence of this track on a final solution 

    :type:  float in [0, 1], default 0.0 
    '''

    weight_stab = None
    '''Influence of this track on 2D stabilization 

    :type:  float in [0, 1], default 0.0 
    '''


class MovieTrackingTracks:
    '''Collection of movie tracking tracks '''

    active = None
    '''Active track in this tracking data object 

    :type:  MovieTrackingTrack 
    '''

    def new(self, name="", frame=1):
        '''Create new motion track in this movie clip 

        :param name: Name of new track 
        :type name: string, (optional, never None)
        :param frame: Frame, Frame number to add track on 
        :type frame: int in [0, 1048574], (optional)
        :rtype: MovieTrackingTrack 
        :return:  Newly created track 
        '''
        pass


class MulticamSequence:
    '''Sequence strip to perform multicam editing '''

    animation_offset_end = None
    '''Animation end offset (trim end) 

    :type:  int in [0, inf], default 0 
    '''

    animation_offset_start = None
    '''Animation start offset (trim start) 

    :type:  int in [0, inf], default 0 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    multicam_source = None
    '''

    :type:  int in [0, 31], default 0 
    '''


class MultiplySequence:
    '''Multiply Sequence '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class MultiresModifier:
    '''Multiresolution mesh modifier '''

    filepath = None
    '''Path to external displacements file 

    :type:  string, default “”, (never None) 
    '''

    is_external = None
    '''Store multires displacements outside the .blend file, to save memory 

    :type:  boolean, default False, (readonly) 
    '''

    levels = None
    '''Number of subdivisions to use in the viewport 

    :type:  int in [0, 255], default 0 
    '''

    quality = None
    '''Accuracy of vertex positions, lower value is faster but less precise 

    :type:  int in [1, 10], default 0 
    '''

    render_levels = None
    '''The subdivision level visible at render time 

    :type:  int in [0, 255], default 0 
    '''

    sculpt_levels = None
    '''Number of subdivisions to use in sculpt mode 

    :type:  int in [0, 255], default 0 
    '''

    show_only_control_edges = None
    '''Skip drawing/rendering of interior subdivided edges 

    :type:  boolean, default False 
    '''

    subdivision_type = None
    '''Select type of subdivision algorithm 

    :type:  enum in [‘CATMULL_CLARK’, ‘SIMPLE’], default ‘CATMULL_CLARK’ 
    '''

    total_levels = None
    '''Number of subdivisions for which displacements are stored 

    :type:  int in [0, 255], default 0, (readonly) 
    '''

    use_creases = None
    '''Use mesh edge crease information to sharpen edges 

    :type:  boolean, default False 
    '''

    uv_smooth = None
    '''Controls how smoothing is applied to UVs 

    :type:  enum in [‘NONE’, ‘PRESERVE_CORNERS’], default ‘NONE’ 
    '''


class MusgraveTexture:
    '''Procedural musgrave texture '''

    dimension_max = None
    '''Highest fractal dimension 

    :type:  float in [0.0001, 2], default 0.0 
    '''

    gain = None
    '''The gain multiplier 

    :type:  float in [0, 6], default 0.0 
    '''

    lacunarity = None
    '''Gap between successive frequencies 

    :type:  float in [0, 6], default 0.0 
    '''

    musgrave_type = None
    '''Fractal noise algorithm 

    :type:  enum in [‘MULTIFRACTAL’, ‘RIDGED_MULTIFRACTAL’, ‘HYBRID_MULTIFRACTAL’, ‘FBM’, ‘HETERO_TERRAIN’], default ‘MULTIFRACTAL’ 
    '''

    nabla = None
    '''Size of derivative offset used for calculating normal 

    :type:  float in [0.001, 0.1], default 0.0 
    '''

    noise_basis = None
    '''Noise basis used for turbulence 

    :type:  enum in [‘BLENDER_ORIGINAL’, ‘ORIGINAL_PERLIN’, ‘IMPROVED_PERLIN’, ‘VORONOI_F1’, ‘VORONOI_F2’, ‘VORONOI_F3’, ‘VORONOI_F4’, ‘VORONOI_F2_F1’, ‘VORONOI_CRACKLE’, ‘CELL_NOISE’], default ‘BLENDER_ORIGINAL’ 
    '''

    noise_intensity = None
    '''Intensity of the noise 

    :type:  float in [0, 10], default 0.0 
    '''

    noise_scale = None
    '''Scaling for noise input 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    octaves = None
    '''Number of frequencies used 

    :type:  float in [0, 8], default 0.0 
    '''

    offset = None
    '''The fractal offset 

    :type:  float in [0, 6], default 0.0 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class NODE_UL_interface_sockets:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class NlaStrip:
    '''A container referencing an existing Action '''

    action = None
    '''Action referenced by this strip 

    :type:  Action 
    '''

    action_frame_end = None
    '''Last frame from action to use 

    :type:  float in [-inf, inf], default 0.0 
    '''

    action_frame_start = None
    '''First frame from action to use 

    :type:  float in [-inf, inf], default 0.0 
    '''

    active = None
    '''NLA Strip is active 

    :type:  boolean, default False, (readonly) 
    '''

    blend_in = None
    '''Number of frames at start of strip to fade in influence 

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend_out = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    blend_type = None
    '''Method used for combining strip’s result with accumulated result 

    :type:  enum in [‘REPLACE’, ‘COMBINE’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’], default ‘REPLACE’ 
    '''

    extrapolation = None
    '''Action to take for gaps past the strip extents 

    :type:  enum in [‘NOTHING’, ‘HOLD’, ‘HOLD_FORWARD’], default ‘HOLD’ 
    '''

    fcurves = None
    '''F-Curves for controlling the strip’s influence and timing 

    :type:  NlaStripFCurves bpy_prop_collection of FCurve, (readonly) 
    '''

    frame_end = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    frame_start = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    influence = None
    '''Amount the strip contributes to the current result 

    :type:  float in [0, 1], default 0.0 
    '''

    modifiers = None
    '''Modifiers affecting all the F-Curves in the referenced Action 

    :type:  bpy_prop_collection of FModifier, (readonly) 
    '''

    mute = None
    '''Disable NLA Strip evaluation 

    :type:  boolean, default False 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    repeat = None
    '''Number of times to repeat the action range 

    :type:  float in [0.1, 1000], default 0.0 
    '''

    scale = None
    '''Scaling factor for action 

    :type:  float in [0.0001, 1000], default 0.0 
    '''

    select = None
    '''NLA Strip is selected 

    :type:  boolean, default False 
    '''

    strip_time = None
    '''Frame of referenced Action to evaluate 

    :type:  float in [-inf, inf], default 0.0 
    '''

    strips = None
    '''NLA Strips that this strip acts as a container for (if it is of type Meta) 

    :type:  bpy_prop_collection of NlaStrip, (readonly) 
    '''

    type = None
    '''Type of NLA Strip 

    :type:  enum in [‘CLIP’, ‘TRANSITION’, ‘META’, ‘SOUND’], default ‘CLIP’, (readonly) 
    '''

    use_animated_influence = None
    '''Influence setting is controlled by an F-Curve rather than automatically determined 

    :type:  boolean, default False 
    '''

    use_animated_time = None
    '''Strip time is controlled by an F-Curve rather than automatically determined 

    :type:  boolean, default False 
    '''

    use_animated_time_cyclic = None
    '''Cycle the animated time within the action start & end 

    :type:  boolean, default False 
    '''

    use_auto_blend = None
    '''Number of frames for Blending In/Out is automatically determined from overlapping strips 

    :type:  boolean, default False 
    '''

    use_reverse = None
    '''NLA Strip is played back in reverse order (only when timing is automatically determined) 

    :type:  boolean, default False 
    '''

    use_sync_length = None
    '''Update range of frames referenced from action after tweaking strip and its keyframes 

    :type:  boolean, default False 
    '''


class NlaStripFCurves:
    '''Collection of NLA strip F-Curves '''

    def find(self, data_path, index=0):
        '''Find an F-Curve. Note that this function performs a linear scan of all F-Curves in the NLA strip. 

        :param data_path: Data Path, F-Curve data path 
        :type data_path: string, (never None)
        :param index: Index, Array index 
        :type index: int in [0, inf], (optional)
        :rtype: FCurve 
        :return:  The found F-Curve, or None if it doesn’t exist 
        '''
        pass


class NlaStrips:
    '''Collection of Nla Strips '''

    def new(self, name, start, action):
        '''Add a new Action-Clip strip to the track 

        :param name: Name for the NLA Strips 
        :type name: string, (never None)
        :param start: Start Frame, Start frame for this strip 
        :type start: int in [-inf, inf]
        :param action: Action to assign to this strip 
        :type action: Action, (never None)
        :rtype: NlaStrip 
        :return:  New NLA Strip 
        '''
        pass

    def remove(self, strip):
        '''Remove a NLA Strip 

        :param strip: NLA Strip to remove 
        :type strip: NlaStrip, (never None)
        '''
        pass


class NlaTrack:
    '''A animation layer containing Actions referenced as NLA strips '''

    active = None
    '''NLA Track is active 

    :type:  boolean, default False, (readonly) 
    '''

    is_solo = None
    '''NLA Track is evaluated itself (i.e. active Action and all other NLA Tracks in the same AnimData block are disabled) 

    :type:  boolean, default False 
    '''

    lock = None
    '''NLA Track is locked 

    :type:  boolean, default False 
    '''

    mute = None
    '''Disable NLA Track evaluation 

    :type:  boolean, default False 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    select = None
    '''NLA Track is selected 

    :type:  boolean, default False 
    '''

    strips = None
    '''NLA Strips on this NLA-track 

    :type:  NlaStrips bpy_prop_collection of NlaStrip, (readonly) 
    '''


class NlaTracks:
    '''Collection of NLA Tracks '''

    active = None
    '''Active Object constraint 

    :type:  NlaTrack 
    '''

    def new(self, prev=None):
        '''Add a new NLA Track 

        :param prev: NLA Track to add the new one after 
        :type prev: NlaTrack, (optional)
        :rtype: NlaTrack 
        :return:  New NLA Track 
        '''
        pass

    def remove(self, track):
        '''Remove a NLA Track 

        :param track: NLA Track to remove 
        :type track: NlaTrack, (never None)
        '''
        pass


class Node:
    '''Node in a node tree '''

    bl_description = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_height_default = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    bl_height_max = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    bl_height_min = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    bl_icon = None
    '''The node icon 

    :type:  enum in [‘NONE’, ‘QUESTION’, ‘ERROR’, ‘CANCEL’, ‘TRIA_RIGHT’, ‘TRIA_DOWN’, ‘TRIA_LEFT’, ‘TRIA_UP’, ‘ARROW_LEFTRIGHT’, ‘PLUS’, ‘DISCLOSURE_TRI_RIGHT’, ‘DISCLOSURE_TRI_DOWN’, ‘RADIOBUT_OFF’, ‘RADIOBUT_ON’, ‘MENU_PANEL’, ‘BLENDER’, ‘GRIP’, ‘DOT’, ‘COLLAPSEMENU’, ‘X’, ‘DUPLICATE’, ‘TRASH’, ‘NODE’, ‘NODE_SEL’, ‘WINDOW’, ‘WORKSPACE’, ‘RIGHTARROW_THIN’, ‘BORDERMOVE’, ‘VIEWZOOM’, ‘ADD’, ‘REMOVE’, ‘PANEL_CLOSE’, ‘COPY_ID’, ‘EYEDROPPER’, ‘AUTO’, ‘CHECKBOX_DEHLT’, ‘CHECKBOX_HLT’, ‘UNLOCKED’, ‘LOCKED’, ‘UNPINNED’, ‘PINNED’, ‘SCREEN_BACK’, ‘RIGHTARROW’, ‘DOWNARROW_HLT’, ‘PLUGIN’, ‘HELP’, ‘GHOST_ENABLED’, ‘COLOR’, ‘UNLINKED’, ‘LINKED’, ‘HAND’, ‘ZOOM_ALL’, ‘ZOOM_SELECTED’, ‘ZOOM_PREVIOUS’, ‘ZOOM_IN’, ‘ZOOM_OUT’, ‘DRIVER_DISTANCE’, ‘DRIVER_ROTATIONAL_DIFFERENCE’, ‘DRIVER_TRANSFORM’, ‘FREEZE’, ‘STYLUS_PRESSURE’, ‘GHOST_DISABLED’, ‘FILE_NEW’, ‘FILE_TICK’, ‘QUIT’, ‘URL’, ‘RECOVER_LAST’, ‘THREE_DOTS’, ‘FULLSCREEN_ENTER’, ‘FULLSCREEN_EXIT’, ‘LIGHT’, ‘MATERIAL’, ‘TEXTURE’, ‘ANIM’, ‘WORLD’, ‘SCENE’, ‘OUTPUT’, ‘SCRIPT’, ‘PARTICLES’, ‘PHYSICS’, ‘SPEAKER’, ‘TOOL_SETTINGS’, ‘SHADERFX’, ‘MODIFIER’, ‘BLANK1’, ‘FAKE_USER_OFF’, ‘FAKE_USER_ON’, ‘VIEW3D’, ‘GRAPH’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILEBROWSER’, ‘IMAGE’, ‘INFO’, ‘SEQUENCE’, ‘TEXT’, ‘SOUND’, ‘ACTION’, ‘NLA’, ‘PREFERENCES’, ‘TIME’, ‘NODETREE’, ‘CONSOLE’, ‘TRACKER’, ‘ASSET_MANAGER’, ‘NODE_COMPOSITING’, ‘NODE_TEXTURE’, ‘NODE_MATERIAL’, ‘UV’, ‘OBJECT_DATAMODE’, ‘EDITMODE_HLT’, ‘UV_DATA’, ‘VPAINT_HLT’, ‘TPAINT_HLT’, ‘WPAINT_HLT’, ‘SCULPTMODE_HLT’, ‘POSE_HLT’, ‘PARTICLEMODE’, ‘TRACKING’, ‘TRACKING_BACKWARDS’, ‘TRACKING_FORWARDS’, ‘TRACKING_BACKWARDS_SINGLE’, ‘TRACKING_FORWARDS_SINGLE’, ‘TRACKING_CLEAR_BACKWARDS’, ‘TRACKING_CLEAR_FORWARDS’, ‘TRACKING_REFINE_BACKWARDS’, ‘TRACKING_REFINE_FORWARDS’, ‘SCENE_DATA’, ‘RENDERLAYERS’, ‘WORLD_DATA’, ‘OBJECT_DATA’, ‘MESH_DATA’, ‘CURVE_DATA’, ‘META_DATA’, ‘LATTICE_DATA’, ‘LIGHT_DATA’, ‘MATERIAL_DATA’, ‘TEXTURE_DATA’, ‘ANIM_DATA’, ‘CAMERA_DATA’, ‘PARTICLE_DATA’, ‘LIBRARY_DATA_DIRECT’, ‘GROUP’, ‘ARMATURE_DATA’, ‘COMMUNITY’, ‘BONE_DATA’, ‘CONSTRAINT’, ‘SHAPEKEY_DATA’, ‘CONSTRAINT_BONE’, ‘CAMERA_STEREO’, ‘PACKAGE’, ‘UGLYPACKAGE’, ‘EXPERIMENTAL’, ‘BRUSH_DATA’, ‘IMAGE_DATA’, ‘FILE’, ‘FCURVE’, ‘FONT_DATA’, ‘RENDER_RESULT’, ‘SURFACE_DATA’, ‘EMPTY_DATA’, ‘PRESET’, ‘RENDER_ANIMATION’, ‘RENDER_STILL’, ‘LIBRARY_DATA_BROKEN’, ‘BOIDS’, ‘STRANDS’, ‘LIBRARY_DATA_INDIRECT’, ‘GREASEPENCIL’, ‘LINE_DATA’, ‘LIBRARY_DATA_OVERRIDE’, ‘GROUP_BONE’, ‘GROUP_VERTEX’, ‘GROUP_VCOL’, ‘GROUP_UVS’, ‘FACE_MAPS’, ‘RNA’, ‘RNA_ADD’, ‘MOUSE_LMB’, ‘MOUSE_MMB’, ‘MOUSE_RMB’, ‘MOUSE_MOVE’, ‘MOUSE_LMB_DRAG’, ‘MOUSE_MMB_DRAG’, ‘MOUSE_RMB_DRAG’, ‘PRESET_NEW’, ‘DECORATE’, ‘DECORATE_KEYFRAME’, ‘DECORATE_ANIMATE’, ‘DECORATE_DRIVER’, ‘DECORATE_LINKED’, ‘DECORATE_LIBRARY_OVERRIDE’, ‘DECORATE_UNLOCKED’, ‘DECORATE_LOCKED’, ‘DECORATE_OVERRIDE’, ‘TRACKER_DATA’, ‘HEART’, ‘ORPHAN_DATA’, ‘USER’, ‘SYSTEM’, ‘SETTINGS’, ‘OUTLINER_OB_EMPTY’, ‘OUTLINER_OB_MESH’, ‘OUTLINER_OB_CURVE’, ‘OUTLINER_OB_LATTICE’, ‘OUTLINER_OB_META’, ‘OUTLINER_OB_LIGHT’, ‘OUTLINER_OB_CAMERA’, ‘OUTLINER_OB_ARMATURE’, ‘OUTLINER_OB_FONT’, ‘OUTLINER_OB_SURFACE’, ‘OUTLINER_OB_SPEAKER’, ‘OUTLINER_OB_FORCE_FIELD’, ‘OUTLINER_OB_GROUP_INSTANCE’, ‘OUTLINER_OB_GREASEPENCIL’, ‘OUTLINER_OB_LIGHTPROBE’, ‘OUTLINER_OB_IMAGE’, ‘RESTRICT_COLOR_OFF’, ‘RESTRICT_COLOR_ON’, ‘HIDE_ON’, ‘HIDE_OFF’, ‘RESTRICT_SELECT_ON’, ‘RESTRICT_SELECT_OFF’, ‘RESTRICT_RENDER_ON’, ‘RESTRICT_RENDER_OFF’, ‘OUTLINER_DATA_EMPTY’, ‘OUTLINER_DATA_MESH’, ‘OUTLINER_DATA_CURVE’, ‘OUTLINER_DATA_LATTICE’, ‘OUTLINER_DATA_META’, ‘OUTLINER_DATA_LIGHT’, ‘OUTLINER_DATA_CAMERA’, ‘OUTLINER_DATA_ARMATURE’, ‘OUTLINER_DATA_FONT’, ‘OUTLINER_DATA_SURFACE’, ‘OUTLINER_DATA_SPEAKER’, ‘OUTLINER_DATA_GREASEPENCIL’, ‘GP_SELECT_POINTS’, ‘GP_SELECT_STROKES’, ‘GP_MULTIFRAME_EDITING’, ‘GP_ONLY_SELECTED’, ‘GP_SELECT_BETWEEN_STROKES’, ‘MODIFIER_OFF’, ‘MODIFIER_ON’, ‘ONIONSKIN_OFF’, ‘ONIONSKIN_ON’, ‘RESTRICT_VIEW_ON’, ‘RESTRICT_VIEW_OFF’, ‘MESH_PLANE’, ‘MESH_CUBE’, ‘MESH_CIRCLE’, ‘MESH_UVSPHERE’, ‘MESH_ICOSPHERE’, ‘MESH_GRID’, ‘MESH_MONKEY’, ‘MESH_CYLINDER’, ‘MESH_TORUS’, ‘MESH_CONE’, ‘MESH_CAPSULE’, ‘EMPTY_SINGLE_ARROW’, ‘LIGHT_POINT’, ‘LIGHT_SUN’, ‘LIGHT_SPOT’, ‘LIGHT_HEMI’, ‘LIGHT_AREA’, ‘CUBE’, ‘SPHERE’, ‘CONE’, ‘META_PLANE’, ‘META_CUBE’, ‘META_BALL’, ‘META_ELLIPSOID’, ‘META_CAPSULE’, ‘SURFACE_NCURVE’, ‘SURFACE_NCIRCLE’, ‘SURFACE_NSURFACE’, ‘SURFACE_NCYLINDER’, ‘SURFACE_NSPHERE’, ‘SURFACE_NTORUS’, ‘EMPTY_AXIS’, ‘STROKE’, ‘EMPTY_ARROWS’, ‘CURVE_BEZCURVE’, ‘CURVE_BEZCIRCLE’, ‘CURVE_NCURVE’, ‘CURVE_NCIRCLE’, ‘CURVE_PATH’, ‘LIGHTPROBE_CUBEMAP’, ‘LIGHTPROBE_PLANAR’, ‘LIGHTPROBE_GRID’, ‘COLOR_RED’, ‘COLOR_GREEN’, ‘COLOR_BLUE’, ‘TRIA_RIGHT_BAR’, ‘TRIA_DOWN_BAR’, ‘TRIA_LEFT_BAR’, ‘TRIA_UP_BAR’, ‘FORCE_FORCE’, ‘FORCE_WIND’, ‘FORCE_VORTEX’, ‘FORCE_MAGNETIC’, ‘FORCE_HARMONIC’, ‘FORCE_CHARGE’, ‘FORCE_LENNARDJONES’, ‘FORCE_TEXTURE’, ‘FORCE_CURVE’, ‘FORCE_BOID’, ‘FORCE_TURBULENCE’, ‘FORCE_DRAG’, ‘FORCE_SMOKEFLOW’, ‘IMAGE_PLANE’, ‘IMAGE_BACKGROUND’, ‘IMAGE_REFERENCE’, ‘NODE_INSERT_ON’, ‘NODE_INSERT_OFF’, ‘NODE_TOP’, ‘NODE_SIDE’, ‘NODE_CORNER’, ‘ALIGN_LEFT’, ‘ALIGN_CENTER’, ‘ALIGN_RIGHT’, ‘ALIGN_JUSTIFY’, ‘ALIGN_FLUSH’, ‘ALIGN_TOP’, ‘ALIGN_MIDDLE’, ‘ALIGN_BOTTOM’, ‘BOLD’, ‘ITALIC’, ‘UNDERLINE’, ‘SMALL_CAPS’, ‘MODIFIER_DATA’, ‘MOD_WAVE’, ‘MOD_BUILD’, ‘MOD_DECIM’, ‘MOD_MIRROR’, ‘MOD_SOFT’, ‘MOD_SUBSURF’, ‘HOOK’, ‘MOD_PHYSICS’, ‘MOD_PARTICLES’, ‘MOD_BOOLEAN’, ‘MOD_EDGESPLIT’, ‘MOD_ARRAY’, ‘MOD_UVPROJECT’, ‘MOD_DISPLACE’, ‘MOD_CURVE’, ‘MOD_LATTICE’, ‘MOD_TINT’, ‘MOD_ARMATURE’, ‘MOD_SHRINKWRAP’, ‘MOD_CAST’, ‘MOD_MESHDEFORM’, ‘MOD_BEVEL’, ‘MOD_SMOOTH’, ‘MOD_SIMPLEDEFORM’, ‘MOD_MASK’, ‘MOD_CLOTH’, ‘MOD_EXPLODE’, ‘MOD_FLUIDSIM’, ‘MOD_MULTIRES’, ‘MOD_SMOKE’, ‘MOD_SOLIDIFY’, ‘MOD_SCREW’, ‘MOD_VERTEX_WEIGHT’, ‘MOD_DYNAMICPAINT’, ‘MOD_REMESH’, ‘MOD_OCEAN’, ‘MOD_WARP’, ‘MOD_SKIN’, ‘MOD_TRIANGULATE’, ‘MOD_WIREFRAME’, ‘MOD_DATA_TRANSFER’, ‘MOD_NORMALEDIT’, ‘MOD_PARTICLE_INSTANCE’, ‘MOD_HUE_SATURATION’, ‘MOD_NOISE’, ‘MOD_OFFSET’, ‘MOD_SIMPLIFY’, ‘MOD_THICKNESS’, ‘MOD_INSTANCE’, ‘MOD_TIME’, ‘MOD_OPACITY’, ‘REC’, ‘PLAY’, ‘FF’, ‘REW’, ‘PAUSE’, ‘PREV_KEYFRAME’, ‘NEXT_KEYFRAME’, ‘PLAY_SOUND’, ‘PLAY_REVERSE’, ‘PREVIEW_RANGE’, ‘ACTION_TWEAK’, ‘PMARKER_ACT’, ‘PMARKER_SEL’, ‘PMARKER’, ‘MARKER_HLT’, ‘MARKER’, ‘KEYFRAME_HLT’, ‘KEYFRAME’, ‘KEYINGSET’, ‘KEY_DEHLT’, ‘KEY_HLT’, ‘MUTE_IPO_OFF’, ‘MUTE_IPO_ON’, ‘VISIBLE_IPO_OFF’, ‘VISIBLE_IPO_ON’, ‘DRIVER’, ‘SOLO_OFF’, ‘SOLO_ON’, ‘FRAME_PREV’, ‘FRAME_NEXT’, ‘NLA_PUSHDOWN’, ‘IPO_CONSTANT’, ‘IPO_LINEAR’, ‘IPO_BEZIER’, ‘IPO_SINE’, ‘IPO_QUAD’, ‘IPO_CUBIC’, ‘IPO_QUART’, ‘IPO_QUINT’, ‘IPO_EXPO’, ‘IPO_CIRC’, ‘IPO_BOUNCE’, ‘IPO_ELASTIC’, ‘IPO_BACK’, ‘IPO_EASE_IN’, ‘IPO_EASE_OUT’, ‘IPO_EASE_IN_OUT’, ‘NORMALIZE_FCURVES’, ‘VERTEXSEL’, ‘EDGESEL’, ‘FACESEL’, ‘PIVOT_BOUNDBOX’, ‘PIVOT_CURSOR’, ‘PIVOT_INDIVIDUAL’, ‘PIVOT_MEDIAN’, ‘PIVOT_ACTIVE’, ‘CENTER_ONLY’, ‘ROOTCURVE’, ‘SMOOTHCURVE’, ‘SPHERECURVE’, ‘INVERSESQUARECURVE’, ‘SHARPCURVE’, ‘LINCURVE’, ‘NOCURVE’, ‘RNDCURVE’, ‘PROP_OFF’, ‘PROP_ON’, ‘PROP_CON’, ‘PROP_PROJECTED’, ‘PARTICLE_POINT’, ‘PARTICLE_TIP’, ‘PARTICLE_PATH’, ‘SNAP_OFF’, ‘SNAP_ON’, ‘SNAP_NORMAL’, ‘SNAP_GRID’, ‘SNAP_VERTEX’, ‘SNAP_EDGE’, ‘SNAP_FACE’, ‘SNAP_VOLUME’, ‘SNAP_INCREMENT’, ‘STICKY_UVS_LOC’, ‘STICKY_UVS_DISABLE’, ‘STICKY_UVS_VERT’, ‘CLIPUV_DEHLT’, ‘CLIPUV_HLT’, ‘SNAP_PEEL_OBJECT’, ‘GRID’, ‘OBJECT_ORIGIN’, ‘ORIENTATION_GLOBAL’, ‘ORIENTATION_GIMBAL’, ‘ORIENTATION_LOCAL’, ‘ORIENTATION_NORMAL’, ‘ORIENTATION_VIEW’, ‘COPYDOWN’, ‘PASTEDOWN’, ‘PASTEFLIPUP’, ‘PASTEFLIPDOWN’, ‘VIS_SEL_11’, ‘VIS_SEL_10’, ‘VIS_SEL_01’, ‘VIS_SEL_00’, ‘AUTOMERGE_ON’, ‘AUTOMERGE_OFF’, ‘UV_VERTEXSEL’, ‘UV_EDGESEL’, ‘UV_FACESEL’, ‘UV_ISLANDSEL’, ‘UV_SYNC_SELECT’, ‘ORIENTATION_CURSOR’, ‘NORMALS_VERTEX’, ‘NORMALS_FACE’, ‘NORMALS_VERTEX_FACE’, ‘SHADING_BBOX’, ‘SHADING_WIRE’, ‘SHADING_SOLID’, ‘SHADING_RENDERED’, ‘SHADING_TEXTURE’, ‘OVERLAY’, ‘XRAY’, ‘LOCKVIEW_OFF’, ‘LOCKVIEW_ON’, ‘AXIS_SIDE’, ‘AXIS_FRONT’, ‘AXIS_TOP’, ‘NDOF_DOM’, ‘NDOF_TURN’, ‘NDOF_FLY’, ‘NDOF_TRANS’, ‘LAYER_USED’, ‘LAYER_ACTIVE’, ‘SORTALPHA’, ‘SORTBYEXT’, ‘SORTTIME’, ‘SORTSIZE’, ‘SHORTDISPLAY’, ‘LONGDISPLAY’, ‘IMGDISPLAY’, ‘BOOKMARKS’, ‘FONTPREVIEW’, ‘FILTER’, ‘NEWFOLDER’, ‘FILE_PARENT’, ‘FILE_REFRESH’, ‘FILE_FOLDER’, ‘FILE_BLANK’, ‘FILE_BLEND’, ‘FILE_IMAGE’, ‘FILE_MOVIE’, ‘FILE_SCRIPT’, ‘FILE_SOUND’, ‘FILE_FONT’, ‘FILE_TEXT’, ‘SORT_DESC’, ‘SORT_ASC’, ‘LINK_BLEND’, ‘APPEND_BLEND’, ‘IMPORT’, ‘EXPORT’, ‘LOOP_BACK’, ‘LOOP_FORWARDS’, ‘BACK’, ‘FORWARD’, ‘FILE_VOLUME’, ‘ALEMBIC’, ‘VOLUME’, ‘FILE_HIDDEN’, ‘FILE_BACKUP’, ‘DISK_DRIVE’, ‘MATPLANE’, ‘MATSPHERE’, ‘MATCUBE’, ‘MONKEY’, ‘HAIR’, ‘ALIASED’, ‘ANTIALIASED’, ‘MAT_SPHERE_SKY’, ‘MATSHADERBALL’, ‘MATCLOTH’, ‘MATFLUID’, ‘WORDWRAP_OFF’, ‘WORDWRAP_ON’, ‘SYNTAX_OFF’, ‘SYNTAX_ON’, ‘LINENUMBERS_OFF’, ‘LINENUMBERS_ON’, ‘SCRIPTPLUGINS’, ‘SEQ_SEQUENCER’, ‘SEQ_PREVIEW’, ‘SEQ_LUMA_WAVEFORM’, ‘SEQ_CHROMA_SCOPE’, ‘SEQ_HISTOGRAM’, ‘SEQ_SPLITVIEW’, ‘IMAGE_RGB’, ‘IMAGE_RGB_ALPHA’, ‘IMAGE_ALPHA’, ‘IMAGE_ZDEPTH’, ‘VIEW_PERSPECTIVE’, ‘VIEW_ORTHO’, ‘VIEW_CAMERA’, ‘VIEW_PAN’, ‘VIEW_ZOOM’, ‘BRUSH_BLOB’, ‘BRUSH_BLUR’, ‘BRUSH_CLAY’, ‘BRUSH_CLAY_STRIPS’, ‘BRUSH_CLONE’, ‘BRUSH_CREASE’, ‘BRUSH_FILL’, ‘BRUSH_FLATTEN’, ‘BRUSH_GRAB’, ‘BRUSH_INFLATE’, ‘BRUSH_LAYER’, ‘BRUSH_MASK’, ‘BRUSH_MIX’, ‘BRUSH_NUDGE’, ‘BRUSH_PINCH’, ‘BRUSH_SCRAPE’, ‘BRUSH_SCULPT_DRAW’, ‘BRUSH_SMEAR’, ‘BRUSH_SMOOTH’, ‘BRUSH_SNAKE_HOOK’, ‘BRUSH_SOFTEN’, ‘BRUSH_TEXDRAW’, ‘BRUSH_TEXFILL’, ‘BRUSH_TEXMASK’, ‘BRUSH_THUMB’, ‘BRUSH_ROTATE’, ‘GPBRUSH_SMOOTH’, ‘GPBRUSH_THICKNESS’, ‘GPBRUSH_STRENGTH’, ‘GPBRUSH_GRAB’, ‘GPBRUSH_PUSH’, ‘GPBRUSH_TWIST’, ‘GPBRUSH_PINCH’, ‘GPBRUSH_RANDOMIZE’, ‘GPBRUSH_CLONE’, ‘GPBRUSH_WEIGHT’, ‘GPBRUSH_PENCIL’, ‘GPBRUSH_PEN’, ‘GPBRUSH_INK’, ‘GPBRUSH_INKNOISE’, ‘GPBRUSH_BLOCK’, ‘GPBRUSH_MARKER’, ‘GPBRUSH_FILL’, ‘GPBRUSH_ERASE_SOFT’, ‘GPBRUSH_ERASE_HARD’, ‘GPBRUSH_ERASE_STROKE’, ‘SMALL_TRI_RIGHT_VEC’, ‘KEYTYPE_KEYFRAME_VEC’, ‘KEYTYPE_BREAKDOWN_VEC’, ‘KEYTYPE_EXTREME_VEC’, ‘KEYTYPE_JITTER_VEC’, ‘KEYTYPE_MOVING_HOLD_VEC’, ‘HANDLETYPE_FREE_VEC’, ‘HANDLETYPE_ALIGNED_VEC’, ‘HANDLETYPE_VECTOR_VEC’, ‘HANDLETYPE_AUTO_VEC’, ‘HANDLETYPE_AUTO_CLAMP_VEC’, ‘COLORSET_01_VEC’, ‘COLORSET_02_VEC’, ‘COLORSET_03_VEC’, ‘COLORSET_04_VEC’, ‘COLORSET_05_VEC’, ‘COLORSET_06_VEC’, ‘COLORSET_07_VEC’, ‘COLORSET_08_VEC’, ‘COLORSET_09_VEC’, ‘COLORSET_10_VEC’, ‘COLORSET_11_VEC’, ‘COLORSET_12_VEC’, ‘COLORSET_13_VEC’, ‘COLORSET_14_VEC’, ‘COLORSET_15_VEC’, ‘COLORSET_16_VEC’, ‘COLORSET_17_VEC’, ‘COLORSET_18_VEC’, ‘COLORSET_19_VEC’, ‘COLORSET_20_VEC’, ‘EVENT_A’, ‘EVENT_B’, ‘EVENT_C’, ‘EVENT_D’, ‘EVENT_E’, ‘EVENT_F’, ‘EVENT_G’, ‘EVENT_H’, ‘EVENT_I’, ‘EVENT_J’, ‘EVENT_K’, ‘EVENT_L’, ‘EVENT_M’, ‘EVENT_N’, ‘EVENT_O’, ‘EVENT_P’, ‘EVENT_Q’, ‘EVENT_R’, ‘EVENT_S’, ‘EVENT_T’, ‘EVENT_U’, ‘EVENT_V’, ‘EVENT_W’, ‘EVENT_X’, ‘EVENT_Y’, ‘EVENT_Z’, ‘EVENT_SHIFT’, ‘EVENT_CTRL’, ‘EVENT_ALT’, ‘EVENT_OS’, ‘EVENT_F1’, ‘EVENT_F2’, ‘EVENT_F3’, ‘EVENT_F4’, ‘EVENT_F5’, ‘EVENT_F6’, ‘EVENT_F7’, ‘EVENT_F8’, ‘EVENT_F9’, ‘EVENT_F10’, ‘EVENT_F11’, ‘EVENT_F12’, ‘EVENT_ESC’, ‘EVENT_TAB’, ‘EVENT_PAGEUP’, ‘EVENT_PAGEDOWN’, ‘EVENT_RETURN’], default ‘NODE’ 
    '''

    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''The node label 

    :type:  string, default “”, (never None) 
    '''

    bl_static_type = None
    '''Node type (deprecated, use with care) 

    :type:  enum in [‘CUSTOM’], default ‘CUSTOM’ 
    '''

    bl_width_default = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    bl_width_max = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    bl_width_min = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    color = None
    '''Custom color of the node body 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    dimensions = None
    '''Absolute bounding box dimensions of the node 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''

    height = None
    '''Height of the node 

    :type:  float in [-inf, inf], default 0.0 
    '''

    hide = None
    '''

    :type:  boolean, default False 
    '''

    inputs = None
    '''

    :type:  NodeInputs bpy_prop_collection of NodeSocket, (readonly) 
    '''

    internal_links = None
    '''Internal input-to-output connections for muting 

    :type:  bpy_prop_collection of NodeLink, (readonly) 
    '''

    label = None
    '''Optional custom node label 

    :type:  string, default “”, (never None) 
    '''

    location = None
    '''

    :type:  float array of 2 items in [-100000, 100000], default (0.0, 0.0) 
    '''

    mute = None
    '''

    :type:  boolean, default False 
    '''

    name = None
    '''Unique node identifier 

    :type:  string, default “”, (never None) 
    '''

    outputs = None
    '''

    :type:  NodeOutputs bpy_prop_collection of NodeSocket, (readonly) 
    '''

    parent = None
    '''Parent this node is attached to 

    :type:  Node 
    '''

    select = None
    '''Node selection state 

    :type:  boolean, default False 
    '''

    show_options = None
    '''

    :type:  boolean, default False 
    '''

    show_preview = None
    '''

    :type:  boolean, default False 
    '''

    show_texture = None
    '''Draw node in viewport textured draw mode 

    :type:  boolean, default False 
    '''

    type = None
    '''Node type (deprecated, use bl_static_type or bl_idname for the actual identifier string) 

    :type:  enum in [‘CUSTOM’], default ‘CUSTOM’, (readonly) 
    '''

    use_custom_color = None
    '''Use custom color for the node 

    :type:  boolean, default False 
    '''

    width = None
    '''Width of the node 

    :type:  float in [-inf, inf], default 0.0 
    '''

    width_hidden = None
    '''Width of the node in hidden state 

    :type:  float in [-inf, inf], default 0.0 
    '''

    def socket_value_update(self, context):
        '''Update after property changes 

        '''
        pass

    def poll_instance(self, node_tree):
        '''If non-null output is returned, the node can be added to the tree 

        :param node_tree: Node Tree 
        :type node_tree: NodeTree
        :rtype: boolean 
        '''
        pass

    def update(self):
        '''Update on editor changes 

        '''
        pass

    def insert_link(self, link):
        '''Handle creation of a link to or from the node 

        :param link: Link, Node link that will be inserted 
        :type link: NodeLink, (never None)
        '''
        pass

    def init(self, context):
        '''Initialize a new instance of this node 

        '''
        pass

    def copy(self, node):
        '''Initialize a new instance of this node from an existing node 

        :param node: Node, Existing node to copy 
        :type node: Node, (never None)
        '''
        pass

    def free(self):
        '''Clean up node on removal 

        '''
        pass

    def draw_buttons(self, context, layout):
        '''Draw node buttons 

        :param layout: Layout, Layout in the UI 
        :type layout: UILayout, (never None)
        '''
        pass

    def draw_buttons_ext(self, context, layout):
        '''Draw node buttons in the sidebar 

        :param layout: Layout, Layout in the UI 
        :type layout: UILayout, (never None)
        '''
        pass

    def draw_label(self):
        '''Returns a dynamic label string 

        :rtype: string, (never None) 
        :return:  Label 
        '''
        pass


class NodeCustomGroup:
    '''Base node type for custom registered node group types '''

    interface = None
    '''Interface socket data 

    :type:  PropertyGroup, (readonly) 
    '''

    node_tree = None
    '''

    :type:  NodeTree 
    '''


class NodeFrame:
    label_size = None
    '''Font size to use for displaying the label 

    :type:  int in [8, 64], default 0 
    '''

    shrink = None
    '''Shrink the frame to minimal bounding box 

    :type:  boolean, default False 
    '''

    text = None
    '''

    :type:  Text 
    '''


class NodeGroup:
    interface = None
    '''Interface socket data 

    :type:  PropertyGroup, (readonly) 
    '''

    node_tree = None
    '''

    :type:  NodeTree 
    '''


class NodeGroupInput:
    interface = None
    '''Interface socket data 

    :type:  PropertyGroup, (readonly) 
    '''


class NodeGroupOutput:
    interface = None
    '''Interface socket data 

    :type:  PropertyGroup, (readonly) 
    '''

    is_active_output = None
    '''True if this node is used as the active group output 

    :type:  boolean, default False 
    '''


class NodeInputs:
    '''Collection of Node Sockets '''

    def new(self, type, name, identifier=""):
        '''Add a socket to this node 

        :param type: Type, Data type 
        :type type: string, (never None)
        :param name: Name 
        :type name: string, (never None)
        :param identifier: Identifier, Unique socket identifier 
        :type identifier: string, (optional, never None)
        :rtype: NodeSocket 
        :return:  New socket 
        '''
        pass

    def remove(self, socket):
        '''Remove a socket from this node 

        :param socket: The socket to remove 
        :type socket: NodeSocket
        '''
        pass

    def clear(self):
        '''Remove all sockets from this node 

        '''
        pass

    def move(self, from_index, to_index):
        '''Move a socket to another position 

        :param from_index: From Index, Index of the socket to move 
        :type from_index: int in [0, inf]
        :param to_index: To Index, Target index for the socket 
        :type to_index: int in [0, inf]
        '''
        pass


class NodeInstanceHash:
    '''Hash table containing node instance data '''

    pass


class NodeInternal:
    def poll_instance(self, node_tree):
        '''If non-null output is returned, the node can be added to the tree 

        :param node_tree: Node Tree 
        :type node_tree: NodeTree
        :rtype: boolean 
        '''
        pass

    def update(self):
        '''Update on editor changes 

        '''
        pass

    def draw_buttons(self, context, layout):
        '''Draw node buttons 

        :param layout: Layout, Layout in the UI 
        :type layout: UILayout, (never None)
        '''
        pass

    def draw_buttons_ext(self, context, layout):
        '''Draw node buttons in the sidebar 

        :param layout: Layout, Layout in the UI 
        :type layout: UILayout, (never None)
        '''
        pass


class NodeInternalSocketTemplate:
    '''Type and default value of a node socket '''

    identifier = None
    '''Identifier of the socket 

    :type:  string, default “”, (readonly, never None) 
    '''

    name = None
    '''Name of the socket 

    :type:  string, default “”, (readonly, never None) 
    '''

    type = None
    '''Data type of the socket 

    :type:  enum in [‘CUSTOM’, ‘VALUE’, ‘INT’, ‘BOOLEAN’, ‘VECTOR’, ‘STRING’, ‘RGBA’, ‘SHADER’], default ‘VALUE’, (readonly) 
    '''


class NodeLink:
    '''Link is valid '''

    from_node = None
    '''

    :type:  Node, (readonly) 
    '''

    from_socket = None
    '''

    :type:  NodeSocket, (readonly) 
    '''

    is_hidden = None
    '''Link is hidden due to invisible sockets 

    :type:  boolean, default False, (readonly) 
    '''

    is_valid = None
    '''

    :type:  boolean, default False 
    '''

    to_node = None
    '''

    :type:  Node, (readonly) 
    '''

    to_socket = None
    '''

    :type:  NodeSocket, (readonly) 
    '''


class NodeLinks:
    '''Collection of Node Links '''

    def new(self, input, output, verify_limits=True):
        '''Add a node link to this node tree 

        :param input: The input socket 
        :type input: NodeSocket, (never None)
        :param output: The output socket 
        :type output: NodeSocket, (never None)
        :param verify_limits: Verify Limits, Remove existing links if connection limit is exceeded 
        :type verify_limits: boolean, (optional)
        :rtype: NodeLink 
        :return:  New node link 
        '''
        pass

    def remove(self, link):
        '''remove a node link from the node tree 

        :param link: The node link to remove 
        :type link: NodeLink, (never None)
        '''
        pass

    def clear(self):
        '''remove all node links from the node tree 

        '''
        pass


class NodeOutputFileSlotFile:
    '''Single layer file slot of the file output node '''

    format = None
    '''

    :type:  ImageFormatSettings, (readonly) 
    '''

    path = None
    '''Subpath used for this slot 

    :type:  string, default “”, (never None) 
    '''

    use_node_format = None
    '''

    :type:  boolean, default False 
    '''


class NodeOutputFileSlotLayer:
    '''Multilayer slot of the file output node '''

    name = None
    '''OpenEXR layer name used for this slot 

    :type:  string, default “”, (never None) 
    '''


class NodeOutputs:
    '''Collection of Node Sockets '''

    def new(self, type, name, identifier=""):
        '''Add a socket to this node 

        :param type: Type, Data type 
        :type type: string, (never None)
        :param name: Name 
        :type name: string, (never None)
        :param identifier: Identifier, Unique socket identifier 
        :type identifier: string, (optional, never None)
        :rtype: NodeSocket 
        :return:  New socket 
        '''
        pass

    def remove(self, socket):
        '''Remove a socket from this node 

        :param socket: The socket to remove 
        :type socket: NodeSocket
        '''
        pass

    def clear(self):
        '''Remove all sockets from this node 

        '''
        pass

    def move(self, from_index, to_index):
        '''Move a socket to another position 

        :param from_index: From Index, Index of the socket to move 
        :type from_index: int in [0, inf]
        :param to_index: To Index, Target index for the socket 
        :type to_index: int in [0, inf]
        '''
        pass


class NodeReroute:
    pass


class NodeSetting:
    pass


class NodeSocket:
    '''Input or output socket of a node '''

    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    draw_shape = None
    '''Socket shape 

    :type:  enum in [‘CIRCLE’, ‘SQUARE’, ‘DIAMOND’], default ‘CIRCLE’ 
    '''

    enabled = None
    '''Enable the socket 

    :type:  boolean, default False 
    '''

    hide = None
    '''Hide the socket 

    :type:  boolean, default False 
    '''

    hide_value = None
    '''Hide the socket input value 

    :type:  boolean, default False 
    '''

    identifier = None
    '''Unique identifier for mapping sockets 

    :type:  string, default “”, (readonly, never None) 
    '''

    is_linked = None
    '''True if the socket is connected 

    :type:  boolean, default False, (readonly) 
    '''

    is_output = None
    '''True if the socket is an output, otherwise input 

    :type:  boolean, default False, (readonly) 
    '''

    link_limit = None
    '''Max number of links allowed for this socket 

    :type:  int in [1, 4095], default 0 
    '''

    name = None
    '''Socket name 

    :type:  string, default “”, (never None) 
    '''

    node = None
    '''Node owning this socket 

    :type:  Node, (readonly) 
    '''

    show_expanded = None
    '''Socket links are expanded in the user interface 

    :type:  boolean, default False 
    '''

    type = None
    '''Data type 

    :type:  enum in [‘CUSTOM’, ‘VALUE’, ‘INT’, ‘BOOLEAN’, ‘VECTOR’, ‘STRING’, ‘RGBA’, ‘SHADER’], default ‘VALUE’ 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''

    def draw(self, context, layout, node, text):
        '''Draw socket 

        :param layout: Layout, Layout in the UI 
        :type layout: UILayout, (never None)
        :param node: Node, Node the socket belongs to 
        :type node: Node, (never None)
        :param text: Text, Text label to draw alongside properties 
        :type text: string, (never None)
        '''
        pass

    def draw_color(self, context, node):
        '''Color of the socket icon 

        :param node: Node, Node the socket belongs to 
        :type node: Node, (never None)
        :rtype: float array of 4 items in [0, 1] 
        :return:  Color 
        '''
        pass


class NodeSocketBool:
    '''Boolean value socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  boolean, default False 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketColor:
    '''RGBA color socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketFloat:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [-inf, inf], default 0.0 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketFloatAngle:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [-inf, inf], default 0.0 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketFloatFactor:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [0, 1], default 0.0 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketFloatPercentage:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [-inf, inf], default 0.0 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketFloatTime:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [-inf, inf], default 0.0 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketFloatUnsigned:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [0, inf], default 0.0 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketInt:
    '''Integer number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  int in [-inf, inf], default 0 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketIntFactor:
    '''Integer number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  int in [0, inf], default 1 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketIntPercentage:
    '''Integer number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  int in [0, inf], default 100 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketIntUnsigned:
    '''Integer number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  int in [0, inf], default 0 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketInterface:
    '''Parameters to define node sockets '''

    bl_socket_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    identifier = None
    '''Unique identifier for mapping sockets 

    :type:  string, default “”, (readonly, never None) 
    '''

    is_output = None
    '''True if the socket is an output, otherwise input 

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''Socket name 

    :type:  string, default “”, (never None) 
    '''

    def draw(self, context, layout):
        '''Draw template settings 

        :param layout: Layout, Layout in the UI 
        :type layout: UILayout, (never None)
        '''
        pass

    def draw_color(self, context):
        '''Color of the socket icon 

        :rtype: float array of 4 items in [0, 1] 
        :return:  Color 
        '''
        pass

    def register_properties(self, data_rna_type):
        '''Define RNA properties of a socket 

        :param data_rna_type: Data RNA Type, RNA type for special socket properties 
        :type data_rna_type: Struct
        '''
        pass

    def init_socket(self, node, socket, data_path):
        '''Initialize a node socket instance 

        :param node: Node, Node of the socket to initialize 
        :type node: Node, (never None)
        :param socket: Socket, Socket to initialize 
        :type socket: NodeSocket, (never None)
        :param data_path: Data Path, Path to specialized socket data 
        :type data_path: string, (never None)
        '''
        pass

    def from_socket(self, node, socket):
        '''Setup template parameters from an existing socket 

        :param node: Node, Node of the original socket 
        :type node: Node, (never None)
        :param socket: Socket, Original socket 
        :type socket: NodeSocket, (never None)
        '''
        pass


class NodeSocketInterfaceBool:
    '''Boolean value socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  boolean, default False 
    '''


class NodeSocketInterfaceColor:
    '''RGBA color socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''


class NodeSocketInterfaceFloat:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [-inf, inf], default 0.0 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceFloatAngle:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [-inf, inf], default 0.0 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceFloatFactor:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [0, 1], default 1.0 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceFloatPercentage:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [-inf, inf], default 100.0 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceFloatTime:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [-inf, inf], default 0.0 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceFloatUnsigned:
    '''Floating point number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float in [0, inf], default 0.0 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceInt:
    '''Integer number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  int in [-inf, inf], default 0 
    '''

    max_value = None
    '''Maximum value 

    :type:  int in [-inf, inf], default 0 
    '''

    min_value = None
    '''Minimum value 

    :type:  int in [-inf, inf], default 0 
    '''


class NodeSocketInterfaceIntFactor:
    '''Integer number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  int in [0, inf], default 0 
    '''

    max_value = None
    '''Maximum value 

    :type:  int in [-inf, inf], default 0 
    '''

    min_value = None
    '''Minimum value 

    :type:  int in [-inf, inf], default 0 
    '''


class NodeSocketInterfaceIntPercentage:
    '''Integer number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  int in [0, inf], default 0 
    '''

    max_value = None
    '''Maximum value 

    :type:  int in [-inf, inf], default 0 
    '''

    min_value = None
    '''Minimum value 

    :type:  int in [-inf, inf], default 0 
    '''


class NodeSocketInterfaceIntUnsigned:
    '''Integer number socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  int in [0, inf], default 0 
    '''

    max_value = None
    '''Maximum value 

    :type:  int in [-inf, inf], default 0 
    '''

    min_value = None
    '''Minimum value 

    :type:  int in [-inf, inf], default 0 
    '''


class NodeSocketInterfaceShader:
    '''Shader socket of a node '''

    pass


class NodeSocketInterfaceStandard:
    type = None
    '''Data type 

    :type:  enum in [‘CUSTOM’, ‘VALUE’, ‘INT’, ‘BOOLEAN’, ‘VECTOR’, ‘STRING’, ‘RGBA’, ‘SHADER’], default ‘VALUE’, (readonly) 
    '''

    def draw(self, context, layout):
        '''Draw template settings 

        :param layout: Layout, Layout in the UI 
        :type layout: UILayout, (never None)
        '''
        pass

    def draw_color(self, context):
        '''Color of the socket icon 

        :rtype: float array of 4 items in [0, 1] 
        :return:  Color 
        '''
        pass


class NodeSocketInterfaceString:
    '''String socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  string, default “”, (never None) 
    '''


class NodeSocketInterfaceVector:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceVectorAcceleration:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceVectorDirection:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceVectorEuler:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceVectorTranslation:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceVectorVelocity:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketInterfaceVectorXYZ:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    max_value = None
    '''Maximum value 

    :type:  float in [-inf, inf], default 0.0 
    '''

    min_value = None
    '''Minimum value 

    :type:  float in [-inf, inf], default 0.0 
    '''


class NodeSocketShader:
    '''Shader socket of a node '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketStandard:
    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''

    def draw(self, context, layout, node, text):
        '''Draw socket 

        :param layout: Layout, Layout in the UI 
        :type layout: UILayout, (never None)
        :param node: Node, Node the socket belongs to 
        :type node: Node, (never None)
        :param text: Text, Text label to draw alongside properties 
        :type text: string, (never None)
        '''
        pass

    def draw_color(self, context, node):
        '''Color of the socket icon 

        :param node: Node, Node the socket belongs to 
        :type node: Node, (never None)
        :rtype: float array of 4 items in [0, 1] 
        :return:  Color 
        '''
        pass


class NodeSocketString:
    '''String socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  string, default “”, (never None) 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketVector:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketVectorAcceleration:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketVectorDirection:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 1.0) 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketVectorEuler:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketVectorTranslation:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketVectorVelocity:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketVectorXYZ:
    '''3D vector socket of a node '''

    default_value = None
    '''Input value used for unconnected socket 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeSocketVirtual:
    '''Virtual socket of a node '''

    links = None
    '''List of node links from or to this socket. Warning: takes O(len(nodetree.links)) time. (readonly) '''


class NodeTree:
    '''Node tree consisting of linked nodes used for shading, textures and compositing '''

    active_input = None
    '''Index of the active input 

    :type:  int in [0, inf], default 0 
    '''

    active_output = None
    '''Index of the active output 

    :type:  int in [0, inf], default 0 
    '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    bl_description = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_icon = None
    '''The node tree icon 

    :type:  enum in [‘NONE’, ‘QUESTION’, ‘ERROR’, ‘CANCEL’, ‘TRIA_RIGHT’, ‘TRIA_DOWN’, ‘TRIA_LEFT’, ‘TRIA_UP’, ‘ARROW_LEFTRIGHT’, ‘PLUS’, ‘DISCLOSURE_TRI_RIGHT’, ‘DISCLOSURE_TRI_DOWN’, ‘RADIOBUT_OFF’, ‘RADIOBUT_ON’, ‘MENU_PANEL’, ‘BLENDER’, ‘GRIP’, ‘DOT’, ‘COLLAPSEMENU’, ‘X’, ‘DUPLICATE’, ‘TRASH’, ‘NODE’, ‘NODE_SEL’, ‘WINDOW’, ‘WORKSPACE’, ‘RIGHTARROW_THIN’, ‘BORDERMOVE’, ‘VIEWZOOM’, ‘ADD’, ‘REMOVE’, ‘PANEL_CLOSE’, ‘COPY_ID’, ‘EYEDROPPER’, ‘AUTO’, ‘CHECKBOX_DEHLT’, ‘CHECKBOX_HLT’, ‘UNLOCKED’, ‘LOCKED’, ‘UNPINNED’, ‘PINNED’, ‘SCREEN_BACK’, ‘RIGHTARROW’, ‘DOWNARROW_HLT’, ‘PLUGIN’, ‘HELP’, ‘GHOST_ENABLED’, ‘COLOR’, ‘UNLINKED’, ‘LINKED’, ‘HAND’, ‘ZOOM_ALL’, ‘ZOOM_SELECTED’, ‘ZOOM_PREVIOUS’, ‘ZOOM_IN’, ‘ZOOM_OUT’, ‘DRIVER_DISTANCE’, ‘DRIVER_ROTATIONAL_DIFFERENCE’, ‘DRIVER_TRANSFORM’, ‘FREEZE’, ‘STYLUS_PRESSURE’, ‘GHOST_DISABLED’, ‘FILE_NEW’, ‘FILE_TICK’, ‘QUIT’, ‘URL’, ‘RECOVER_LAST’, ‘THREE_DOTS’, ‘FULLSCREEN_ENTER’, ‘FULLSCREEN_EXIT’, ‘LIGHT’, ‘MATERIAL’, ‘TEXTURE’, ‘ANIM’, ‘WORLD’, ‘SCENE’, ‘OUTPUT’, ‘SCRIPT’, ‘PARTICLES’, ‘PHYSICS’, ‘SPEAKER’, ‘TOOL_SETTINGS’, ‘SHADERFX’, ‘MODIFIER’, ‘BLANK1’, ‘FAKE_USER_OFF’, ‘FAKE_USER_ON’, ‘VIEW3D’, ‘GRAPH’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILEBROWSER’, ‘IMAGE’, ‘INFO’, ‘SEQUENCE’, ‘TEXT’, ‘SOUND’, ‘ACTION’, ‘NLA’, ‘PREFERENCES’, ‘TIME’, ‘NODETREE’, ‘CONSOLE’, ‘TRACKER’, ‘ASSET_MANAGER’, ‘NODE_COMPOSITING’, ‘NODE_TEXTURE’, ‘NODE_MATERIAL’, ‘UV’, ‘OBJECT_DATAMODE’, ‘EDITMODE_HLT’, ‘UV_DATA’, ‘VPAINT_HLT’, ‘TPAINT_HLT’, ‘WPAINT_HLT’, ‘SCULPTMODE_HLT’, ‘POSE_HLT’, ‘PARTICLEMODE’, ‘TRACKING’, ‘TRACKING_BACKWARDS’, ‘TRACKING_FORWARDS’, ‘TRACKING_BACKWARDS_SINGLE’, ‘TRACKING_FORWARDS_SINGLE’, ‘TRACKING_CLEAR_BACKWARDS’, ‘TRACKING_CLEAR_FORWARDS’, ‘TRACKING_REFINE_BACKWARDS’, ‘TRACKING_REFINE_FORWARDS’, ‘SCENE_DATA’, ‘RENDERLAYERS’, ‘WORLD_DATA’, ‘OBJECT_DATA’, ‘MESH_DATA’, ‘CURVE_DATA’, ‘META_DATA’, ‘LATTICE_DATA’, ‘LIGHT_DATA’, ‘MATERIAL_DATA’, ‘TEXTURE_DATA’, ‘ANIM_DATA’, ‘CAMERA_DATA’, ‘PARTICLE_DATA’, ‘LIBRARY_DATA_DIRECT’, ‘GROUP’, ‘ARMATURE_DATA’, ‘COMMUNITY’, ‘BONE_DATA’, ‘CONSTRAINT’, ‘SHAPEKEY_DATA’, ‘CONSTRAINT_BONE’, ‘CAMERA_STEREO’, ‘PACKAGE’, ‘UGLYPACKAGE’, ‘EXPERIMENTAL’, ‘BRUSH_DATA’, ‘IMAGE_DATA’, ‘FILE’, ‘FCURVE’, ‘FONT_DATA’, ‘RENDER_RESULT’, ‘SURFACE_DATA’, ‘EMPTY_DATA’, ‘PRESET’, ‘RENDER_ANIMATION’, ‘RENDER_STILL’, ‘LIBRARY_DATA_BROKEN’, ‘BOIDS’, ‘STRANDS’, ‘LIBRARY_DATA_INDIRECT’, ‘GREASEPENCIL’, ‘LINE_DATA’, ‘LIBRARY_DATA_OVERRIDE’, ‘GROUP_BONE’, ‘GROUP_VERTEX’, ‘GROUP_VCOL’, ‘GROUP_UVS’, ‘FACE_MAPS’, ‘RNA’, ‘RNA_ADD’, ‘MOUSE_LMB’, ‘MOUSE_MMB’, ‘MOUSE_RMB’, ‘MOUSE_MOVE’, ‘MOUSE_LMB_DRAG’, ‘MOUSE_MMB_DRAG’, ‘MOUSE_RMB_DRAG’, ‘PRESET_NEW’, ‘DECORATE’, ‘DECORATE_KEYFRAME’, ‘DECORATE_ANIMATE’, ‘DECORATE_DRIVER’, ‘DECORATE_LINKED’, ‘DECORATE_LIBRARY_OVERRIDE’, ‘DECORATE_UNLOCKED’, ‘DECORATE_LOCKED’, ‘DECORATE_OVERRIDE’, ‘TRACKER_DATA’, ‘HEART’, ‘ORPHAN_DATA’, ‘USER’, ‘SYSTEM’, ‘SETTINGS’, ‘OUTLINER_OB_EMPTY’, ‘OUTLINER_OB_MESH’, ‘OUTLINER_OB_CURVE’, ‘OUTLINER_OB_LATTICE’, ‘OUTLINER_OB_META’, ‘OUTLINER_OB_LIGHT’, ‘OUTLINER_OB_CAMERA’, ‘OUTLINER_OB_ARMATURE’, ‘OUTLINER_OB_FONT’, ‘OUTLINER_OB_SURFACE’, ‘OUTLINER_OB_SPEAKER’, ‘OUTLINER_OB_FORCE_FIELD’, ‘OUTLINER_OB_GROUP_INSTANCE’, ‘OUTLINER_OB_GREASEPENCIL’, ‘OUTLINER_OB_LIGHTPROBE’, ‘OUTLINER_OB_IMAGE’, ‘RESTRICT_COLOR_OFF’, ‘RESTRICT_COLOR_ON’, ‘HIDE_ON’, ‘HIDE_OFF’, ‘RESTRICT_SELECT_ON’, ‘RESTRICT_SELECT_OFF’, ‘RESTRICT_RENDER_ON’, ‘RESTRICT_RENDER_OFF’, ‘OUTLINER_DATA_EMPTY’, ‘OUTLINER_DATA_MESH’, ‘OUTLINER_DATA_CURVE’, ‘OUTLINER_DATA_LATTICE’, ‘OUTLINER_DATA_META’, ‘OUTLINER_DATA_LIGHT’, ‘OUTLINER_DATA_CAMERA’, ‘OUTLINER_DATA_ARMATURE’, ‘OUTLINER_DATA_FONT’, ‘OUTLINER_DATA_SURFACE’, ‘OUTLINER_DATA_SPEAKER’, ‘OUTLINER_DATA_GREASEPENCIL’, ‘GP_SELECT_POINTS’, ‘GP_SELECT_STROKES’, ‘GP_MULTIFRAME_EDITING’, ‘GP_ONLY_SELECTED’, ‘GP_SELECT_BETWEEN_STROKES’, ‘MODIFIER_OFF’, ‘MODIFIER_ON’, ‘ONIONSKIN_OFF’, ‘ONIONSKIN_ON’, ‘RESTRICT_VIEW_ON’, ‘RESTRICT_VIEW_OFF’, ‘MESH_PLANE’, ‘MESH_CUBE’, ‘MESH_CIRCLE’, ‘MESH_UVSPHERE’, ‘MESH_ICOSPHERE’, ‘MESH_GRID’, ‘MESH_MONKEY’, ‘MESH_CYLINDER’, ‘MESH_TORUS’, ‘MESH_CONE’, ‘MESH_CAPSULE’, ‘EMPTY_SINGLE_ARROW’, ‘LIGHT_POINT’, ‘LIGHT_SUN’, ‘LIGHT_SPOT’, ‘LIGHT_HEMI’, ‘LIGHT_AREA’, ‘CUBE’, ‘SPHERE’, ‘CONE’, ‘META_PLANE’, ‘META_CUBE’, ‘META_BALL’, ‘META_ELLIPSOID’, ‘META_CAPSULE’, ‘SURFACE_NCURVE’, ‘SURFACE_NCIRCLE’, ‘SURFACE_NSURFACE’, ‘SURFACE_NCYLINDER’, ‘SURFACE_NSPHERE’, ‘SURFACE_NTORUS’, ‘EMPTY_AXIS’, ‘STROKE’, ‘EMPTY_ARROWS’, ‘CURVE_BEZCURVE’, ‘CURVE_BEZCIRCLE’, ‘CURVE_NCURVE’, ‘CURVE_NCIRCLE’, ‘CURVE_PATH’, ‘LIGHTPROBE_CUBEMAP’, ‘LIGHTPROBE_PLANAR’, ‘LIGHTPROBE_GRID’, ‘COLOR_RED’, ‘COLOR_GREEN’, ‘COLOR_BLUE’, ‘TRIA_RIGHT_BAR’, ‘TRIA_DOWN_BAR’, ‘TRIA_LEFT_BAR’, ‘TRIA_UP_BAR’, ‘FORCE_FORCE’, ‘FORCE_WIND’, ‘FORCE_VORTEX’, ‘FORCE_MAGNETIC’, ‘FORCE_HARMONIC’, ‘FORCE_CHARGE’, ‘FORCE_LENNARDJONES’, ‘FORCE_TEXTURE’, ‘FORCE_CURVE’, ‘FORCE_BOID’, ‘FORCE_TURBULENCE’, ‘FORCE_DRAG’, ‘FORCE_SMOKEFLOW’, ‘IMAGE_PLANE’, ‘IMAGE_BACKGROUND’, ‘IMAGE_REFERENCE’, ‘NODE_INSERT_ON’, ‘NODE_INSERT_OFF’, ‘NODE_TOP’, ‘NODE_SIDE’, ‘NODE_CORNER’, ‘ALIGN_LEFT’, ‘ALIGN_CENTER’, ‘ALIGN_RIGHT’, ‘ALIGN_JUSTIFY’, ‘ALIGN_FLUSH’, ‘ALIGN_TOP’, ‘ALIGN_MIDDLE’, ‘ALIGN_BOTTOM’, ‘BOLD’, ‘ITALIC’, ‘UNDERLINE’, ‘SMALL_CAPS’, ‘MODIFIER_DATA’, ‘MOD_WAVE’, ‘MOD_BUILD’, ‘MOD_DECIM’, ‘MOD_MIRROR’, ‘MOD_SOFT’, ‘MOD_SUBSURF’, ‘HOOK’, ‘MOD_PHYSICS’, ‘MOD_PARTICLES’, ‘MOD_BOOLEAN’, ‘MOD_EDGESPLIT’, ‘MOD_ARRAY’, ‘MOD_UVPROJECT’, ‘MOD_DISPLACE’, ‘MOD_CURVE’, ‘MOD_LATTICE’, ‘MOD_TINT’, ‘MOD_ARMATURE’, ‘MOD_SHRINKWRAP’, ‘MOD_CAST’, ‘MOD_MESHDEFORM’, ‘MOD_BEVEL’, ‘MOD_SMOOTH’, ‘MOD_SIMPLEDEFORM’, ‘MOD_MASK’, ‘MOD_CLOTH’, ‘MOD_EXPLODE’, ‘MOD_FLUIDSIM’, ‘MOD_MULTIRES’, ‘MOD_SMOKE’, ‘MOD_SOLIDIFY’, ‘MOD_SCREW’, ‘MOD_VERTEX_WEIGHT’, ‘MOD_DYNAMICPAINT’, ‘MOD_REMESH’, ‘MOD_OCEAN’, ‘MOD_WARP’, ‘MOD_SKIN’, ‘MOD_TRIANGULATE’, ‘MOD_WIREFRAME’, ‘MOD_DATA_TRANSFER’, ‘MOD_NORMALEDIT’, ‘MOD_PARTICLE_INSTANCE’, ‘MOD_HUE_SATURATION’, ‘MOD_NOISE’, ‘MOD_OFFSET’, ‘MOD_SIMPLIFY’, ‘MOD_THICKNESS’, ‘MOD_INSTANCE’, ‘MOD_TIME’, ‘MOD_OPACITY’, ‘REC’, ‘PLAY’, ‘FF’, ‘REW’, ‘PAUSE’, ‘PREV_KEYFRAME’, ‘NEXT_KEYFRAME’, ‘PLAY_SOUND’, ‘PLAY_REVERSE’, ‘PREVIEW_RANGE’, ‘ACTION_TWEAK’, ‘PMARKER_ACT’, ‘PMARKER_SEL’, ‘PMARKER’, ‘MARKER_HLT’, ‘MARKER’, ‘KEYFRAME_HLT’, ‘KEYFRAME’, ‘KEYINGSET’, ‘KEY_DEHLT’, ‘KEY_HLT’, ‘MUTE_IPO_OFF’, ‘MUTE_IPO_ON’, ‘VISIBLE_IPO_OFF’, ‘VISIBLE_IPO_ON’, ‘DRIVER’, ‘SOLO_OFF’, ‘SOLO_ON’, ‘FRAME_PREV’, ‘FRAME_NEXT’, ‘NLA_PUSHDOWN’, ‘IPO_CONSTANT’, ‘IPO_LINEAR’, ‘IPO_BEZIER’, ‘IPO_SINE’, ‘IPO_QUAD’, ‘IPO_CUBIC’, ‘IPO_QUART’, ‘IPO_QUINT’, ‘IPO_EXPO’, ‘IPO_CIRC’, ‘IPO_BOUNCE’, ‘IPO_ELASTIC’, ‘IPO_BACK’, ‘IPO_EASE_IN’, ‘IPO_EASE_OUT’, ‘IPO_EASE_IN_OUT’, ‘NORMALIZE_FCURVES’, ‘VERTEXSEL’, ‘EDGESEL’, ‘FACESEL’, ‘PIVOT_BOUNDBOX’, ‘PIVOT_CURSOR’, ‘PIVOT_INDIVIDUAL’, ‘PIVOT_MEDIAN’, ‘PIVOT_ACTIVE’, ‘CENTER_ONLY’, ‘ROOTCURVE’, ‘SMOOTHCURVE’, ‘SPHERECURVE’, ‘INVERSESQUARECURVE’, ‘SHARPCURVE’, ‘LINCURVE’, ‘NOCURVE’, ‘RNDCURVE’, ‘PROP_OFF’, ‘PROP_ON’, ‘PROP_CON’, ‘PROP_PROJECTED’, ‘PARTICLE_POINT’, ‘PARTICLE_TIP’, ‘PARTICLE_PATH’, ‘SNAP_OFF’, ‘SNAP_ON’, ‘SNAP_NORMAL’, ‘SNAP_GRID’, ‘SNAP_VERTEX’, ‘SNAP_EDGE’, ‘SNAP_FACE’, ‘SNAP_VOLUME’, ‘SNAP_INCREMENT’, ‘STICKY_UVS_LOC’, ‘STICKY_UVS_DISABLE’, ‘STICKY_UVS_VERT’, ‘CLIPUV_DEHLT’, ‘CLIPUV_HLT’, ‘SNAP_PEEL_OBJECT’, ‘GRID’, ‘OBJECT_ORIGIN’, ‘ORIENTATION_GLOBAL’, ‘ORIENTATION_GIMBAL’, ‘ORIENTATION_LOCAL’, ‘ORIENTATION_NORMAL’, ‘ORIENTATION_VIEW’, ‘COPYDOWN’, ‘PASTEDOWN’, ‘PASTEFLIPUP’, ‘PASTEFLIPDOWN’, ‘VIS_SEL_11’, ‘VIS_SEL_10’, ‘VIS_SEL_01’, ‘VIS_SEL_00’, ‘AUTOMERGE_ON’, ‘AUTOMERGE_OFF’, ‘UV_VERTEXSEL’, ‘UV_EDGESEL’, ‘UV_FACESEL’, ‘UV_ISLANDSEL’, ‘UV_SYNC_SELECT’, ‘ORIENTATION_CURSOR’, ‘NORMALS_VERTEX’, ‘NORMALS_FACE’, ‘NORMALS_VERTEX_FACE’, ‘SHADING_BBOX’, ‘SHADING_WIRE’, ‘SHADING_SOLID’, ‘SHADING_RENDERED’, ‘SHADING_TEXTURE’, ‘OVERLAY’, ‘XRAY’, ‘LOCKVIEW_OFF’, ‘LOCKVIEW_ON’, ‘AXIS_SIDE’, ‘AXIS_FRONT’, ‘AXIS_TOP’, ‘NDOF_DOM’, ‘NDOF_TURN’, ‘NDOF_FLY’, ‘NDOF_TRANS’, ‘LAYER_USED’, ‘LAYER_ACTIVE’, ‘SORTALPHA’, ‘SORTBYEXT’, ‘SORTTIME’, ‘SORTSIZE’, ‘SHORTDISPLAY’, ‘LONGDISPLAY’, ‘IMGDISPLAY’, ‘BOOKMARKS’, ‘FONTPREVIEW’, ‘FILTER’, ‘NEWFOLDER’, ‘FILE_PARENT’, ‘FILE_REFRESH’, ‘FILE_FOLDER’, ‘FILE_BLANK’, ‘FILE_BLEND’, ‘FILE_IMAGE’, ‘FILE_MOVIE’, ‘FILE_SCRIPT’, ‘FILE_SOUND’, ‘FILE_FONT’, ‘FILE_TEXT’, ‘SORT_DESC’, ‘SORT_ASC’, ‘LINK_BLEND’, ‘APPEND_BLEND’, ‘IMPORT’, ‘EXPORT’, ‘LOOP_BACK’, ‘LOOP_FORWARDS’, ‘BACK’, ‘FORWARD’, ‘FILE_VOLUME’, ‘ALEMBIC’, ‘VOLUME’, ‘FILE_HIDDEN’, ‘FILE_BACKUP’, ‘DISK_DRIVE’, ‘MATPLANE’, ‘MATSPHERE’, ‘MATCUBE’, ‘MONKEY’, ‘HAIR’, ‘ALIASED’, ‘ANTIALIASED’, ‘MAT_SPHERE_SKY’, ‘MATSHADERBALL’, ‘MATCLOTH’, ‘MATFLUID’, ‘WORDWRAP_OFF’, ‘WORDWRAP_ON’, ‘SYNTAX_OFF’, ‘SYNTAX_ON’, ‘LINENUMBERS_OFF’, ‘LINENUMBERS_ON’, ‘SCRIPTPLUGINS’, ‘SEQ_SEQUENCER’, ‘SEQ_PREVIEW’, ‘SEQ_LUMA_WAVEFORM’, ‘SEQ_CHROMA_SCOPE’, ‘SEQ_HISTOGRAM’, ‘SEQ_SPLITVIEW’, ‘IMAGE_RGB’, ‘IMAGE_RGB_ALPHA’, ‘IMAGE_ALPHA’, ‘IMAGE_ZDEPTH’, ‘VIEW_PERSPECTIVE’, ‘VIEW_ORTHO’, ‘VIEW_CAMERA’, ‘VIEW_PAN’, ‘VIEW_ZOOM’, ‘BRUSH_BLOB’, ‘BRUSH_BLUR’, ‘BRUSH_CLAY’, ‘BRUSH_CLAY_STRIPS’, ‘BRUSH_CLONE’, ‘BRUSH_CREASE’, ‘BRUSH_FILL’, ‘BRUSH_FLATTEN’, ‘BRUSH_GRAB’, ‘BRUSH_INFLATE’, ‘BRUSH_LAYER’, ‘BRUSH_MASK’, ‘BRUSH_MIX’, ‘BRUSH_NUDGE’, ‘BRUSH_PINCH’, ‘BRUSH_SCRAPE’, ‘BRUSH_SCULPT_DRAW’, ‘BRUSH_SMEAR’, ‘BRUSH_SMOOTH’, ‘BRUSH_SNAKE_HOOK’, ‘BRUSH_SOFTEN’, ‘BRUSH_TEXDRAW’, ‘BRUSH_TEXFILL’, ‘BRUSH_TEXMASK’, ‘BRUSH_THUMB’, ‘BRUSH_ROTATE’, ‘GPBRUSH_SMOOTH’, ‘GPBRUSH_THICKNESS’, ‘GPBRUSH_STRENGTH’, ‘GPBRUSH_GRAB’, ‘GPBRUSH_PUSH’, ‘GPBRUSH_TWIST’, ‘GPBRUSH_PINCH’, ‘GPBRUSH_RANDOMIZE’, ‘GPBRUSH_CLONE’, ‘GPBRUSH_WEIGHT’, ‘GPBRUSH_PENCIL’, ‘GPBRUSH_PEN’, ‘GPBRUSH_INK’, ‘GPBRUSH_INKNOISE’, ‘GPBRUSH_BLOCK’, ‘GPBRUSH_MARKER’, ‘GPBRUSH_FILL’, ‘GPBRUSH_ERASE_SOFT’, ‘GPBRUSH_ERASE_HARD’, ‘GPBRUSH_ERASE_STROKE’, ‘SMALL_TRI_RIGHT_VEC’, ‘KEYTYPE_KEYFRAME_VEC’, ‘KEYTYPE_BREAKDOWN_VEC’, ‘KEYTYPE_EXTREME_VEC’, ‘KEYTYPE_JITTER_VEC’, ‘KEYTYPE_MOVING_HOLD_VEC’, ‘HANDLETYPE_FREE_VEC’, ‘HANDLETYPE_ALIGNED_VEC’, ‘HANDLETYPE_VECTOR_VEC’, ‘HANDLETYPE_AUTO_VEC’, ‘HANDLETYPE_AUTO_CLAMP_VEC’, ‘COLORSET_01_VEC’, ‘COLORSET_02_VEC’, ‘COLORSET_03_VEC’, ‘COLORSET_04_VEC’, ‘COLORSET_05_VEC’, ‘COLORSET_06_VEC’, ‘COLORSET_07_VEC’, ‘COLORSET_08_VEC’, ‘COLORSET_09_VEC’, ‘COLORSET_10_VEC’, ‘COLORSET_11_VEC’, ‘COLORSET_12_VEC’, ‘COLORSET_13_VEC’, ‘COLORSET_14_VEC’, ‘COLORSET_15_VEC’, ‘COLORSET_16_VEC’, ‘COLORSET_17_VEC’, ‘COLORSET_18_VEC’, ‘COLORSET_19_VEC’, ‘COLORSET_20_VEC’, ‘EVENT_A’, ‘EVENT_B’, ‘EVENT_C’, ‘EVENT_D’, ‘EVENT_E’, ‘EVENT_F’, ‘EVENT_G’, ‘EVENT_H’, ‘EVENT_I’, ‘EVENT_J’, ‘EVENT_K’, ‘EVENT_L’, ‘EVENT_M’, ‘EVENT_N’, ‘EVENT_O’, ‘EVENT_P’, ‘EVENT_Q’, ‘EVENT_R’, ‘EVENT_S’, ‘EVENT_T’, ‘EVENT_U’, ‘EVENT_V’, ‘EVENT_W’, ‘EVENT_X’, ‘EVENT_Y’, ‘EVENT_Z’, ‘EVENT_SHIFT’, ‘EVENT_CTRL’, ‘EVENT_ALT’, ‘EVENT_OS’, ‘EVENT_F1’, ‘EVENT_F2’, ‘EVENT_F3’, ‘EVENT_F4’, ‘EVENT_F5’, ‘EVENT_F6’, ‘EVENT_F7’, ‘EVENT_F8’, ‘EVENT_F9’, ‘EVENT_F10’, ‘EVENT_F11’, ‘EVENT_F12’, ‘EVENT_ESC’, ‘EVENT_TAB’, ‘EVENT_PAGEUP’, ‘EVENT_PAGEDOWN’, ‘EVENT_RETURN’], default ‘NODETREE’ 
    '''

    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''The node tree label 

    :type:  string, default “”, (never None) 
    '''

    grease_pencil = None
    '''Grease Pencil data-block 

    :type:  GreasePencil 
    '''

    inputs = None
    '''Node tree inputs 

    :type:  NodeTreeInputs bpy_prop_collection of NodeSocketInterface, (readonly) 
    '''

    links = None
    '''

    :type:  NodeLinks bpy_prop_collection of NodeLink, (readonly) 
    '''

    nodes = None
    '''

    :type:  Nodes bpy_prop_collection of Node, (readonly) 
    '''

    outputs = None
    '''Node tree outputs 

    :type:  NodeTreeOutputs bpy_prop_collection of NodeSocketInterface, (readonly) 
    '''

    type = None
    '''Node Tree type (deprecated, bl_idname is the actual node tree type identifier) 

    :type:  enum in [‘SHADER’, ‘TEXTURE’, ‘COMPOSITING’], default ‘SHADER’, (readonly) 
    '''

    view_center = None
    '''

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''

    def interface_update(self, context):
        '''Updated node group interface 

        '''
        pass

    def update(self):
        '''Update on editor changes 

        '''
        pass


class NodeTreeInputs:
    '''Collection of Node Tree Sockets '''

    def new(self, type, name):
        '''Add a socket to this node tree 

        :param type: Type, Data type 
        :type type: string, (never None)
        :param name: Name 
        :type name: string, (never None)
        :rtype: NodeSocketInterface 
        :return:  New socket 
        '''
        pass

    def remove(self, socket):
        '''Remove a socket from this node tree 

        :param socket: The socket to remove 
        :type socket: NodeSocketInterface
        '''
        pass

    def clear(self):
        '''Remove all sockets from this node tree 

        '''
        pass

    def move(self, from_index, to_index):
        '''Move a socket to another position 

        :param from_index: From Index, Index of the socket to move 
        :type from_index: int in [0, inf]
        :param to_index: To Index, Target index for the socket 
        :type to_index: int in [0, inf]
        '''
        pass


class NodeTreeOutputs:
    '''Collection of Node Tree Sockets '''

    def new(self, type, name):
        '''Add a socket to this node tree 

        :param type: Type, Data type 
        :type type: string, (never None)
        :param name: Name 
        :type name: string, (never None)
        :rtype: NodeSocketInterface 
        :return:  New socket 
        '''
        pass

    def remove(self, socket):
        '''Remove a socket from this node tree 

        :param socket: The socket to remove 
        :type socket: NodeSocketInterface
        '''
        pass

    def clear(self):
        '''Remove all sockets from this node tree 

        '''
        pass

    def move(self, from_index, to_index):
        '''Move a socket to another position 

        :param from_index: From Index, Index of the socket to move 
        :type from_index: int in [0, inf]
        :param to_index: To Index, Target index for the socket 
        :type to_index: int in [0, inf]
        '''
        pass


class NodeTreePath:
    '''Element of the node space tree path '''

    node_tree = None
    '''Base node tree from context 

    :type:  NodeTree, (readonly) 
    '''


class Nodes:
    '''Collection of Nodes '''

    active = None
    '''Active node in this tree 

    :type:  Node 
    '''

    def new(self, type):
        '''Add a node to this node tree 

        :param type: Type, Type of node to add (Warning: should be same as node.bl_idname, not node.type!) 
        :type type: string, (never None)
        :rtype: Node 
        :return:  New node 
        '''
        pass

    def remove(self, node):
        '''Remove a node from this node tree 

        :param node: The node to remove 
        :type node: Node, (never None)
        '''
        pass

    def clear(self):
        '''Remove all nodes from this node tree 

        '''
        pass


class NoiseGpencilModifier:
    '''Noise effect modifier '''

    factor = None
    '''Amount of noise to apply 

    :type:  float in [0, 30], default 0.0 
    '''

    full_stroke = None
    '''The noise moves the stroke as a whole, not point by point 

    :type:  boolean, default False 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_vertex = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    move_extreme = None
    '''The noise moves the stroke extreme points 

    :type:  boolean, default False 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    random = None
    '''Use random values 

    :type:  boolean, default False 
    '''

    step = None
    '''Number of frames before recalculate random values again 

    :type:  int in [1, 100], default 0 
    '''

    use_edit_position = None
    '''The modifier affects the position of the point 

    :type:  boolean, default False 
    '''

    use_edit_strength = None
    '''The modifier affects the color strength of the point 

    :type:  boolean, default False 
    '''

    use_edit_thickness = None
    '''The modifier affects the thickness of the point 

    :type:  boolean, default False 
    '''

    use_edit_uv = None
    '''The modifier affects the UV rotation factor of the point 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name for modulating the deform 

    :type:  string, default “”, (never None) 
    '''


class NoiseTexture:
    '''Procedural noise texture '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class NormalEditModifier:
    '''Modifier affecting/generating custom normals '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    mix_factor = None
    '''How much of generated normals to mix with exiting ones 

    :type:  float in [0, 1], default 1.0 
    '''

    mix_limit = None
    '''Maximum angle between old and new normals 

    :type:  float in [0, 3.14159], default 1.0 
    '''

    mix_mode = None
    '''How to mix generated normals with existing ones 

    :type:  enum in [‘COPY’, ‘ADD’, ‘SUB’, ‘MUL’], default ‘COPY’ 
    '''

    mode = None
    '''How to affect (generate) normals 

    :type:  enum in [‘RADIAL’, ‘DIRECTIONAL’], default ‘RADIAL’ 
    '''

    no_polynors_fix = None
    '''Do not flip polygons when their normals are not consistent with their newly computed custom vertex normals 

    :type:  boolean, default False 
    '''

    offset = None
    '''Offset from object’s center 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    target = None
    '''Target object used to affect normals 

    :type:  Object 
    '''

    use_direction_parallel = None
    '''Use same direction for all normals, from origin to target’s center (Directional mode only) 

    :type:  boolean, default True 
    '''

    vertex_group = None
    '''Vertex group name for selecting/weighting the affected areas 

    :type:  string, default “”, (never None) 
    '''


class Object:
    '''Object data-block defining an object in a scene '''

    active_material = None
    '''Active material being displayed 

    :type:  Material 
    '''

    active_material_index = None
    '''Index of active material slot 

    :type:  int in [0, inf], default 0 
    '''

    active_shape_key = None
    '''Current shape key 

    :type:  ShapeKey, (readonly) 
    '''

    active_shape_key_index = None
    '''Current shape key index 

    :type:  int in [-32768, 32767], default 0 
    '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    animation_visualization = None
    '''Animation data for this data-block 

    :type:  AnimViz, (readonly, never None) 
    '''

    bound_box = None
    '''Object’s bounding box in object-space coordinates, all values are -1.0 when not available 

    :type:  float multi-dimensional array of 8 * 3 items in [-inf, inf], default ((0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0)), (readonly) 
    '''

    collision = None
    '''Settings for using the object as a collider in physics simulation 

    :type:  CollisionSettings, (readonly) 
    '''

    color = None
    '''Object color and alpha, used when faces have the ObColor mode enabled 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    constraints = None
    '''Constraints affecting the transformation of the object 

    :type:  ObjectConstraints bpy_prop_collection of Constraint, (readonly) 
    '''

    cycles = None
    '''Cycles object settings 

    :type:  CyclesObjectSettings, (readonly) 
    '''

    cycles_visibility = None
    '''Cycles visibility settings 

    :type:  CyclesVisibilitySettings, (readonly) 
    '''

    data = None
    '''Object data 

    :type:  ID 
    '''

    delta_location = None
    '''Extra translation added to the location of the object 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    delta_rotation_euler = None
    '''Extra rotation added to the rotation of the object (when using Euler rotations) 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    delta_rotation_quaternion = None
    '''Extra rotation added to the rotation of the object (when using Quaternion rotations) 

    :type:  float array of 4 items in [-inf, inf], default (1.0, 0.0, 0.0, 0.0) 
    '''

    delta_scale = None
    '''Extra scaling added to the scale of the object 

    :type:  float array of 3 items in [-inf, inf], default (1.0, 1.0, 1.0) 
    '''

    dimensions = None
    '''Absolute bounding box dimensions of the object (WARNING: assigning to it or its members mutiple consecutive times will not work correctly, as this needs up-to-date evaluated data) 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    display = None
    '''Object display settings for 3d viewport 

    :type:  ObjectDisplay, (readonly, never None) 
    '''

    display_bounds_type = None
    '''Object boundary display type 

    :type:  enum in [‘BOX’, ‘SPHERE’, ‘CYLINDER’, ‘CONE’, ‘CAPSULE’], default ‘BOX’ 
    '''

    display_type = None
    '''How to display object in viewport 

    :type:  enum in [‘BOUNDS’, ‘WIRE’, ‘SOLID’, ‘TEXTURED’], default ‘BOUNDS’ 
    '''

    empty_display_size = None
    '''Size of display for empties in the viewport 

    :type:  float in [0.0001, 1000], default 0.0 
    '''

    empty_display_type = None
    '''Viewport display style for empties 

    :type:  enum in [‘PLAIN_AXES’, ‘ARROWS’, ‘SINGLE_ARROW’, ‘CIRCLE’, ‘CUBE’, ‘SPHERE’, ‘CONE’, ‘IMAGE’], default ‘PLAIN_AXES’ 
    '''

    empty_image_depth = None
    '''Determine which other objects will occlude the image 

    :type:  enum in [‘DEFAULT’, ‘FRONT’, ‘BACK’], default ‘DEFAULT’ 
    '''

    empty_image_offset = None
    '''Origin offset distance 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    empty_image_side = None
    '''Show front/back side 

    :type:  enum in [‘DOUBLE_SIDED’, ‘FRONT’, ‘BACK’], default ‘DOUBLE_SIDED’ 
    '''

    face_maps = None
    '''Maps of faces of the object 

    :type:  FaceMaps bpy_prop_collection of FaceMap, (readonly) 
    '''

    field = None
    '''Settings for using the object as a field in physics simulation 

    :type:  FieldSettings, (readonly) 
    '''

    grease_pencil_modifiers = None
    '''Modifiers affecting the data of the grease pencil object 

    :type:  ObjectGpencilModifiers bpy_prop_collection of GpencilModifier, (readonly) 
    '''

    hide_render = None
    '''Disable object in renders 

    :type:  boolean, default False 
    '''

    hide_select = None
    '''Disable object selection in the viewport 

    :type:  boolean, default False 
    '''

    hide_viewport = None
    '''Disable object in the viewport 

    :type:  boolean, default False 
    '''

    image_user = None
    '''Parameters defining which layer, pass and frame of the image is displayed 

    :type:  ImageUser, (readonly, never None) 
    '''

    instance_collection = None
    '''Instance an existing collection 

    :type:  Collection 
    '''

    instance_faces_scale = None
    '''Scale the face instance objects 

    :type:  float in [0.001, 10000], default 0.0 
    '''

    instance_type = None
    '''If not None, object instancing method to use 

    :type:  enum in [‘NONE’, ‘VERTS’, ‘FACES’, ‘COLLECTION’], default ‘NONE’ 
    '''

    is_from_instancer = None
    '''Object comes from a instancer 

    :type:  boolean, default False, (readonly) 
    '''

    is_from_set = None
    '''Object comes from a background set 

    :type:  boolean, default False, (readonly) 
    '''

    is_instancer = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    location = None
    '''Location of the object 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    lock_location = None
    '''Lock editing of location in the interface 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    lock_rotation = None
    '''Lock editing of rotation in the interface 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    lock_rotation_w = None
    '''Lock editing of ‘angle’ component of four-component rotations in the interface 

    :type:  boolean, default False 
    '''

    lock_rotations_4d = None
    '''Lock editing of four component rotations by components (instead of as Eulers) 

    :type:  boolean, default False 
    '''

    lock_scale = None
    '''Lock editing of scale in the interface 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    material_slots = None
    '''Material slots in the object 

    :type:  bpy_prop_collection of MaterialSlot, (readonly) 
    '''

    matrix_basis = None
    '''Matrix access to location, rotation and scale (including deltas), before constraints and parenting are applied 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    matrix_local = None
    '''Parent relative transformation matrix - WARNING: Only takes into account ‘Object’ parenting, so e.g. in case of bone parenting you get a matrix relative to the Armature object, not to the actual parent bone 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    matrix_parent_inverse = None
    '''Inverse of object’s parent matrix at time of parenting 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    matrix_world = None
    '''Worldspace transformation matrix 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    mode = None
    '''Object interaction mode 

    :type:  enum in [‘OBJECT’, ‘EDIT’, ‘POSE’, ‘SCULPT’, ‘VERTEX_PAINT’, ‘WEIGHT_PAINT’, ‘TEXTURE_PAINT’, ‘PARTICLE_EDIT’, ‘EDIT_GPENCIL’, ‘SCULPT_GPENCIL’, ‘PAINT_GPENCIL’, ‘WEIGHT_GPENCIL’], default ‘OBJECT’, (readonly) 
    '''

    modifiers = None
    '''Modifiers affecting the geometric data of the object 

    :type:  ObjectModifiers bpy_prop_collection of Modifier, (readonly) 
    '''

    motion_path = None
    '''Motion Path for this element 

    :type:  MotionPath, (readonly) 
    '''

    parent = None
    '''Parent Object 

    :type:  Object 
    '''

    parent_bone = None
    '''Name of parent bone in case of a bone parenting relation 

    :type:  string, default “”, (never None) 
    '''

    parent_type = None
    '''Type of parent relation 

    :type:  enum in [‘OBJECT’, ‘ARMATURE’, ‘LATTICE’, ‘VERTEX’, ‘VERTEX_3’, ‘BONE’], default ‘OBJECT’ 
    '''

    parent_vertices = None
    '''Indices of vertices in case of a vertex parenting relation 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0) 
    '''

    particle_systems = None
    '''Particle systems emitted from the object 

    :type:  ParticleSystems bpy_prop_collection of ParticleSystem, (readonly) 
    '''

    pass_index = None
    '''Index number for the “Object Index” render pass 

    :type:  int in [0, 32767], default 0 
    '''

    pose = None
    '''Current pose for armatures 

    :type:  Pose, (readonly) 
    '''

    pose_library = None
    '''Action used as a pose library for armatures 

    :type:  Action 
    '''

    proxy = None
    '''Library object this proxy object controls 

    :type:  Object, (readonly) 
    '''

    proxy_collection = None
    '''Library collection duplicator object this proxy object controls 

    :type:  Object, (readonly) 
    '''

    rigid_body = None
    '''Settings for rigid body simulation 

    :type:  RigidBodyObject, (readonly) 
    '''

    rigid_body_constraint = None
    '''Constraint constraining rigid bodies 

    :type:  RigidBodyConstraint, (readonly) 
    '''

    rotation_axis_angle = None
    '''Angle of Rotation for Axis-Angle rotation representation 

    :type:  float array of 4 items in [-inf, inf], default (0.0, 0.0, 1.0, 0.0) 
    '''

    rotation_euler = None
    '''Rotation in Eulers 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    rotation_mode = None
    '''

    :type:  enum in [‘QUATERNION’, ‘XYZ’, ‘XZY’, ‘YXZ’, ‘YZX’, ‘ZXY’, ‘ZYX’, ‘AXIS_ANGLE’], default ‘QUATERNION’ 
    '''

    rotation_quaternion = None
    '''Rotation in Quaternions 

    :type:  float array of 4 items in [-inf, inf], default (1.0, 0.0, 0.0, 0.0) 
    '''

    scale = None
    '''Scaling of the object 

    :type:  float array of 3 items in [-inf, inf], default (1.0, 1.0, 1.0) 
    '''

    shader_effects = None
    '''Effects affecting display of object 

    :type:  ObjectShaderFx bpy_prop_collection of ShaderFx, (readonly) 
    '''

    show_all_edges = None
    '''Display all edges for mesh objects 

    :type:  boolean, default False 
    '''

    show_axis = None
    '''Display the object’s origin and axes 

    :type:  boolean, default False 
    '''

    show_bounds = None
    '''Display the object’s bounds 

    :type:  boolean, default False 
    '''

    show_empty_image_orthographic = None
    '''Display image in orthographic mode 

    :type:  boolean, default False 
    '''

    show_empty_image_perspective = None
    '''Display image in perspective mode 

    :type:  boolean, default False 
    '''

    show_in_front = None
    '''Make the object draw in front of others 

    :type:  boolean, default False 
    '''

    show_instancer_for_render = None
    '''Make instancer visible when rendering 

    :type:  boolean, default False 
    '''

    show_instancer_for_viewport = None
    '''Make instancer visible in the viewport 

    :type:  boolean, default False 
    '''

    show_name = None
    '''Display the object’s name 

    :type:  boolean, default False 
    '''

    show_only_shape_key = None
    '''Always show the current Shape for this Object 

    :type:  boolean, default False 
    '''

    show_texture_space = None
    '''Display the object’s texture space 

    :type:  boolean, default False 
    '''

    show_transparent = None
    '''Display material transparency in the object 

    :type:  boolean, default False 
    '''

    show_wire = None
    '''Add the object’s wireframe over solid drawing 

    :type:  boolean, default False 
    '''

    soft_body = None
    '''Settings for soft body simulation 

    :type:  SoftBodySettings, (readonly) 
    '''

    track_axis = None
    '''Axis that points in ‘forward’ direction (applies to InstanceFrame when parent ‘Follow’ is enabled) 

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''

    type = None
    '''Type of Object 

    :type:  enum in [‘MESH’, ‘CURVE’, ‘SURFACE’, ‘META’, ‘FONT’, ‘ARMATURE’, ‘LATTICE’, ‘EMPTY’, ‘GPENCIL’, ‘CAMERA’, ‘LIGHT’, ‘SPEAKER’, ‘LIGHT_PROBE’], default ‘EMPTY’, (readonly) 
    '''

    up_axis = None
    '''Axis that points in the upward direction (applies to InstanceFrame when parent ‘Follow’ is enabled) 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    use_dynamic_topology_sculpting = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    use_empty_image_alpha = None
    '''Use alpha blending instead of alpha test (can produce sorting artifacts) 

    :type:  boolean, default False 
    '''

    use_instance_faces_scale = None
    '''Scale instance based on face size 

    :type:  boolean, default False 
    '''

    use_instance_vertices_rotation = None
    '''Rotate instance according to vertex normal 

    :type:  boolean, default False 
    '''

    use_shape_key_edit_mode = None
    '''Apply shape keys in edit mode (for Meshes only) 

    :type:  boolean, default False 
    '''

    vertex_groups = None
    '''Vertex groups of the object 

    :type:  VertexGroups bpy_prop_collection of VertexGroup, (readonly) 
    '''

    children = None
    '''All the children of this object. Warning: takes O(len(bpy.data.objects)) time. (readonly) '''

    users_collection = None
    '''The collections this object is in. Warning: takes O(len(bpy.data.collections) + len(bpy.data.scenes)) time. (readonly) '''

    users_scene = None
    '''The scenes this object is in. Warning: takes O(len(bpy.data.scenes) * len(bpy.data.objects)) time. (readonly) '''

    def select_get(self, view_layer=None):
        '''Test if the object is selected. The selection state is per view layer 

        :param view_layer: Use this instead of the active view layer 
        :type view_layer: ViewLayer, (optional)
        :rtype: boolean 
        :return:  Object selected 
        '''
        pass

    def select_set(self, state, view_layer=None):
        '''Select or deselect the object. The selection state is per view layer 

        :param state: Selection state to define 
        :type state: boolean
        :param view_layer: Use this instead of the active view layer 
        :type view_layer: ViewLayer, (optional)
        '''
        pass

    def hide_get(self, view_layer=None):
        '''Test if the object is hidden for viewport editing. This hiding state is per view layer 

        :param view_layer: Use this instead of the active view layer 
        :type view_layer: ViewLayer, (optional)
        :rtype: boolean 
        :return:  Object hideed 
        '''
        pass

    def hide_set(self, state, view_layer=None):
        '''Hide the object for viewport editing. This hiding state is per view layer 

        :param state: Hide state to define 
        :type state: boolean
        :param view_layer: Use this instead of the active view layer 
        :type view_layer: ViewLayer, (optional)
        '''
        pass

    def visible_get(self, view_layer=None, viewport=None):
        '''Test if the object is visible in the 3D viewport, taking into account all visibility settings 

        :param view_layer: Use this instead of the active view layer 
        :type view_layer: ViewLayer, (optional)
        :param viewport: Use this instead of the active 3D viewport 
        :type viewport: SpaceView3D, (optional)
        :rtype: boolean 
        :return:  Object visible 
        '''
        pass

    def holdout_get(self, view_layer=None):
        '''Test if object is masked in the view layer 

        :param view_layer: Use this instead of the active view layer 
        :type view_layer: ViewLayer, (optional)
        :rtype: boolean 
        :return:  Object holdout 
        '''
        pass

    def indirect_only_get(self, view_layer=None):
        '''Test if object is set to contribute only indirectly (through shadows and reflections) in the view layer 

        :param view_layer: Use this instead of the active view layer 
        :type view_layer: ViewLayer, (optional)
        :rtype: boolean 
        :return:  Object indirect only 
        '''
        pass

    def local_view_get(self, viewport):
        '''Get the local view state for this object 

        :param viewport: Viewport in local view 
        :type viewport: SpaceView3D
        :rtype: boolean 
        :return:  Object local view state 
        '''
        pass

    def local_view_set(self, viewport, state):
        '''Set the local view state for this object 

        :param viewport: Viewport in local view 
        :type viewport: SpaceView3D
        :param state: Local view state to define 
        :type state: boolean
        '''
        pass

    def convert_space(self,
                      pose_bone=None,
                      matrix=((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0),
                              (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)),
                      from_space='WORLD',
                      to_space='WORLD'):
        '''Convert (transform) the given matrix from one space to another 

        :param pose_bone: Bone to use to define spaces (may be None, in which case only the two ‘WORLD’ and ‘LOCAL’ spaces are usable) 
        :type pose_bone: PoseBone, (optional)
        :param matrix: The matrix to transform 
        :type matrix: float multi-dimensional array of 4 * 4 items in [-inf, inf], (optional)
        :param from_space: The space in which ‘matrix’ is currentlyWORLD World Space, The most global space in Blender.POSE Pose Space, The pose space of a bone (its armature’s object space).LOCAL_WITH_PARENT Local With Parent, The rest pose local space of a bone (thus matrix includes parent transforms).LOCAL Local Space, The local space of an object/bone. 
        :type from_space: enum in ['WORLD', 'POSE', 'LOCAL_WITH_PARENT', 'LOCAL'], (optional)
        :param to_space: The space to which you want to transform ‘matrix’WORLD World Space, The most global space in Blender.POSE Pose Space, The pose space of a bone (its armature’s object space).LOCAL_WITH_PARENT Local With Parent, The rest pose local space of a bone (thus matrix includes parent transforms).LOCAL Local Space, The local space of an object/bone. 
        :type to_space: enum in ['WORLD', 'POSE', 'LOCAL_WITH_PARENT', 'LOCAL'], (optional)
        :rtype: float multi-dimensional array of 4 * 4 items in [-inf, inf] 
        :return:  The transformed matrix 
        '''
        pass

    def calc_matrix_camera(self, depsgraph, x=1, y=1, scale_x=1.0,
                           scale_y=1.0):
        '''Generate the camera projection matrix of this object (mostly useful for Camera and Light types) 

        :param depsgraph: Depsgraph to get evaluated data from 
        :type depsgraph: Depsgraph
        :param x: Width of the render area 
        :type x: int in [0, inf], (optional)
        :param y: Height of the render area 
        :type y: int in [0, inf], (optional)
        :param scale_x: Width scaling factor 
        :type scale_x: float in [1e-06, inf], (optional)
        :param scale_y: Height scaling factor 
        :type scale_y: float in [1e-06, inf], (optional)
        :rtype: float multi-dimensional array of 4 * 4 items in [-inf, inf] 
        :return:  The camera projection matrix 
        '''
        pass

    def camera_fit_coords(self, depsgraph, coordinates):
        '''Compute the coordinate (and scale for ortho cameras) given object should be to ‘see’ all given coordinates 

        :param depsgraph: Depsgraph to get evaluated data from 
        :type depsgraph: Depsgraph
        :param coordinates: Coordinates to fit in 
        :type coordinates: float array of 1 items in [-inf, inf], (never None)
        '''
        pass

    def to_mesh(self, depsgraph, apply_modifiers, calc_undeformed=False):
        '''Create a Mesh data-block with modifiers applied 

        :param depsgraph: Dependency Graph, Evaluated dependency graph within which to evaluate modifiers 
        :type depsgraph: Depsgraph, (never None)
        :param apply_modifiers: Apply modifiers 
        :type apply_modifiers: boolean
        :param calc_undeformed: Calculate Undeformed, Calculate undeformed vertex coordinates 
        :type calc_undeformed: boolean, (optional)
        :rtype: Mesh 
        :return:  Mesh created from object, remove it if it is only used for export 
        '''
        pass

    def find_armature(self):
        '''Find armature influencing this object as a parent or via a modifier 

        :rtype: Object 
        :return:  Armature object influencing this object or NULL 
        '''
        pass

    def shape_key_add(self, name="Key", from_mix=True):
        '''Add shape key to this object 

        :param name: Unique name for the new keyblock 
        :type name: string, (optional, never None)
        :param from_mix: Create new shape from existing mix of shapes 
        :type from_mix: boolean, (optional)
        :rtype: ShapeKey 
        :return:  New shape keyblock 
        '''
        pass

    def shape_key_remove(self, key):
        '''Remove a Shape Key from this object 

        :param key: Keyblock to be removed 
        :type key: ShapeKey, (never None)
        '''
        pass

    def ray_cast(self, origin, direction, distance=1.70141e+38,
                 depsgraph=None):
        '''Cast a ray onto evaluated geometry, in object space (using context’s or provided depsgraph to get evaluated mesh if needed) 

        :param origin: Origin of the ray, in object space 
        :type origin: float array of 3 items in [-inf, inf]
        :param direction: Direction of the ray, in object space 
        :type direction: float array of 3 items in [-inf, inf]
        :param distance: Maximum distance 
        :type distance: float in [0, inf], (optional)
        :param depsgraph: Depsgraph to use to get evaluated data, when called from original object (only needed if current Context’s depsgraph is not suitable) 
        :type depsgraph: Depsgraph, (optional)
        '''
        pass

    def closest_point_on_mesh(self,
                              origin,
                              distance=1.84467e+19,
                              depsgraph=None):
        '''Find the nearest point on evaluated geometry, in object space (using context’s or provided depsgraph to get evaluated mesh if needed) 

        :param origin: Point to find closest geometry from (in object space) 
        :type origin: float array of 3 items in [-inf, inf]
        :param distance: Maximum distance 
        :type distance: float in [0, inf], (optional)
        :param depsgraph: Depsgraph to use to get evaluated data, when called from original object (only needed if current Context’s depsgraph is not suitable) 
        :type depsgraph: Depsgraph, (optional)
        '''
        pass

    def is_modified(self, scene, settings):
        '''Determine if this object is modified from the base mesh data 

        :param scene: Scene in which to check the object 
        :type scene: Scene, (never None)
        :param settings: Modifier settings to applyPREVIEW Preview, Apply modifier preview settings.RENDER Render, Apply modifier render settings. 
        :type settings: enum in ['PREVIEW', 'RENDER']
        :rtype: boolean 
        :return:  Whether the object is modified 
        '''
        pass

    def is_deform_modified(self, scene, settings):
        '''Determine if this object is modified by a deformation from the base mesh data 

        :param scene: Scene in which to check the object 
        :type scene: Scene, (never None)
        :param settings: Modifier settings to applyPREVIEW Preview, Apply modifier preview settings.RENDER Render, Apply modifier render settings. 
        :type settings: enum in ['PREVIEW', 'RENDER']
        :rtype: boolean 
        :return:  Whether the object is deform-modified 
        '''
        pass

    def update_from_editmode(self):
        '''Load the objects edit-mode data into the object data 

        :rtype: boolean 
        :return:  Success 
        '''
        pass

    def cache_release(self):
        '''Release memory used by caches associated with this object. Intended to be used by render engines only 

        '''
        pass


class ObjectBase:
    '''An object instance in a render layer '''

    object = None
    '''Object this base links to 

    :type:  Object, (readonly) 
    '''

    select = None
    '''Object base selection state 

    :type:  boolean, default False 
    '''


class ObjectConstraints:
    '''Collection of object constraints '''

    active = None
    '''Active Object constraint 

    :type:  Constraint 
    '''

    def new(self, type):
        '''Add a new constraint to this object 

        :param type: Constraint type to addCAMERA_SOLVER Camera Solver.FOLLOW_TRACK Follow Track.OBJECT_SOLVER Object Solver.COPY_LOCATION Copy Location, Copy the location of a target (with an optional offset), so that they move together.COPY_ROTATION Copy Rotation, Copy the rotation of a target (with an optional offset), so that they rotate together.COPY_SCALE Copy Scale, Copy the scale factors of a target (with an optional offset), so that they are scaled by the same amount.COPY_TRANSFORMS Copy Transforms, Copy all the transformations of a target, so that they move together.LIMIT_DISTANCE Limit Distance, Restrict movements to within a certain distance of a target (at the time of constraint evaluation only).LIMIT_LOCATION Limit Location, Restrict movement along each axis within given ranges.LIMIT_ROTATION Limit Rotation, Restrict rotation along each axis within given ranges.LIMIT_SCALE Limit Scale, Restrict scaling along each axis with given ranges.MAINTAIN_VOLUME Maintain Volume, Compensate for scaling one axis by applying suitable scaling to the other two axes.TRANSFORM Transformation, Use one transform property from target to control another (or same) property on owner.TRANSFORM_CACHE Transform Cache, Look up the transformation matrix from an external file.CLAMP_TO Clamp To, Restrict movements to lie along a curve by remapping location along curve’s longest axis.DAMPED_TRACK Damped Track, Point towards a target by performing the smallest rotation necessary.IK Inverse Kinematics, Control a chain of bones by specifying the endpoint target (Bones only).LOCKED_TRACK Locked Track, Rotate around the specified (‘locked’) axis to point towards a target.SPLINE_IK Spline IK, Align chain of bones along a curve (Bones only).STRETCH_TO Stretch To, Stretch along Y-Axis to point towards a target.TRACK_TO Track To, Legacy tracking constraint prone to twisting artifacts.ACTION Action, Use transform property of target to look up pose for owner from an Action.ARMATURE Armature, Apply weight-blended transformation from multiple bones like the Armature modifier.CHILD_OF Child Of, Make target the ‘detachable’ parent of owner.FLOOR Floor, Use position (and optionally rotation) of target to define a ‘wall’ or ‘floor’ that the owner can not cross.FOLLOW_PATH Follow Path, Use to animate an object/bone following a path.PIVOT Pivot, Change pivot point for transforms (buggy).SHRINKWRAP Shrinkwrap, Restrict movements to surface of target mesh. 
        :type type: enum in ['CAMERA_SOLVER', 'FOLLOW_TRACK', 'OBJECT_SOLVER', 'COPY_LOCATION', 'COPY_ROTATION', 'COPY_SCALE', 'COPY_TRANSFORMS', 'LIMIT_DISTANCE', 'LIMIT_LOCATION', 'LIMIT_ROTATION', 'LIMIT_SCALE', 'MAINTAIN_VOLUME', 'TRANSFORM', 'TRANSFORM_CACHE', 'CLAMP_TO', 'DAMPED_TRACK', 'IK', 'LOCKED_TRACK', 'SPLINE_IK', 'STRETCH_TO', 'TRACK_TO', 'ACTION', 'ARMATURE', 'CHILD_OF', 'FLOOR', 'FOLLOW_PATH', 'PIVOT', 'SHRINKWRAP']
        :rtype: Constraint 
        :return:  New constraint 
        '''
        pass

    def remove(self, constraint):
        '''Remove a constraint from this object 

        :param constraint: Removed constraint 
        :type constraint: Constraint, (never None)
        '''
        pass

    def clear(self):
        '''Remove all constraint from this object 

        '''
        pass


class ObjectDisplay:
    '''Object display settings for 3d viewport '''

    show_shadows = None
    '''Object cast shadows in the 3d viewport 

    :type:  boolean, default True 
    '''


class ObjectGpencilModifiers:
    '''Collection of object grease pencil modifiers '''

    def new(self, name, type):
        '''Add a new greasepencil_modifier 

        :param name: New name for the greasepencil_modifier 
        :type name: string, (never None)
        :param type: Modifier type to addGP_ARRAY Array, Create array of duplicate instances.GP_BUILD Build, Create duplication of strokes.GP_MIRROR Mirror, Duplicate strokes like a mirror.GP_SIMPLIFY Simplify, Simplify stroke reducing number of points.GP_SUBDIV Subdivide, Subdivide stroke adding more control points.GP_ARMATURE Armature, Deform stroke points using armature object.GP_HOOK Hook, Deform stroke points using objects.GP_LATTICE Lattice, Deform strokes using lattice.GP_NOISE Noise, Add noise to strokes.GP_OFFSET Offset, Change stroke location, rotation or scale.GP_SMOOTH Smooth, Smooth stroke.GP_THICK Thickness, Change stroke thickness.GP_TIME Time Offset, Offset keyframes.GP_COLOR Hue/Saturation, Apply changes to stroke colors.GP_OPACITY Opacity, Opacity of the strokes.GP_TINT Tint, Tint strokes with new color. 
        :type type: enum in ['GP_ARRAY', 'GP_BUILD', 'GP_MIRROR', 'GP_SIMPLIFY', 'GP_SUBDIV', 'GP_ARMATURE', 'GP_HOOK', 'GP_LATTICE', 'GP_NOISE', 'GP_OFFSET', 'GP_SMOOTH', 'GP_THICK', 'GP_TIME', 'GP_COLOR', 'GP_OPACITY', 'GP_TINT']
        :rtype: GpencilModifier 
        :return:  Newly created modifier 
        '''
        pass

    def remove(self, greasepencil_modifier):
        '''Remove an existing greasepencil_modifier from the object 

        :param greasepencil_modifier: Modifier to remove 
        :type greasepencil_modifier: GpencilModifier, (never None)
        '''
        pass

    def clear(self):
        '''Remove all grease pencil modifiers from the object 

        '''
        pass


class ObjectModifiers:
    '''Collection of object modifiers '''

    def new(self, name, type):
        '''Add a new modifier 

        :param name: New name for the modifier 
        :type name: string, (never None)
        :param type: Modifier type to addDATA_TRANSFER Data Transfer.MESH_CACHE Mesh Cache.MESH_SEQUENCE_CACHE Mesh Sequence Cache.NORMAL_EDIT Normal Edit.WEIGHTED_NORMAL Weighted Normal.UV_PROJECT UV Project.UV_WARP UV Warp.VERTEX_WEIGHT_EDIT Vertex Weight Edit.VERTEX_WEIGHT_MIX Vertex Weight Mix.VERTEX_WEIGHT_PROXIMITY Vertex Weight Proximity.ARRAY Array.BEVEL Bevel.BOOLEAN Boolean.BUILD Build.DECIMATE Decimate.EDGE_SPLIT Edge Split.MASK Mask.MIRROR Mirror.MULTIRES Multiresolution.REMESH Remesh.SCREW Screw.SKIN Skin.SOLIDIFY Solidify.SUBSURF Subdivision Surface.TRIANGULATE Triangulate.WIREFRAME Wireframe, Generate a wireframe on the edges of a mesh.ARMATURE Armature.CAST Cast.CURVE Curve.DISPLACE Displace.HOOK Hook.LAPLACIANDEFORM Laplacian Deform.LATTICE Lattice.MESH_DEFORM Mesh Deform.SHRINKWRAP Shrinkwrap.SIMPLE_DEFORM Simple Deform.SMOOTH Smooth.CORRECTIVE_SMOOTH Smooth Corrective.LAPLACIANSMOOTH Smooth Laplacian.SURFACE_DEFORM Surface Deform.WARP Warp.WAVE Wave.CLOTH Cloth.COLLISION Collision.DYNAMIC_PAINT Dynamic Paint.EXPLODE Explode.FLUID_SIMULATION Fluid Simulation.OCEAN Ocean.PARTICLE_INSTANCE Particle Instance.PARTICLE_SYSTEM Particle System.SMOKE Smoke.SOFT_BODY Soft Body.SURFACE Surface. 
        :type type: enum in ['DATA_TRANSFER', 'MESH_CACHE', 'MESH_SEQUENCE_CACHE', 'NORMAL_EDIT', 'WEIGHTED_NORMAL', 'UV_PROJECT', 'UV_WARP', 'VERTEX_WEIGHT_EDIT', 'VERTEX_WEIGHT_MIX', 'VERTEX_WEIGHT_PROXIMITY', 'ARRAY', 'BEVEL', 'BOOLEAN', 'BUILD', 'DECIMATE', 'EDGE_SPLIT', 'MASK', 'MIRROR', 'MULTIRES', 'REMESH', 'SCREW', 'SKIN', 'SOLIDIFY', 'SUBSURF', 'TRIANGULATE', 'WIREFRAME', 'ARMATURE', 'CAST', 'CURVE', 'DISPLACE', 'HOOK', 'LAPLACIANDEFORM', 'LATTICE', 'MESH_DEFORM', 'SHRINKWRAP', 'SIMPLE_DEFORM', 'SMOOTH', 'CORRECTIVE_SMOOTH', 'LAPLACIANSMOOTH', 'SURFACE_DEFORM', 'WARP', 'WAVE', 'CLOTH', 'COLLISION', 'DYNAMIC_PAINT', 'EXPLODE', 'FLUID_SIMULATION', 'OCEAN', 'PARTICLE_INSTANCE', 'PARTICLE_SYSTEM', 'SMOKE', 'SOFT_BODY', 'SURFACE']
        :rtype: Modifier 
        :return:  Newly created modifier 
        '''
        pass

    def remove(self, modifier):
        '''Remove an existing modifier from the object 

        :param modifier: Modifier to remove 
        :type modifier: Modifier, (never None)
        '''
        pass

    def clear(self):
        '''Remove all modifiers from the object 

        '''
        pass


class ObjectShaderFx:
    '''Collection of object effects '''

    def new(self, name, type):
        '''Add a new shader fx 

        :param name: New name for the effect 
        :type name: string, (never None)
        :param type: Effect type to addFX_BLUR Blur, Apply Gaussian Blur to object.FX_COLORIZE Colorize, Apply different tint effects.FX_FLIP Flip, Flip image.FX_GLOW Glow, Create a glow effect.FX_LIGHT Light, Simulate illumination.FX_PIXEL Pixelate, Pixelate image.FX_RIM Rim, Add a rim to the image.FX_SHADOW Shadow, Create a shadow effect.FX_SWIRL Swirl, Create a rotation distortion.FX_WAVE Wave Distortion, Apply sinusoidal deformation. 
        :type type: enum in ['FX_BLUR', 'FX_COLORIZE', 'FX_FLIP', 'FX_GLOW', 'FX_LIGHT', 'FX_PIXEL', 'FX_RIM', 'FX_SHADOW', 'FX_SWIRL', 'FX_WAVE']
        :rtype: ShaderFx 
        :return:  Newly created effect 
        '''
        pass

    def remove(self, shader_fx):
        '''Remove an existing effect from the object 

        :param shader_fx: Effect to remove 
        :type shader_fx: ShaderFx, (never None)
        '''
        pass

    def clear(self):
        '''Remove all effects from the object 

        '''
        pass


class ObjectSolverConstraint:
    '''Lock motion to the reconstructed object movement '''

    camera = None
    '''Camera to which motion is parented (if empty active scene camera is used) 

    :type:  Object 
    '''

    clip = None
    '''Movie Clip to get tracking data from 

    :type:  MovieClip 
    '''

    object = None
    '''Movie tracking object to follow 

    :type:  string, default “”, (never None) 
    '''

    use_active_clip = None
    '''Use active clip defined in scene 

    :type:  boolean, default False 
    '''


class ObstacleFluidSettings:
    '''Fluid simulation settings for obstacles in the simulation '''

    impact_factor = None
    '''This is an unphysical value for moving objects - it controls the impact an obstacle has on the fluid, =0 behaves a bit like outflow (deleting fluid), =1 is default, while >1 results in high forces (can be used to tweak total mass) 

    :type:  float in [-2, 10], default 0.0 
    '''

    partial_slip_factor = None
    '''Amount of mixing between no- and free-slip, 0 is no slip and 1 is free slip 

    :type:  float in [0, 1], default 0.0 
    '''

    slip_type = None
    '''

    :type:  enum in [‘NOSLIP’, ‘PARTIALSLIP’, ‘FREESLIP’], default ‘NOSLIP’ 
    '''

    use = None
    '''Object contributes to the fluid simulation 

    :type:  boolean, default False 
    '''

    use_animated_mesh = None
    '''Export this mesh as an animated one (slower and enforces No Slip, only use if really necessary [e.g. armatures or parented objects], animated pos/rot/scale F-Curves do not require it) 

    :type:  boolean, default False 
    '''

    volume_initialization = None
    '''Volume initialization type (WARNING: complex volumes might require too much memory and break simulation) 

    :type:  enum in [‘VOLUME’, ‘SHELL’, ‘BOTH’], default ‘VOLUME’ 
    '''


class OceanModifier:
    '''Simulate an ocean surface '''

    bake_foam_fade = None
    '''How much foam accumulates over time (baked ocean only) 

    :type:  float in [0, inf], default 0.0 
    '''

    choppiness = None
    '''Choppiness of the wave’s crest (adds some horizontal component to the displacement) 

    :type:  float in [0, inf], default 0.0 
    '''

    damping = None
    '''Damp reflected waves going in opposite direction to the wind 

    :type:  float in [0, 1], default 0.0 
    '''

    depth = None
    '''Depth of the solid ground below the water surface 

    :type:  float in [-inf, inf], default 0.0 
    '''

    filepath = None
    '''Path to a folder to store external baked images 

    :type:  string, default “”, (never None) 
    '''

    foam_coverage = None
    '''Amount of generated foam 

    :type:  float in [-inf, inf], default 0.0 
    '''

    foam_layer_name = None
    '''Name of the vertex color layer used for foam 

    :type:  string, default “”, (never None) 
    '''

    frame_end = None
    '''End frame of the ocean baking 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_start = None
    '''Start frame of the ocean baking 

    :type:  int in [-inf, inf], default 0 
    '''

    geometry_mode = None
    '''Method of modifying geometry 

    :type:  enum in [‘GENERATE’, ‘DISPLACE’], default ‘GENERATE’ 
    '''

    is_cached = None
    '''Whether the ocean is using cached data or simulating 

    :type:  boolean, default False, (readonly) 
    '''

    random_seed = None
    '''Seed of the random generator 

    :type:  int in [0, inf], default 0 
    '''

    repeat_x = None
    '''Repetitions of the generated surface in X 

    :type:  int in [1, 1024], default 0 
    '''

    repeat_y = None
    '''Repetitions of the generated surface in Y 

    :type:  int in [1, 1024], default 0 
    '''

    resolution = None
    '''Resolution of the generated surface 

    :type:  int in [1, 1024], default 0 
    '''

    size = None
    '''Surface scale factor (does not affect the height of the waves) 

    :type:  float in [0, inf], default 0.0 
    '''

    spatial_size = None
    '''Size of the simulation domain (in meters), and of the generated geometry (in BU) 

    :type:  int in [-inf, inf], default 0 
    '''

    time = None
    '''Current time of the simulation 

    :type:  float in [0, inf], default 0.0 
    '''

    use_foam = None
    '''Generate foam mask as a vertex color channel 

    :type:  boolean, default False 
    '''

    use_normals = None
    '''Output normals for bump mapping - disabling can speed up performance if its not needed 

    :type:  boolean, default False 
    '''

    wave_alignment = None
    '''How much the waves are aligned to each other 

    :type:  float in [0, 10], default 0.0 
    '''

    wave_direction = None
    '''Main direction of the waves when they are (partially) aligned 

    :type:  float in [-inf, inf], default 0.0 
    '''

    wave_scale = None
    '''Scale of the displacement effect 

    :type:  float in [0, inf], default 0.0 
    '''

    wave_scale_min = None
    '''Shortest allowed wavelength 

    :type:  float in [0, inf], default 0.0 
    '''

    wind_velocity = None
    '''Wind speed 

    :type:  float in [-inf, inf], default 0.0 
    '''


class OffsetGpencilModifier:
    '''Offset Stroke modifier '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_vertex = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    location = None
    '''Values for change location 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    rotation = None
    '''Values for changes in rotation 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    scale = None
    '''Values for changes in scale 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    vertex_group = None
    '''Vertex group name for modulating the deform 

    :type:  string, default “”, (never None) 
    '''


class OpacityGpencilModifier:
    '''Opacity of Strokes modifier '''

    create_materials = None
    '''When apply modifier, create new material 

    :type:  boolean, default False 
    '''

    factor = None
    '''Factor of Opacity 

    :type:  float in [-inf, inf], default 0.0 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_vertex = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    modify_color = None
    '''Set what colors of the stroke are affected 

    :type:  enum in [‘BOTH’, ‘STROKE’, ‘FILL’], default ‘BOTH’ 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    vertex_group = None
    '''Vertex group name for modulating the deform 

    :type:  string, default “”, (never None) 
    '''


class Operator:
    '''Storage of an operator being executed, or registered after execution '''

    bl_description = None
    '''

    :type:  string, default “” 
    '''

    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_options = None
    '''Options for this operator type 

    :type:  enum set in {‘REGISTER’, ‘UNDO’, ‘UNDO_GROUPED’, ‘BLOCKING’, ‘MACRO’, ‘GRAB_CURSOR’, ‘PRESET’, ‘INTERNAL’, ‘USE_EVAL_DATA’}, default {‘REGISTER’} 
    '''

    bl_translation_context = None
    '''

    :type:  string, default “Operator” 
    '''

    bl_undo_group = None
    '''

    :type:  string, default “” 
    '''

    has_reports = None
    '''Operator has a set of reports (warnings and errors) from last execution 

    :type:  boolean, default False, (readonly) 
    '''

    layout = None
    '''

    :type:  UILayout, (readonly) 
    '''

    macros = None
    '''

    :type:  bpy_prop_collection of Macro, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    options = None
    '''Runtime options 

    :type:  OperatorOptions, (readonly, never None) 
    '''

    properties = None
    '''

    :type:  OperatorProperties, (readonly, never None) 
    '''

    bl_property = None
    '''The name of a property to use as this operators primary property. Currently this is only used to select the default property when expanding an operator into a menu. :type: string '''

    def report(self, type, message):
        '''report 

        :param type: Type 
        :type type: enum set in {'DEBUG', 'INFO', 'OPERATOR', 'PROPERTY', 'WARNING', 'ERROR', 'ERROR_INVALID_INPUT', 'ERROR_INVALID_CONTEXT', 'ERROR_OUT_OF_MEMORY'}
        :param message: Report Message 
        :type message: string, (never None)
        '''
        pass

    def is_repeat(self):
        '''is_repeat 

        :rtype: boolean 
        :return:  result 
        '''
        pass

    def execute(self, context):
        '''Execute the operator 

        :rtype: enum set in {‘RUNNING_MODAL’, ‘CANCELLED’, ‘FINISHED’, ‘PASS_THROUGH’, ‘INTERFACE’} 
        :return:  resultRUNNING_MODAL Running Modal, Keep the operator running with blender.CANCELLED Cancelled, When no action has been taken, operator exits.FINISHED Finished, When the operator is complete, operator exits.PASS_THROUGH Pass Through, Do nothing and pass the event on.INTERFACE Interface, Handled but not executed (popup menus). 
        '''
        pass

    def check(self, context):
        '''Check the operator settings, return True to signal a change to redraw 

        :rtype: boolean 
        :return:  result 
        '''
        pass

    def invoke(self, context, event):
        '''Invoke the operator 

        :rtype: enum set in {‘RUNNING_MODAL’, ‘CANCELLED’, ‘FINISHED’, ‘PASS_THROUGH’, ‘INTERFACE’} 
        :return:  resultRUNNING_MODAL Running Modal, Keep the operator running with blender.CANCELLED Cancelled, When no action has been taken, operator exits.FINISHED Finished, When the operator is complete, operator exits.PASS_THROUGH Pass Through, Do nothing and pass the event on.INTERFACE Interface, Handled but not executed (popup menus). 
        '''
        pass

    def modal(self, context, event):
        '''Modal operator function 

        :rtype: enum set in {‘RUNNING_MODAL’, ‘CANCELLED’, ‘FINISHED’, ‘PASS_THROUGH’, ‘INTERFACE’} 
        :return:  resultRUNNING_MODAL Running Modal, Keep the operator running with blender.CANCELLED Cancelled, When no action has been taken, operator exits.FINISHED Finished, When the operator is complete, operator exits.PASS_THROUGH Pass Through, Do nothing and pass the event on.INTERFACE Interface, Handled but not executed (popup menus). 
        '''
        pass

    def draw(self, context):
        '''Draw function for the operator 

        '''
        pass

    def cancel(self, context):
        '''Called when the operator is canceled 

        '''
        pass

    def as_keywords(self, ignore=()):
        '''Return a copy of the properties as a dictionary 

        '''
        pass


class OperatorFileListElement:
    name = None
    '''Name of a file or directory within a file list 

    :type:  string, default “”, (never None) 
    '''


class OperatorMacro:
    '''Storage of a sub operator in a macro after it has been added '''

    properties = None
    '''

    :type:  OperatorProperties, (readonly, never None) 
    '''


class OperatorMousePath:
    '''Mouse path values for operators that record such paths '''

    loc = None
    '''Mouse location 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    time = None
    '''Time of mouse location 

    :type:  float in [-inf, inf], default 0.0 
    '''


class OperatorOptions:
    '''Runtime options '''

    is_grab_cursor = None
    '''True when the cursor is grabbed 

    :type:  boolean, default False, (readonly) 
    '''

    is_invoke = None
    '''True when invoked (even if only the execute callbacks available) 

    :type:  boolean, default False, (readonly) 
    '''

    is_repeat = None
    '''True when run from the redo panel 

    :type:  boolean, default False, (readonly) 
    '''

    use_cursor_region = None
    '''Enable to use the region under the cursor for modal execution 

    :type:  boolean, default False 
    '''


class OperatorProperties:
    '''Input properties of an Operator '''

    pass


class OperatorStrokeElement:
    is_start = None
    '''

    :type:  boolean, default False 
    '''

    location = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    mouse = None
    '''

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    pen_flip = None
    '''

    :type:  boolean, default False 
    '''

    pressure = None
    '''Tablet pressure 

    :type:  float in [0, 1], default 0.0 
    '''

    size = None
    '''Brush Size in screen space 

    :type:  float in [0, inf], default 0.0 
    '''

    time = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''


class OutflowFluidSettings:
    '''Fluid simulation settings for objects removing fluids from the simulation '''

    use = None
    '''Object contributes to the fluid simulation 

    :type:  boolean, default False 
    '''

    use_animated_mesh = None
    '''Export this mesh as an animated one (slower and enforces No Slip, only use if really necessary [e.g. armatures or parented objects], animated pos/rot/scale F-Curves do not require it) 

    :type:  boolean, default False 
    '''

    volume_initialization = None
    '''Volume initialization type (WARNING: complex volumes might require too much memory and break simulation) 

    :type:  enum in [‘VOLUME’, ‘SHELL’, ‘BOTH’], default ‘VOLUME’ 
    '''


class OverDropSequence:
    '''Over Drop Sequence '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class PARTICLE_UL_particle_systems:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index, flt_flag):
        '''

        '''
        pass


class PHYSICS_UL_dynapaint_surfaces:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class PackedFile:
    '''External file packed into the .blend file '''

    data = None
    '''Raw data (bytes, exact content of the embedded file) 

    :type:  string, default “”, (readonly, never None) 
    '''

    size = None
    '''Size of packed file in bytes 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''


class Paint:
    brush = None
    '''Active Brush 

    :type:  Brush 
    '''

    cavity_curve = None
    '''Editable cavity curve 

    :type:  CurveMapping, (readonly, never None) 
    '''

    input_samples = None
    '''Average multiple input samples together to smooth the brush stroke 

    :type:  int in [0, inf], default 0 
    '''

    palette = None
    '''Active Palette 

    :type:  Palette 
    '''

    show_brush = None
    '''

    :type:  boolean, default False 
    '''

    show_brush_on_surface = None
    '''

    :type:  boolean, default False 
    '''

    show_low_resolution = None
    '''For multires, show low resolution while navigating the view 

    :type:  boolean, default False 
    '''

    tile_offset = None
    '''Stride at which tiled strokes are copied 

    :type:  float array of 3 items in [0.01, inf], default (0.0, 0.0, 0.0) 
    '''

    tile_x = None
    '''Tile along X axis 

    :type:  boolean, default False 
    '''

    tile_y = None
    '''Tile along Y axis 

    :type:  boolean, default False 
    '''

    tile_z = None
    '''Tile along Z axis 

    :type:  boolean, default False 
    '''

    tool_slots = None
    '''

    :type:  bpy_prop_collection of PaintToolSlot, (readonly) 
    '''

    use_cavity = None
    '''Mask painting according to mesh geometry cavity 

    :type:  boolean, default False 
    '''

    use_symmetry_feather = None
    '''Reduce the strength of the brush where it overlaps symmetrical daubs 

    :type:  boolean, default False 
    '''

    use_symmetry_x = None
    '''Mirror brush across the X axis 

    :type:  boolean, default False 
    '''

    use_symmetry_y = None
    '''Mirror brush across the Y axis 

    :type:  boolean, default False 
    '''

    use_symmetry_z = None
    '''Mirror brush across the Z axis 

    :type:  boolean, default False 
    '''


class PaintCurve:
    pass


class PaintToolSlot:
    brush = None
    '''

    :type:  Brush 
    '''


class Palette:
    colors = None
    '''

    :type:  PaletteColors bpy_prop_collection of PaletteColor, (readonly) 
    '''


class PaletteColor:
    color = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    strength = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    weight = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''


class PaletteColors:
    '''Collection of palette colors '''

    active = None
    '''

    :type:  PaletteColor 
    '''

    def new(self):
        '''Add a new color to the palette 

        :rtype: PaletteColor 
        :return:  The newly created color 
        '''
        pass

    def remove(self, color):
        '''Remove a color from the palette 

        :param color: The color to remove 
        :type color: PaletteColor, (never None)
        '''
        pass

    def clear(self):
        '''Remove all colors from the palette 

        '''
        pass


class Panel:
    '''Panel containing UI elements '''

    bl_category = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_context = None
    '''The context in which the panel belongs to. (TODO: explain the possible combinations bl_context/bl_region_type/bl_space_type) 

    :type:  string, default “”, (never None) 
    '''

    bl_idname = None
    '''If this is set, the panel gets a custom ID, otherwise it takes the name of the class used to define the panel. For example, if the class name is “OBJECT_PT_hello”, and bl_idname is not set by the script, then bl_idname = “OBJECT_PT_hello” 

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''The panel label, shows up in the panel header at the right of the triangle used to collapse the panel 

    :type:  string, default “”, (never None) 
    '''

    bl_options = None
    '''Options for this panel type 

    :type:  enum set in {‘DEFAULT_CLOSED’, ‘HIDE_HEADER’}, default {‘DEFAULT_CLOSED’} 
    '''

    bl_owner_id = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_parent_id = None
    '''If this is set, the panel becomes a sub-panel 

    :type:  string, default “”, (never None) 
    '''

    bl_region_type = None
    '''The region where the panel is going to be used in 

    :type:  enum in [‘WINDOW’, ‘HEADER’, ‘CHANNELS’, ‘TEMPORARY’, ‘UI’, ‘TOOLS’, ‘TOOL_PROPS’, ‘PREVIEW’, ‘HUD’, ‘NAVIGATION_BAR’, ‘EXECUTE’, ‘FOOTER’], default ‘WINDOW’ 
    '''

    bl_space_type = None
    '''The space where the panel is going to be used in 

    :type:  enum in [‘EMPTY’, ‘VIEW_3D’, ‘IMAGE_EDITOR’, ‘NODE_EDITOR’, ‘SEQUENCE_EDITOR’, ‘CLIP_EDITOR’, ‘DOPESHEET_EDITOR’, ‘GRAPH_EDITOR’, ‘NLA_EDITOR’, ‘TEXT_EDITOR’, ‘CONSOLE’, ‘INFO’, ‘TOPBAR’, ‘STATUSBAR’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILE_BROWSER’, ‘PREFERENCES’], default ‘EMPTY’ 
    '''

    bl_translation_context = None
    '''

    :type:  string, default “*”, (never None) 
    '''

    bl_ui_units_x = None
    '''When set, defines popup panel width 

    :type:  int in [0, inf], default 0 
    '''

    is_popover = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    layout = None
    '''Defines the structure of the panel in the UI 

    :type:  UILayout, (readonly) 
    '''

    text = None
    '''XXX todo 

    :type:  string, default “”, (never None) 
    '''

    use_pin = None
    '''

    :type:  boolean, default False 
    '''

    def draw(self, context):
        '''Draw UI elements into the panel UI layout 

        '''
        pass

    def draw_header(self, context):
        '''Draw UI elements into the panel’s header UI layout 

        '''
        pass

    def draw_header_preset(self, context):
        '''Draw UI elements for presets in the panel’s header 

        '''
        pass


class Particle:
    '''Particle in a particle system '''

    alive_state = None
    '''

    :type:  enum in [‘DEAD’, ‘UNBORN’, ‘ALIVE’, ‘DYING’], default ‘DEAD’ 
    '''

    angular_velocity = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    birth_time = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    die_time = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    hair_keys = None
    '''

    :type:  bpy_prop_collection of ParticleHairKey, (readonly) 
    '''

    is_exist = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    is_visible = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    lifetime = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    location = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    particle_keys = None
    '''

    :type:  bpy_prop_collection of ParticleKey, (readonly) 
    '''

    prev_angular_velocity = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    prev_location = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    prev_rotation = None
    '''

    :type:  float array of 4 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    prev_velocity = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    rotation = None
    '''

    :type:  float array of 4 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    size = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    velocity = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    def uv_on_emitter(self, modifier):
        '''Obtain uv for particle on derived mesh 

        :param modifier: Particle modifier 
        :type modifier: ParticleSystemModifier, (never None)
        :rtype: float array of 2 items in [-inf, inf] 
        :return:  uv 
        '''
        pass


class ParticleBrush:
    '''Particle editing brush '''

    count = None
    '''Particle count 

    :type:  int in [1, 1000], default 0 
    '''

    curve = None
    '''

    :type:  CurveMapping, (readonly) 
    '''

    length_mode = None
    '''

    :type:  enum in [‘GROW’, ‘SHRINK’], default ‘GROW’ 
    '''

    puff_mode = None
    '''

    :type:  enum in [‘ADD’, ‘SUB’], default ‘ADD’ 
    '''

    size = None
    '''Radius of the brush in pixels 

    :type:  int in [1, 32767], default 0 
    '''

    steps = None
    '''Brush steps 

    :type:  int in [1, 32767], default 0 
    '''

    strength = None
    '''Brush strength 

    :type:  float in [0.001, 1], default 0.0 
    '''

    use_puff_volume = None
    '''Apply puff to unselected end-points (helps maintain hair volume when puffing root) 

    :type:  boolean, default False 
    '''


class ParticleDupliWeight:
    '''Weight of a particle dupliobject in a collection '''

    count = None
    '''The number of times this object is repeated with respect to other objects 

    :type:  int in [0, 32767], default 0 
    '''

    name = None
    '''Particle dupliobject name 

    :type:  string, default “”, (readonly, never None) 
    '''


class ParticleEdit:
    '''Properties of particle editing mode '''

    brush = None
    '''

    :type:  ParticleBrush, (readonly) 
    '''

    default_key_count = None
    '''How many keys to make new particles with 

    :type:  int in [2, 32767], default 0 
    '''

    display_step = None
    '''How many steps to display the path with 

    :type:  int in [1, 10], default 0 
    '''

    emitter_distance = None
    '''Distance to keep particles away from the emitter 

    :type:  float in [-inf, inf], default 0.0 
    '''

    fade_frames = None
    '''How many frames to fade 

    :type:  int in [1, 100], default 0 
    '''

    is_editable = None
    '''A valid edit mode exists 

    :type:  boolean, default False, (readonly) 
    '''

    is_hair = None
    '''Editing hair 

    :type:  boolean, default False, (readonly) 
    '''

    object = None
    '''The edited object 

    :type:  Object, (readonly) 
    '''

    select_mode = None
    '''Particle select and display mode 

    :type:  enum in [‘PATH’, ‘POINT’, ‘TIP’], default ‘PATH’ 
    '''

    shape_object = None
    '''Outer shape to use for tools 

    :type:  Object 
    '''

    show_particles = None
    '''Display actual particles 

    :type:  boolean, default False 
    '''

    tool = None
    '''

    :type:  enum in [‘COMB’, ‘SMOOTH’, ‘ADD’, ‘LENGTH’, ‘PUFF’, ‘CUT’, ‘WEIGHT’], default ‘COMB’ 
    '''

    type = None
    '''

    :type:  enum in [‘PARTICLES’, ‘SOFT_BODY’, ‘CLOTH’], default ‘PARTICLES’ 
    '''

    use_auto_velocity = None
    '''Calculate point velocities automatically 

    :type:  boolean, default False 
    '''

    use_default_interpolate = None
    '''Interpolate new particles from the existing ones 

    :type:  boolean, default False 
    '''

    use_emitter_deflect = None
    '''Keep paths from intersecting the emitter 

    :type:  boolean, default False 
    '''

    use_fade_time = None
    '''Fade paths and keys further away from current frame 

    :type:  boolean, default False 
    '''

    use_preserve_length = None
    '''Keep path lengths constant 

    :type:  boolean, default False 
    '''

    use_preserve_root = None
    '''Keep root keys unmodified 

    :type:  boolean, default False 
    '''


class ParticleFluidSettings:
    '''Fluid simulation settings for objects storing fluid particles generated by the simulation '''

    alpha_influence = None
    '''Amount of particle alpha change, inverse of size influence: 0=off (all same alpha), 1=full (larger particles get lower alphas, smaller ones higher values) 

    :type:  float in [0, 2], default 0.0 
    '''

    filepath = None
    '''Directory (and/or filename prefix) to store and load particles from 

    :type:  string, default “”, (never None) 
    '''

    particle_influence = None
    '''Amount of particle size scaling: 0=off (all same size), 1=full (range 0.2-2.0), >1=stronger 

    :type:  float in [0, 2], default 0.0 
    '''

    show_tracer = None
    '''Show tracer particles 

    :type:  boolean, default False 
    '''

    use_drops = None
    '''Show drop particles 

    :type:  boolean, default False 
    '''

    use_floats = None
    '''Show floating foam particles 

    :type:  boolean, default False 
    '''


class ParticleHairKey:
    '''Particle key for hair particle system '''

    co = None
    '''Location of the hair key in object space 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    co_local = None
    '''Location of the hair key in its local coordinate system, relative to the emitting face 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    time = None
    '''Relative time of key over hair length 

    :type:  float in [0, inf], default 0.0 
    '''

    weight = None
    '''Weight for cloth simulation 

    :type:  float in [0, 1], default 0.0 
    '''

    def co_object(self, object, modifier, particle):
        '''Obtain hairkey location with particle and modifier data 

        :param object: Object 
        :type object: Object, (never None)
        :param modifier: Particle modifier 
        :type modifier: ParticleSystemModifier, (never None)
        :param particle: hair particle 
        :type particle: Particle, (never None)
        :rtype: float array of 3 items in [-inf, inf] 
        :return:  Co, Exported hairkey location 
        '''
        pass


class ParticleInstanceModifier:
    '''Particle system instancing modifier '''

    axis = None
    '''Pole axis for rotation 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    index_layer_name = None
    '''Custom data layer name for the index 

    :type:  string, default “”, (never None) 
    '''

    object = None
    '''Object that has the particle system 

    :type:  Object 
    '''

    particle_amount = None
    '''Amount of particles to use for instancing 

    :type:  float in [0, 1], default 1.0 
    '''

    particle_offset = None
    '''Relative offset of particles to use for instancing, to avoid overlap of multiple instances 

    :type:  float in [0, 1], default 0.0 
    '''

    particle_system = None
    '''

    :type:  ParticleSystem 
    '''

    particle_system_index = None
    '''

    :type:  int in [1, 32767], default 0 
    '''

    position = None
    '''Position along path 

    :type:  float in [0, 1], default 0.0 
    '''

    random_position = None
    '''Randomize position along path 

    :type:  float in [0, 1], default 0.0 
    '''

    random_rotation = None
    '''Randomize rotation around path 

    :type:  float in [0, 1], default 0.0 
    '''

    rotation = None
    '''Rotation around path 

    :type:  float in [0, 1], default 0.0 
    '''

    show_alive = None
    '''Show instances when particles are alive 

    :type:  boolean, default False 
    '''

    show_dead = None
    '''Show instances when particles are dead 

    :type:  boolean, default False 
    '''

    show_unborn = None
    '''Show instances when particles are unborn 

    :type:  boolean, default False 
    '''

    space = None
    '''Space to use for copying mesh data 

    :type:  enum in [‘LOCAL’, ‘WORLD’], default ‘WORLD’ 
    '''

    use_children = None
    '''Create instances from child particles 

    :type:  boolean, default False 
    '''

    use_normal = None
    '''Create instances from normal particles 

    :type:  boolean, default False 
    '''

    use_path = None
    '''Create instances along particle paths 

    :type:  boolean, default False 
    '''

    use_preserve_shape = None
    '''Don’t stretch the object 

    :type:  boolean, default False 
    '''

    use_size = None
    '''Use particle size to scale the instances 

    :type:  boolean, default False 
    '''

    value_layer_name = None
    '''Custom data layer name for the randomized value 

    :type:  string, default “”, (never None) 
    '''


class ParticleKey:
    '''Key location for a particle over time '''

    angular_velocity = None
    '''Key angular velocity 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    location = None
    '''Key location 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    rotation = None
    '''Key rotation quaternion 

    :type:  float array of 4 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    time = None
    '''Time of key over the simulation 

    :type:  float in [0, inf], default 0.0 
    '''

    velocity = None
    '''Key velocity 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''


class ParticleSettings:
    '''Particle settings, reusable by multiple particle systems '''

    active_instanceweight = None
    '''

    :type:  ParticleDupliWeight, (readonly) 
    '''

    active_instanceweight_index = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    active_texture = None
    '''Active texture slot being displayed 

    :type:  Texture 
    '''

    active_texture_index = None
    '''Index of active texture slot 

    :type:  int in [0, 17], default 0 
    '''

    adaptive_angle = None
    '''How many degrees path has to curve to make another render segment 

    :type:  int in [0, 45], default 0 
    '''

    adaptive_pixel = None
    '''How many pixels path has to cover to make another render segment 

    :type:  int in [0, 50], default 0 
    '''

    angular_velocity_factor = None
    '''Angular velocity amount (in radians per second) 

    :type:  float in [-200, 200], default 0.0 
    '''

    angular_velocity_mode = None
    '''What axis is used to change particle rotation with time 

    :type:  enum in [‘NONE’, ‘VELOCITY’, ‘HORIZONTAL’, ‘VERTICAL’, ‘GLOBAL_X’, ‘GLOBAL_Y’, ‘GLOBAL_Z’, ‘RAND’], default ‘NONE’ 
    '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    apply_effector_to_children = None
    '''Apply effectors to children 

    :type:  boolean, default False 
    '''

    apply_guide_to_children = None
    '''

    :type:  boolean, default False 
    '''

    bending_random = None
    '''Random stiffness of hairs 

    :type:  float in [0, 1], default 0.0 
    '''

    boids = None
    '''

    :type:  BoidSettings, (readonly) 
    '''

    branch_threshold = None
    '''Threshold of branching 

    :type:  float in [0, 1], default 0.0 
    '''

    brownian_factor = None
    '''Amount of random, erratic particle movement 

    :type:  float in [0, 200], default 0.0 
    '''

    child_length = None
    '''Length of child paths 

    :type:  float in [0, 1], default 0.0 
    '''

    child_length_threshold = None
    '''Amount of particles left untouched by child path length 

    :type:  float in [0, 1], default 0.0 
    '''

    child_nbr = None
    '''Number of children/parent 

    :type:  int in [0, 100000], default 0 
    '''

    child_parting_factor = None
    '''Create parting in the children based on parent strands 

    :type:  float in [0, 1], default 0.0 
    '''

    child_parting_max = None
    '''Maximum root to tip angle (tip distance/root distance for long hair) 

    :type:  float in [0, 180], default 0.0 
    '''

    child_parting_min = None
    '''Minimum root to tip angle (tip distance/root distance for long hair) 

    :type:  float in [0, 180], default 0.0 
    '''

    child_radius = None
    '''Radius of children around parent 

    :type:  float in [0, 10], default 0.0 
    '''

    child_roundness = None
    '''Roundness of children around parent 

    :type:  float in [0, 1], default 0.0 
    '''

    child_size = None
    '''A multiplier for the child particle size 

    :type:  float in [0.001, 100000], default 0.0 
    '''

    child_size_random = None
    '''Random variation to the size of the child particles 

    :type:  float in [0, 1], default 0.0 
    '''

    child_type = None
    '''Create child particles 

    :type:  enum in [‘NONE’, ‘SIMPLE’, ‘INTERPOLATED’], default ‘NONE’ 
    '''

    clump_curve = None
    '''Curve defining clump tapering 

    :type:  CurveMapping, (readonly) 
    '''

    clump_factor = None
    '''Amount of clumping 

    :type:  float in [-1, 1], default 0.0 
    '''

    clump_noise_size = None
    '''Size of clump noise 

    :type:  float in [1e-05, 100000], default 0.0 
    '''

    clump_shape = None
    '''Shape of clumping 

    :type:  float in [-0.999, 0.999], default 0.0 
    '''

    collision_collection = None
    '''Limit colliders to this collection 

    :type:  Collection 
    '''

    color_maximum = None
    '''Maximum length of the particle color vector 

    :type:  float in [0.01, 100], default 0.0 
    '''

    count = None
    '''Total number of particles 

    :type:  int in [0, 10000000], default 0 
    '''

    courant_target = None
    '''The relative distance a particle can move before requiring more subframes (target Courant number); 0.01-0.3 is the recommended range 

    :type:  float in [0.0001, 10], default 0.1 
    '''

    create_long_hair_children = None
    '''Calculate children that suit long hair well 

    :type:  boolean, default False 
    '''

    damping = None
    '''Amount of damping 

    :type:  float in [0, 1], default 0.0 
    '''

    display_color = None
    '''Draw additional particle data as a color 

    :type:  enum in [‘NONE’, ‘MATERIAL’, ‘VELOCITY’, ‘ACCELERATION’], default ‘NONE’ 
    '''

    display_method = None
    '''How particles are drawn in viewport 

    :type:  enum in [‘NONE’, ‘RENDER’, ‘DOT’, ‘CIRC’, ‘CROSS’, ‘AXIS’], default ‘NONE’ 
    '''

    display_percentage = None
    '''Percentage of particles to display in 3D view 

    :type:  int in [0, 100], default 0 
    '''

    display_size = None
    '''Size of particles on viewport in BU 

    :type:  float in [0, 1000], default 0.0 
    '''

    display_step = None
    '''How many steps paths are drawn with (power of 2) 

    :type:  int in [0, 10], default 0 
    '''

    distribution = None
    '''How to distribute particles on selected element 

    :type:  enum in [‘JIT’, ‘RAND’, ‘GRID’], default ‘JIT’ 
    '''

    drag_factor = None
    '''Amount of air-drag 

    :type:  float in [0, 1], default 0.0 
    '''

    effect_hair = None
    '''Hair stiffness for effectors 

    :type:  float in [0, 1], default 0.0 
    '''

    effector_amount = None
    '''How many particles are effectors (0 is all particles) 

    :type:  int in [0, 10000], default 0 
    '''

    effector_weights = None
    '''

    :type:  EffectorWeights, (readonly) 
    '''

    emit_from = None
    '''Where to emit particles from 

    :type:  enum in [‘VERT’, ‘FACE’, ‘VOLUME’], default ‘VERT’ 
    '''

    factor_random = None
    '''Give the starting velocity a random variation 

    :type:  float in [0, 200], default 0.0 
    '''

    fluid = None
    '''

    :type:  SPHFluidSettings, (readonly) 
    '''

    force_field_1 = None
    '''

    :type:  FieldSettings, (readonly) 
    '''

    force_field_2 = None
    '''

    :type:  FieldSettings, (readonly) 
    '''

    frame_end = None
    '''Frame number to stop emitting particles 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    frame_start = None
    '''Frame number to start emitting particles 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    grid_random = None
    '''Add random offset to the grid locations 

    :type:  float in [0, 1], default 0.0 
    '''

    grid_resolution = None
    '''The resolution of the particle grid 

    :type:  int in [1, 250], default 0 
    '''

    hair_length = None
    '''Length of the hair 

    :type:  float in [0, 1000], default 0.0 
    '''

    hair_step = None
    '''Number of hair segments 

    :type:  int in [2, 32767], default 0 
    '''

    hexagonal_grid = None
    '''Create the grid in a hexagonal pattern 

    :type:  boolean, default False 
    '''

    instance_collection = None
    '''Show Objects in this collection in place of particles 

    :type:  Collection 
    '''

    instance_object = None
    '''Show this Object in place of particles 

    :type:  Object 
    '''

    instance_weights = None
    '''Weights for all of the objects in the dupli collection 

    :type:  bpy_prop_collection of ParticleDupliWeight, (readonly) 
    '''

    integrator = None
    '''Algorithm used to calculate physics, from the fastest to the most stable/accurate: Midpoint, Euler, Verlet, RK4 (Old) 

    :type:  enum in [‘EULER’, ‘VERLET’, ‘MIDPOINT’, ‘RK4’], default ‘EULER’ 
    '''

    invert_grid = None
    '''Invert what is considered object and what is not 

    :type:  boolean, default False 
    '''

    is_fluid = None
    '''Particles were created by a fluid simulation 

    :type:  boolean, default False, (readonly) 
    '''

    jitter_factor = None
    '''Amount of jitter applied to the sampling 

    :type:  float in [0, 2], default 0.0 
    '''

    keyed_loops = None
    '''Number of times the keys are looped 

    :type:  int in [1, 10000], default 0 
    '''

    keys_step = None
    '''

    :type:  int in [0, 32767], default 0 
    '''

    kink = None
    '''Type of periodic offset on the path 

    :type:  enum in [‘NO’, ‘CURL’, ‘RADIAL’, ‘WAVE’, ‘BRAID’, ‘SPIRAL’], default ‘NO’ 
    '''

    kink_amplitude = None
    '''The amplitude of the offset 

    :type:  float in [-100000, 100000], default 0.0 
    '''

    kink_amplitude_clump = None
    '''How much clump affects kink amplitude 

    :type:  float in [0, 1], default 0.0 
    '''

    kink_amplitude_random = None
    '''Random variation of the amplitude 

    :type:  float in [0, 1], default 0.0 
    '''

    kink_axis = None
    '''Which axis to use for offset 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    kink_axis_random = None
    '''Random variation of the orientation 

    :type:  float in [0, 1], default 0.0 
    '''

    kink_extra_steps = None
    '''Extra steps for resolution of special kink features 

    :type:  int in [1, inf], default 0 
    '''

    kink_flat = None
    '''How flat the hairs are 

    :type:  float in [0, 1], default 0.0 
    '''

    kink_frequency = None
    '''The frequency of the offset (1/total length) 

    :type:  float in [-100000, 100000], default 0.0 
    '''

    kink_shape = None
    '''Adjust the offset to the beginning/end 

    :type:  float in [-0.999, 0.999], default 0.0 
    '''

    length_random = None
    '''Give path length a random variation 

    :type:  float in [0, 1], default 0.0 
    '''

    lifetime = None
    '''Life span of the particles 

    :type:  float in [1, 1.04857e+06], default 0.0 
    '''

    lifetime_random = None
    '''Give the particle life a random variation 

    :type:  float in [0, 1], default 0.0 
    '''

    line_length_head = None
    '''Length of the line’s head 

    :type:  float in [0, 100000], default 0.0 
    '''

    line_length_tail = None
    '''Length of the line’s tail 

    :type:  float in [0, 100000], default 0.0 
    '''

    lock_boids_to_surface = None
    '''Constrain boids to a surface 

    :type:  boolean, default False 
    '''

    mass = None
    '''Mass of the particles 

    :type:  float in [1e-08, 100000], default 0.0 
    '''

    material = None
    '''Index of material slot used for rendering particles 

    :type:  int in [1, 32767], default 0 
    '''

    material_slot = None
    '''Material slot used for rendering particles 

    :type:  enum in [‘DUMMY’], default ‘DUMMY’ 
    '''

    normal_factor = None
    '''Let the surface normal give the particle a starting velocity 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    object_align_factor = None
    '''Let the emitter object orientation give the particle a starting velocity 

    :type:  float array of 3 items in [-200, 200], default (0.0, 0.0, 0.0) 
    '''

    object_factor = None
    '''Let the object give the particle a starting velocity 

    :type:  float in [-200, 200], default 0.0 
    '''

    particle_factor = None
    '''Let the target particle give the particle a starting velocity 

    :type:  float in [-200, 200], default 0.0 
    '''

    particle_size = None
    '''The size of the particles 

    :type:  float in [0.001, 100000], default 0.0 
    '''

    path_end = None
    '''End time of drawn path 

    :type:  float in [-inf, inf], default 0.0 
    '''

    path_start = None
    '''Starting time of drawn path 

    :type:  float in [-inf, inf], default 0.0 
    '''

    phase_factor = None
    '''Rotation around the chosen orientation axis 

    :type:  float in [-1, 1], default 0.0 
    '''

    phase_factor_random = None
    '''Randomize rotation around the chosen orientation axis 

    :type:  float in [0, 2], default 0.0 
    '''

    physics_type = None
    '''Particle physics type 

    :type:  enum in [‘NO’, ‘NEWTON’, ‘KEYED’, ‘BOIDS’, ‘FLUID’], default ‘NO’ 
    '''

    radius_scale = None
    '''Multiplier of radius properties 

    :type:  float in [0, inf], default 0.0 
    '''

    react_event = None
    '''The event of target particles to react on 

    :type:  enum in [‘DEATH’, ‘COLLIDE’, ‘NEAR’], default ‘DEATH’ 
    '''

    reactor_factor = None
    '''Let the vector away from the target particle’s location give the particle a starting velocity 

    :type:  float in [-10, 10], default 0.0 
    '''

    render_step = None
    '''How many steps paths are rendered with (power of 2) 

    :type:  int in [0, 20], default 0 
    '''

    render_type = None
    '''How particles are rendered 

    :type:  enum in [‘NONE’, ‘HALO’, ‘LINE’, ‘PATH’, ‘OBJECT’, ‘COLLECTION’], default ‘NONE’ 
    '''

    rendered_child_count = None
    '''Number of children/parent for rendering 

    :type:  int in [0, 100000], default 0 
    '''

    root_radius = None
    '''Strand width at the root 

    :type:  float in [0, inf], default 0.0 
    '''

    rotation_factor_random = None
    '''Randomize particle orientation 

    :type:  float in [0, 1], default 0.0 
    '''

    rotation_mode = None
    '''Particle orientation axis (does not affect Explode modifier’s results) 

    :type:  enum in [‘NONE’, ‘NOR’, ‘NOR_TAN’, ‘VEL’, ‘GLOB_X’, ‘GLOB_Y’, ‘GLOB_Z’, ‘OB_X’, ‘OB_Y’, ‘OB_Z’], default ‘NONE’ 
    '''

    roughness_1 = None
    '''Amount of location dependent rough 

    :type:  float in [0, 100000], default 0.0 
    '''

    roughness_1_size = None
    '''Size of location dependent rough 

    :type:  float in [0.01, 100000], default 0.0 
    '''

    roughness_2 = None
    '''Amount of random rough 

    :type:  float in [0, 100000], default 0.0 
    '''

    roughness_2_size = None
    '''Size of random rough 

    :type:  float in [0.01, 100000], default 0.0 
    '''

    roughness_2_threshold = None
    '''Amount of particles left untouched by random rough 

    :type:  float in [0, 1], default 0.0 
    '''

    roughness_curve = None
    '''Curve defining roughness 

    :type:  CurveMapping, (readonly) 
    '''

    roughness_end_shape = None
    '''Shape of end point rough 

    :type:  float in [0, 10], default 0.0 
    '''

    roughness_endpoint = None
    '''Amount of end point rough 

    :type:  float in [0, 100000], default 0.0 
    '''

    shape = None
    '''Strand shape parameter 

    :type:  float in [-1, 1], default 0.0 
    '''

    show_guide_hairs = None
    '''Show guide hairs 

    :type:  boolean, default False 
    '''

    show_hair_grid = None
    '''Show hair simulation grid 

    :type:  boolean, default False 
    '''

    show_health = None
    '''Draw boid health 

    :type:  boolean, default False 
    '''

    show_number = None
    '''Show particle number 

    :type:  boolean, default False 
    '''

    show_size = None
    '''Show particle size 

    :type:  boolean, default False 
    '''

    show_unborn = None
    '''Show particles before they are emitted 

    :type:  boolean, default False 
    '''

    show_velocity = None
    '''Show particle velocity 

    :type:  boolean, default False 
    '''

    size_random = None
    '''Give the particle size a random variation 

    :type:  float in [0, 1], default 0.0 
    '''

    subframes = None
    '''Subframes to simulate for improved stability and finer granularity simulations (dt = timestep / (subframes + 1)) 

    :type:  int in [0, 1000], default 0 
    '''

    tangent_factor = None
    '''Let the surface tangent give the particle a starting velocity 

    :type:  float in [-1000, 1000], default 0.0 
    '''

    tangent_phase = None
    '''Rotate the surface tangent 

    :type:  float in [-1, 1], default 0.0 
    '''

    texture_slots = None
    '''Texture slots defining the mapping and influence of textures 

    :type:  ParticleSettingsTextureSlots bpy_prop_collection of ParticleSettingsTextureSlot, (readonly) 
    '''

    time_tweak = None
    '''A multiplier for physics timestep (1.0 means one frame = 1/25 seconds) 

    :type:  float in [0, 100], default 0.0 
    '''

    timestep = None
    '''The simulation timestep per frame (seconds per frame) 

    :type:  float in [0.0001, 100], default 0.0 
    '''

    tip_radius = None
    '''Strand width at the tip 

    :type:  float in [0, inf], default 0.0 
    '''

    trail_count = None
    '''Number of trail particles 

    :type:  int in [1, 100000], default 0 
    '''

    twist = None
    '''Number of turns around parent along the strand 

    :type:  float in [-100000, 100000], default 0.0 
    '''

    twist_curve = None
    '''Curve defining twist 

    :type:  CurveMapping, (readonly) 
    '''

    type = None
    '''Particle Type 

    :type:  enum in [‘EMITTER’, ‘HAIR’], default ‘EMITTER’ 
    '''

    use_absolute_path_time = None
    '''Path timing is in absolute frames 

    :type:  boolean, default False 
    '''

    use_adaptive_subframes = None
    '''Automatically set the number of subframes 

    :type:  boolean, default False 
    '''

    use_advanced_hair = None
    '''Use full physics calculations for growing hair 

    :type:  boolean, default False 
    '''

    use_close_tip = None
    '''Set tip radius to zero 

    :type:  boolean, default False 
    '''

    use_clump_curve = None
    '''Use a curve to define clump tapering 

    :type:  boolean, default False 
    '''

    use_clump_noise = None
    '''Create random clumps around the parent 

    :type:  boolean, default False 
    '''

    use_collection_count = None
    '''Use object multiple times in the same collection 

    :type:  boolean, default False 
    '''

    use_collection_pick_random = None
    '''Pick objects from collection randomly 

    :type:  boolean, default False 
    '''

    use_dead = None
    '''Show particles after they have died 

    :type:  boolean, default False 
    '''

    use_die_on_collision = None
    '''Particles die when they collide with a deflector object 

    :type:  boolean, default False 
    '''

    use_dynamic_rotation = None
    '''Particle rotations are affected by collisions and effectors 

    :type:  boolean, default False 
    '''

    use_emit_random = None
    '''Emit in random order of elements 

    :type:  boolean, default False 
    '''

    use_even_distribution = None
    '''Use even distribution from faces based on face areas or edge lengths 

    :type:  boolean, default False 
    '''

    use_global_instance = None
    '''Use object’s global coordinates for duplication 

    :type:  boolean, default False 
    '''

    use_hair_bspline = None
    '''Interpolate hair using B-Splines 

    :type:  boolean, default False 
    '''

    use_modifier_stack = None
    '''Emit particles from mesh with modifiers applied (must use same subsurf level for viewport and render for correct results) 

    :type:  boolean, default False 
    '''

    use_multiply_size_mass = None
    '''Multiply mass by particle size 

    :type:  boolean, default False 
    '''

    use_parent_particles = None
    '''Render parent particles 

    :type:  boolean, default False 
    '''

    use_react_multiple = None
    '''React multiple times 

    :type:  boolean, default False 
    '''

    use_react_start_end = None
    '''Give birth to unreacted particles eventually 

    :type:  boolean, default False 
    '''

    use_regrow_hair = None
    '''Regrow hair for each frame 

    :type:  boolean, default False 
    '''

    use_render_adaptive = None
    '''Draw steps of the particle path 

    :type:  boolean, default False 
    '''

    use_rotation_instance = None
    '''Use object’s rotation for duplication (global x-axis is aligned particle rotation axis) 

    :type:  boolean, default False 
    '''

    use_rotations = None
    '''Calculate particle rotations 

    :type:  boolean, default False 
    '''

    use_roughness_curve = None
    '''Use a curve to define roughness 

    :type:  boolean, default False 
    '''

    use_scale_instance = None
    '''Use object’s scale for duplication 

    :type:  boolean, default False 
    '''

    use_self_effect = None
    '''Particle effectors affect themselves 

    :type:  boolean, default False 
    '''

    use_size_deflect = None
    '''Use particle’s size in deflection 

    :type:  boolean, default False 
    '''

    use_strand_primitive = None
    '''Use the strand primitive for rendering 

    :type:  boolean, default False 
    '''

    use_twist_curve = None
    '''Use a curve to define twist 

    :type:  boolean, default False 
    '''

    use_velocity_length = None
    '''Multiply line length by particle speed 

    :type:  boolean, default False 
    '''

    use_whole_collection = None
    '''Use whole collection at once 

    :type:  boolean, default False 
    '''

    userjit = None
    '''Emission locations / face (0 = automatic) 

    :type:  int in [0, 1000], default 0 
    '''

    virtual_parents = None
    '''Relative amount of virtual parents 

    :type:  float in [0, 1], default 0.0 
    '''


class ParticleSettingsTextureSlot:
    '''Texture slot for textures in a Particle Settings data-block '''

    clump_factor = None
    '''Amount texture affects child clump 

    :type:  float in [-inf, inf], default 0.0 
    '''

    damp_factor = None
    '''Amount texture affects particle damping 

    :type:  float in [-inf, inf], default 0.0 
    '''

    density_factor = None
    '''Amount texture affects particle density 

    :type:  float in [-inf, inf], default 0.0 
    '''

    field_factor = None
    '''Amount texture affects particle force fields 

    :type:  float in [-inf, inf], default 0.0 
    '''

    gravity_factor = None
    '''Amount texture affects particle gravity 

    :type:  float in [-inf, inf], default 0.0 
    '''

    kink_amp_factor = None
    '''Amount texture affects child kink amplitude 

    :type:  float in [-inf, inf], default 0.0 
    '''

    kink_freq_factor = None
    '''Amount texture affects child kink frequency 

    :type:  float in [-inf, inf], default 0.0 
    '''

    length_factor = None
    '''Amount texture affects child hair length 

    :type:  float in [-inf, inf], default 0.0 
    '''

    life_factor = None
    '''Amount texture affects particle life time 

    :type:  float in [-inf, inf], default 0.0 
    '''

    mapping = None
    '''

    :type:  enum in [‘FLAT’, ‘CUBE’, ‘TUBE’, ‘SPHERE’], default ‘FLAT’ 
    '''

    mapping_x = None
    '''

    :type:  enum in [‘NONE’, ‘X’, ‘Y’, ‘Z’], default ‘NONE’ 
    '''

    mapping_y = None
    '''

    :type:  enum in [‘NONE’, ‘X’, ‘Y’, ‘Z’], default ‘NONE’ 
    '''

    mapping_z = None
    '''

    :type:  enum in [‘NONE’, ‘X’, ‘Y’, ‘Z’], default ‘NONE’ 
    '''

    object = None
    '''Object to use for mapping with Object texture coordinates 

    :type:  Object 
    '''

    rough_factor = None
    '''Amount texture affects child roughness 

    :type:  float in [-inf, inf], default 0.0 
    '''

    size_factor = None
    '''Amount texture affects physical particle size 

    :type:  float in [-inf, inf], default 0.0 
    '''

    texture_coords = None
    '''Texture coordinates used to map the texture onto the background 

    :type:  enum in [‘GLOBAL’, ‘OBJECT’, ‘UV’, ‘ORCO’, ‘STRAND’], default ‘GLOBAL’ 
    '''

    time_factor = None
    '''Amount texture affects particle emission time 

    :type:  float in [-inf, inf], default 0.0 
    '''

    twist_factor = None
    '''Amount texture affects child twist 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_map_clump = None
    '''Affect the child clumping 

    :type:  boolean, default False 
    '''

    use_map_damp = None
    '''Affect the particle velocity damping 

    :type:  boolean, default False 
    '''

    use_map_density = None
    '''Affect the density of the particles 

    :type:  boolean, default False 
    '''

    use_map_field = None
    '''Affect the particle force fields 

    :type:  boolean, default False 
    '''

    use_map_gravity = None
    '''Affect the particle gravity 

    :type:  boolean, default False 
    '''

    use_map_kink_amp = None
    '''Affect the child kink amplitude 

    :type:  boolean, default False 
    '''

    use_map_kink_freq = None
    '''Affect the child kink frequency 

    :type:  boolean, default False 
    '''

    use_map_length = None
    '''Affect the child hair length 

    :type:  boolean, default False 
    '''

    use_map_life = None
    '''Affect the life time of the particles 

    :type:  boolean, default False 
    '''

    use_map_rough = None
    '''Affect the child rough 

    :type:  boolean, default False 
    '''

    use_map_size = None
    '''Affect the particle size 

    :type:  boolean, default False 
    '''

    use_map_time = None
    '''Affect the emission time of the particles 

    :type:  boolean, default False 
    '''

    use_map_twist = None
    '''Affect the child twist 

    :type:  boolean, default False 
    '''

    use_map_velocity = None
    '''Affect the particle initial velocity 

    :type:  boolean, default False 
    '''

    uv_layer = None
    '''UV map to use for mapping with UV texture coordinates 

    :type:  string, default “”, (never None) 
    '''

    velocity_factor = None
    '''Amount texture affects particle initial velocity 

    :type:  float in [-inf, inf], default 0.0 
    '''


class ParticleSettingsTextureSlots:
    '''Collection of texture slots '''

    pass


class ParticleSystem:
    '''Particle system in an object '''

    active_particle_target = None
    '''

    :type:  ParticleTarget, (readonly) 
    '''

    active_particle_target_index = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    child_particles = None
    '''Child particles generated by the particle system 

    :type:  bpy_prop_collection of ChildParticle, (readonly) 
    '''

    child_seed = None
    '''Offset in the random number table for child particles, to get a different randomized result 

    :type:  int in [0, inf], default 0 
    '''

    cloth = None
    '''Cloth dynamics for hair 

    :type:  ClothModifier, (readonly, never None) 
    '''

    dt_frac = None
    '''The current simulation time step size, as a fraction of a frame 

    :type:  float in [0.00990099, 1], default 0.0, (readonly) 
    '''

    has_multiple_caches = None
    '''Particle system has multiple point caches 

    :type:  boolean, default False, (readonly) 
    '''

    invert_vertex_group_clump = None
    '''Negate the effect of the clump vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_density = None
    '''Negate the effect of the density vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_field = None
    '''Negate the effect of the field vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_kink = None
    '''Negate the effect of the kink vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_length = None
    '''Negate the effect of the length vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_rotation = None
    '''Negate the effect of the rotation vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_roughness_1 = None
    '''Negate the effect of the roughness 1 vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_roughness_2 = None
    '''Negate the effect of the roughness 2 vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_roughness_end = None
    '''Negate the effect of the roughness end vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_size = None
    '''Negate the effect of the size vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_tangent = None
    '''Negate the effect of the tangent vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_twist = None
    '''Negate the effect of the twist vertex group 

    :type:  boolean, default False 
    '''

    invert_vertex_group_velocity = None
    '''Negate the effect of the velocity vertex group 

    :type:  boolean, default False 
    '''

    is_editable = None
    '''Particle system can be edited in particle mode 

    :type:  boolean, default False, (readonly) 
    '''

    is_edited = None
    '''Particle system has been edited in particle mode 

    :type:  boolean, default False, (readonly) 
    '''

    is_global_hair = None
    '''Hair keys are in global coordinate space 

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''Particle system name 

    :type:  string, default “”, (never None) 
    '''

    parent = None
    '''Use this object’s coordinate system instead of global coordinate system 

    :type:  Object 
    '''

    particles = None
    '''Particles generated by the particle system 

    :type:  bpy_prop_collection of Particle, (readonly) 
    '''

    point_cache = None
    '''

    :type:  PointCache, (readonly, never None) 
    '''

    reactor_target_object = None
    '''For reactor systems, the object that has the target particle system (empty if same object) 

    :type:  Object 
    '''

    reactor_target_particle_system = None
    '''For reactor systems, index of particle system on the target object 

    :type:  int in [1, 32767], default 0 
    '''

    seed = None
    '''Offset in the random number table, to get a different randomized result 

    :type:  int in [0, inf], default 0 
    '''

    settings = None
    '''Particle system settings 

    :type:  ParticleSettings, (never None) 
    '''

    targets = None
    '''Target particle systems 

    :type:  bpy_prop_collection of ParticleTarget, (readonly) 
    '''

    use_hair_dynamics = None
    '''Enable hair dynamics using cloth simulation 

    :type:  boolean, default False 
    '''

    use_keyed_timing = None
    '''Use key times 

    :type:  boolean, default False 
    '''

    vertex_group_clump = None
    '''Vertex group to control clump 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_density = None
    '''Vertex group to control density 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_field = None
    '''Vertex group to control field 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_kink = None
    '''Vertex group to control kink 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_length = None
    '''Vertex group to control length 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_rotation = None
    '''Vertex group to control rotation 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_roughness_1 = None
    '''Vertex group to control roughness 1 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_roughness_2 = None
    '''Vertex group to control roughness 2 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_roughness_end = None
    '''Vertex group to control roughness end 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_size = None
    '''Vertex group to control size 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_tangent = None
    '''Vertex group to control tangent 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_twist = None
    '''Vertex group to control twist 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_velocity = None
    '''Vertex group to control velocity 

    :type:  string, default “”, (never None) 
    '''

    def co_hair(self, object, particle_no=0, step=0):
        '''Obtain cache hair data 

        :param object: Object 
        :type object: Object, (never None)
        :param particle_no: Particle no 
        :type particle_no: int in [-inf, inf], (optional)
        :param step: step no 
        :type step: int in [-inf, inf], (optional)
        :rtype: float array of 3 items in [-inf, inf] 
        :return:  Co, Exported hairkey location 
        '''
        pass

    def uv_on_emitter(self, modifier, particle=None, particle_no=0, uv_no=0):
        '''Obtain uv for all particles 

        :param modifier: Particle modifier 
        :type modifier: ParticleSystemModifier, (never None)
        :param particle: Particle 
        :type particle: Particle, (optional)
        :param particle_no: Particle no 
        :type particle_no: int in [-inf, inf], (optional)
        :param uv_no: UV no 
        :type uv_no: int in [-inf, inf], (optional)
        :rtype: float array of 2 items in [-inf, inf] 
        :return:  uv 
        '''
        pass

    def mcol_on_emitter(self, modifier, particle, particle_no=0, vcol_no=0):
        '''Obtain mcol for all particles 

        :param modifier: Particle modifier 
        :type modifier: ParticleSystemModifier, (never None)
        :param particle: Particle 
        :type particle: Particle, (never None)
        :param particle_no: Particle no 
        :type particle_no: int in [-inf, inf], (optional)
        :param vcol_no: vcol no 
        :type vcol_no: int in [-inf, inf], (optional)
        :rtype: float array of 3 items in [0, inf] 
        :return:  mcol 
        '''
        pass


class ParticleSystemModifier:
    '''Particle system simulation modifier '''

    particle_system = None
    '''Particle System that this modifier controls 

    :type:  ParticleSystem, (readonly, never None) 
    '''


class ParticleSystems:
    '''Collection of particle systems '''

    active = None
    '''Active particle system being displayed 

    :type:  ParticleSystem, (readonly) 
    '''

    active_index = None
    '''Index of active particle system slot 

    :type:  int in [0, inf], default 0 
    '''


class ParticleTarget:
    '''Target particle system '''

    alliance = None
    '''

    :type:  enum in [‘FRIEND’, ‘NEUTRAL’, ‘ENEMY’], default ‘NEUTRAL’ 
    '''

    duration = None
    '''

    :type:  float in [0, 1.04857e+06], default 0.0 
    '''

    is_valid = None
    '''Keyed particles target is valid 

    :type:  boolean, default False 
    '''

    name = None
    '''Particle target name 

    :type:  string, default “”, (readonly, never None) 
    '''

    object = None
    '''The object that has the target particle system (empty if same object) 

    :type:  Object 
    '''

    system = None
    '''The index of particle system on the target object 

    :type:  int in [1, inf], default 0 
    '''

    time = None
    '''

    :type:  float in [0, 1.04857e+06], default 0.0 
    '''


class PathCompare:
    '''Match paths against this value '''

    path = None
    '''

    :type:  string, default “”, (never None) 
    '''

    use_glob = None
    '''Enable wildcard globbing 

    :type:  boolean, default False 
    '''


class PathCompareCollection:
    '''Collection of paths '''

    pass


class PivotConstraint:
    '''Rotate around a different point '''

    head_tail = None
    '''Target along length of bone: Head=0, Tail=1 

    :type:  float in [0, 1], default 0.0 
    '''

    offset = None
    '''Offset of pivot from target (when set), or from owner’s location (when Fixed Position is off), or the absolute pivot point 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    rotation_range = None
    '''Rotation range on which pivoting should occur 

    :type:  enum in [‘ALWAYS_ACTIVE’, ‘NX’, ‘NY’, ‘NZ’, ‘X’, ‘Y’, ‘Z’], default ‘NX’ 
    '''

    subtarget = None
    '''

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target Object, defining the position of the pivot when defined 

    :type:  Object 
    '''

    use_bbone_shape = None
    '''Follow shape of B-Bone segments when calculating Head/Tail position 

    :type:  boolean, default False 
    '''

    use_relative_location = None
    '''Offset will be an absolute point in space instead of relative to the target 

    :type:  boolean, default False 
    '''


class PointCache:
    '''Active point cache for physics simulations '''

    compression = None
    '''Compression method to be used 

    :type:  enum in [‘NO’, ‘LIGHT’, ‘HEAVY’], default ‘NO’ 
    '''

    filepath = None
    '''Cache file path 

    :type:  string, default “”, (never None) 
    '''

    frame_end = None
    '''Frame on which the simulation stops 

    :type:  int in [1, 1048574], default 0 
    '''

    frame_start = None
    '''Frame on which the simulation starts 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    frame_step = None
    '''Number of frames between cached frames 

    :type:  int in [1, 20], default 0 
    '''

    index = None
    '''Index number of cache files 

    :type:  int in [-1, 100], default 0 
    '''

    info = None
    '''Info on current cache status 

    :type:  string, default “”, (readonly, never None) 
    '''

    is_baked = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    is_baking = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    is_frame_skip = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    is_outdated = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''Cache name 

    :type:  string, default “”, (never None) 
    '''

    point_caches = None
    '''

    :type:  PointCaches bpy_prop_collection of PointCacheItem, (readonly) 
    '''

    use_disk_cache = None
    '''Save cache files to disk (.blend file must be saved first) 

    :type:  boolean, default False 
    '''

    use_external = None
    '''Read cache from an external location 

    :type:  boolean, default False 
    '''

    use_library_path = None
    '''Use this file’s path for the disk cache when library linked into another file (for local bakes per scene file, disable this option) 

    :type:  boolean, default False 
    '''


class PointCacheItem:
    '''Point cache for physics simulations '''

    compression = None
    '''Compression method to be used 

    :type:  enum in [‘NO’, ‘LIGHT’, ‘HEAVY’], default ‘NO’ 
    '''

    filepath = None
    '''Cache file path 

    :type:  string, default “”, (never None) 
    '''

    frame_end = None
    '''Frame on which the simulation stops 

    :type:  int in [1, 1048574], default 0 
    '''

    frame_start = None
    '''Frame on which the simulation starts 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    frame_step = None
    '''Number of frames between cached frames 

    :type:  int in [1, 20], default 0 
    '''

    index = None
    '''Index number of cache files 

    :type:  int in [-1, 100], default 0 
    '''

    info = None
    '''Info on current cache status 

    :type:  string, default “”, (readonly, never None) 
    '''

    is_baked = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    is_baking = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    is_frame_skip = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    is_outdated = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''Cache name 

    :type:  string, default “”, (never None) 
    '''

    use_disk_cache = None
    '''Save cache files to disk (.blend file must be saved first) 

    :type:  boolean, default False 
    '''

    use_external = None
    '''Read cache from an external location 

    :type:  boolean, default False 
    '''

    use_library_path = None
    '''Use this file’s path for the disk cache when library linked into another file (for local bakes per scene file, disable this option) 

    :type:  boolean, default False 
    '''


class PointCaches:
    '''Collection of point caches '''

    active_index = None
    '''

    :type:  int in [0, inf], default 0 
    '''


class PointLight:
    '''Omnidirectional point Light '''

    constant_coefficient = None
    '''Constant distance attenuation coefficient 

    :type:  float in [0, inf], default 0.0 
    '''

    contact_shadow_bias = None
    '''Bias to avoid self shadowing 

    :type:  float in [0.001, 9999], default 0.03 
    '''

    contact_shadow_distance = None
    '''World space distance in which to search for screen space occluder 

    :type:  float in [0, 9999], default 0.2 
    '''

    contact_shadow_soft_size = None
    '''Control how soft the contact shadows will be 

    :type:  float in [0, 9999], default 0.2 
    '''

    contact_shadow_thickness = None
    '''Pixel thickness used to detect occlusion 

    :type:  float in [0, 9999], default 0.2 
    '''

    energy = None
    '''Amount of light emitted 

    :type:  float in [-inf, inf], default 10.0 
    '''

    falloff_curve = None
    '''Custom light falloff curve 

    :type:  CurveMapping, (readonly) 
    '''

    falloff_type = None
    '''Intensity Decay with distance 

    :type:  enum in [‘CONSTANT’, ‘INVERSE_LINEAR’, ‘INVERSE_SQUARE’, ‘INVERSE_COEFFICIENTS’, ‘CUSTOM_CURVE’, ‘LINEAR_QUADRATIC_WEIGHTED’], default ‘CONSTANT’ 
    '''

    linear_attenuation = None
    '''Linear distance attenuation 

    :type:  float in [0, 1], default 0.0 
    '''

    linear_coefficient = None
    '''Linear distance attenuation coefficient 

    :type:  float in [0, inf], default 0.0 
    '''

    quadratic_attenuation = None
    '''Quadratic distance attenuation 

    :type:  float in [0, 1], default 0.0 
    '''

    quadratic_coefficient = None
    '''Quadratic distance attenuation coefficient 

    :type:  float in [0, inf], default 0.0 
    '''

    shadow_buffer_bias = None
    '''Bias for reducing self shadowing 

    :type:  float in [0.001, 9999], default 1.0 
    '''

    shadow_buffer_bleed_bias = None
    '''Bias for reducing light-bleed on variance shadow maps 

    :type:  float in [0, 1], default 0.0 
    '''

    shadow_buffer_clip_end = None
    '''Shadow map clip end, beyond which objects will not generate shadows 

    :type:  float in [0, 9999], default 40.0 
    '''

    shadow_buffer_clip_start = None
    '''Shadow map clip start, below which objects will not generate shadows 

    :type:  float in [0, 9999], default 0.5 
    '''

    shadow_buffer_exp = None
    '''Bias for reducing light-bleed on exponential shadow maps 

    :type:  float in [1, 9999], default 2.5 
    '''

    shadow_buffer_samples = None
    '''Number of shadow buffer samples 

    :type:  int in [1, 16], default 0 
    '''

    shadow_buffer_size = None
    '''Resolution of the shadow buffer, higher values give crisper shadows but use more memory 

    :type:  int in [128, 10240], default 0 
    '''

    shadow_buffer_soft = None
    '''Size of shadow buffer sampling area 

    :type:  float in [0, 100], default 3.0 
    '''

    shadow_color = None
    '''Color of shadows cast by the light 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    shadow_soft_size = None
    '''Light size for ray shadow sampling (Raytraced shadows) 

    :type:  float in [0, inf], default 0.25 
    '''

    use_contact_shadow = None
    '''Use screen space raytracing to have correct shadowing near occluder, or for small features that does not appear in shadow maps 

    :type:  boolean, default False 
    '''

    use_shadow = None
    '''

    :type:  boolean, default False 
    '''


class PointerProperty:
    '''RNA pointer property to point to another RNA struct '''

    fixed_type = None
    '''Fixed pointer type, empty if variable type 

    :type:  Struct, (readonly) 
    '''


class PolygonFloatProperties:
    '''Collection of float properties '''

    def new(self, name="Float Prop"):
        '''Add a float property layer to Mesh 

        :param name: Float property name 
        :type name: string, (optional, never None)
        :rtype: MeshPolygonFloatPropertyLayer 
        :return:  The newly created layer 
        '''
        pass


class PolygonIntProperties:
    '''Collection of int properties '''

    def new(self, name="Int Prop"):
        '''Add a integer property layer to Mesh 

        :param name: Int property name 
        :type name: string, (optional, never None)
        :rtype: MeshPolygonIntPropertyLayer 
        :return:  The newly created layer 
        '''
        pass


class PolygonStringProperties:
    '''Collection of string properties '''

    def new(self, name="String Prop"):
        '''Add a string property layer to Mesh 

        :param name: String property name 
        :type name: string, (optional, never None)
        :rtype: MeshPolygonStringPropertyLayer 
        :return:  The newly created layer 
        '''
        pass


class Pose:
    '''A collection of pose channels, including settings for animating bones '''

    animation_visualization = None
    '''Animation data for this data-block 

    :type:  AnimViz, (readonly, never None) 
    '''

    bone_groups = None
    '''Groups of the bones 

    :type:  BoneGroups bpy_prop_collection of BoneGroup, (readonly) 
    '''

    bones = None
    '''Individual pose bones for the armature 

    :type:  bpy_prop_collection of PoseBone, (readonly) 
    '''

    ik_param = None
    '''Parameters for IK solver 

    :type:  IKParam, (readonly) 
    '''

    ik_solver = None
    '''Selection of IK solver for IK chain 

    :type:  enum in [‘LEGACY’, ‘ITASC’], default ‘LEGACY’ 
    '''


class PoseBone:
    '''Channel defining pose data for a bone in a Pose '''

    bbone_curveinx = None
    '''X-axis handle offset for start of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_curveiny = None
    '''Y-axis handle offset for start of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_curveoutx = None
    '''X-axis handle offset for end of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_curveouty = None
    '''Y-axis handle offset for end of the B-Bone’s curve, adjusts curvature 

    :type:  float in [-5, 5], default 0.0 
    '''

    bbone_custom_handle_end = None
    '''Bone that serves as the end handle for the B-Bone curve 

    :type:  PoseBone, (readonly) 
    '''

    bbone_custom_handle_start = None
    '''Bone that serves as the start handle for the B-Bone curve 

    :type:  PoseBone, (readonly) 
    '''

    bbone_easein = None
    '''Length of first Bezier Handle (for B-Bones only) 

    :type:  float in [-5, 5], default 1.0 
    '''

    bbone_easeout = None
    '''Length of second Bezier Handle (for B-Bones only) 

    :type:  float in [-5, 5], default 1.0 
    '''

    bbone_rollin = None
    '''Roll offset for the start of the B-Bone, adjusts twist 

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    bbone_rollout = None
    '''Roll offset for the end of the B-Bone, adjusts twist 

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    bbone_scalein = None
    '''Scale factor for start of the B-Bone, adjusts thickness (for tapering effects) 

    :type:  float in [0, 5], default 1.0 
    '''

    bbone_scaleout = None
    '''Scale factor for end of the B-Bone, adjusts thickness (for tapering effects) 

    :type:  float in [0, 5], default 1.0 
    '''

    bone = None
    '''Bone associated with this PoseBone 

    :type:  Bone, (readonly, never None) 
    '''

    bone_group = None
    '''Bone Group this pose channel belongs to 

    :type:  BoneGroup 
    '''

    bone_group_index = None
    '''Bone Group this pose channel belongs to (0=no group) 

    :type:  int in [-32768, 32767], default 0 
    '''

    child = None
    '''Child of this pose bone 

    :type:  PoseBone, (readonly) 
    '''

    constraints = None
    '''Constraints that act on this PoseChannel 

    :type:  PoseBoneConstraints bpy_prop_collection of Constraint, (readonly) 
    '''

    custom_shape = None
    '''Object that defines custom draw type for this bone 

    :type:  Object 
    '''

    custom_shape_scale = None
    '''Adjust the size of the custom shape 

    :type:  float in [0, 1000], default 0.0 
    '''

    custom_shape_transform = None
    '''Bone that defines the display transform of this custom shape 

    :type:  PoseBone 
    '''

    head = None
    '''Location of head of the channel’s bone 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    ik_linear_weight = None
    '''Weight of scale constraint for IK 

    :type:  float in [0, 1], default 0.0 
    '''

    ik_max_x = None
    '''Maximum angles for IK Limit 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    ik_max_y = None
    '''Maximum angles for IK Limit 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    ik_max_z = None
    '''Maximum angles for IK Limit 

    :type:  float in [0, 3.14159], default 0.0 
    '''

    ik_min_x = None
    '''Minimum angles for IK Limit 

    :type:  float in [-3.14159, 0], default 0.0 
    '''

    ik_min_y = None
    '''Minimum angles for IK Limit 

    :type:  float in [-3.14159, 0], default 0.0 
    '''

    ik_min_z = None
    '''Minimum angles for IK Limit 

    :type:  float in [-3.14159, 0], default 0.0 
    '''

    ik_rotation_weight = None
    '''Weight of rotation constraint for IK 

    :type:  float in [0, 1], default 0.0 
    '''

    ik_stiffness_x = None
    '''IK stiffness around the X axis 

    :type:  float in [0, 0.99], default 0.0 
    '''

    ik_stiffness_y = None
    '''IK stiffness around the Y axis 

    :type:  float in [0, 0.99], default 0.0 
    '''

    ik_stiffness_z = None
    '''IK stiffness around the Z axis 

    :type:  float in [0, 0.99], default 0.0 
    '''

    ik_stretch = None
    '''Allow scaling of the bone for IK 

    :type:  float in [0, 1], default 0.0 
    '''

    is_in_ik_chain = None
    '''Is part of an IK chain 

    :type:  boolean, default False, (readonly) 
    '''

    location = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    lock_ik_x = None
    '''Disallow movement around the X axis 

    :type:  boolean, default False 
    '''

    lock_ik_y = None
    '''Disallow movement around the Y axis 

    :type:  boolean, default False 
    '''

    lock_ik_z = None
    '''Disallow movement around the Z axis 

    :type:  boolean, default False 
    '''

    lock_location = None
    '''Lock editing of location in the interface 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    lock_rotation = None
    '''Lock editing of rotation in the interface 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    lock_rotation_w = None
    '''Lock editing of ‘angle’ component of four-component rotations in the interface 

    :type:  boolean, default False 
    '''

    lock_rotations_4d = None
    '''Lock editing of four component rotations by components (instead of as Eulers) 

    :type:  boolean, default False 
    '''

    lock_scale = None
    '''Lock editing of scale in the interface 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    matrix = None
    '''Final 4x4 matrix after constraints and drivers are applied (object space) 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    matrix_basis = None
    '''Alternative access to location/scale/rotation relative to the parent and own rest bone 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    matrix_channel = None
    '''4x4 matrix, before constraints 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)), (readonly) 
    '''

    motion_path = None
    '''Motion Path for this element 

    :type:  MotionPath, (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    parent = None
    '''Parent of this pose bone 

    :type:  PoseBone, (readonly) 
    '''

    rotation_axis_angle = None
    '''Angle of Rotation for Axis-Angle rotation representation 

    :type:  float array of 4 items in [-inf, inf], default (0.0, 0.0, 1.0, 0.0) 
    '''

    rotation_euler = None
    '''Rotation in Eulers 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    rotation_mode = None
    '''

    :type:  enum in [‘QUATERNION’, ‘XYZ’, ‘XZY’, ‘YXZ’, ‘YZX’, ‘ZXY’, ‘ZYX’, ‘AXIS_ANGLE’], default ‘QUATERNION’ 
    '''

    rotation_quaternion = None
    '''Rotation in Quaternions 

    :type:  float array of 4 items in [-inf, inf], default (1.0, 0.0, 0.0, 0.0) 
    '''

    scale = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (1.0, 1.0, 1.0) 
    '''

    tail = None
    '''Location of tail of the channel’s bone 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    use_custom_shape_bone_size = None
    '''Scale the custom object by the bone length 

    :type:  boolean, default False 
    '''

    use_ik_limit_x = None
    '''Limit movement around the X axis 

    :type:  boolean, default False 
    '''

    use_ik_limit_y = None
    '''Limit movement around the Y axis 

    :type:  boolean, default False 
    '''

    use_ik_limit_z = None
    '''Limit movement around the Z axis 

    :type:  boolean, default False 
    '''

    use_ik_linear_control = None
    '''Apply channel size as IK constraint if stretching is enabled 

    :type:  boolean, default False 
    '''

    use_ik_rotation_control = None
    '''Apply channel rotation as IK constraint 

    :type:  boolean, default False 
    '''

    basename = None
    '''The name of this bone before any ‘.’ character (readonly) '''

    center = None
    '''The midpoint between the head and the tail. (readonly) '''

    children = None
    '''(readonly) '''

    children_recursive = None
    '''A list of all children from this bone. Warning: takes O(len(bones)**2) time. (readonly) '''

    children_recursive_basename = None
    '''Returns a chain of children with the same base name as this bone. Only direct chains are supported, forks caused by multiple children with matching base names will terminate the function and not be returned. Warning: takes O(len(bones)**2) time. (readonly) '''

    length = None
    '''The distance from head to tail, when set the head is moved to fit the length. '''

    parent_recursive = None
    '''A list of parents, starting with the immediate parent (readonly) '''

    vector = None
    '''The direction this bone is pointing. Utility function for (tail - head) (readonly) '''

    x_axis = None
    '''Vector pointing down the x-axis of the bone. (readonly) '''

    y_axis = None
    '''Vector pointing down the y-axis of the bone. (readonly) '''

    z_axis = None
    '''Vector pointing down the z-axis of the bone. (readonly) '''

    def evaluate_envelope(self, point):
        '''Calculate bone envelope at given point 

        :param point: Point, Position in 3d space to evaluate 
        :type point: float array of 3 items in [-inf, inf]
        :rtype: float in [-inf, inf] 
        :return:  Factor, Envelope factor 
        '''
        pass

    def bbone_segment_matrix(self, index, rest=False):
        '''Retrieve the matrix of the joint between B-Bone segments if available 

        :param index: Index of the segment endpoint 
        :type index: int in [0, inf]
        :param rest: Return the rest pose matrix 
        :type rest: boolean, (optional)
        :rtype: float multi-dimensional array of 4 * 4 items in [-inf, inf] 
        :return:  The resulting matrix in bone local space 
        '''
        pass

    def compute_bbone_handles(self, rest=False, ease=False, offsets=False):
        '''Retrieve the vectors and rolls coming from B-Bone custom handles 

        :param rest: Return the rest pose state 
        :type rest: boolean, (optional)
        :param ease: Apply scale from ease values 
        :type ease: boolean, (optional)
        :param offsets: Apply roll and curve offsets from bone properties 
        :type offsets: boolean, (optional)
        '''
        pass

    def parent_index(self, parent_test):
        '''The same as ‘bone in other_bone.parent_recursive’ but saved generating a list. 

        '''
        pass

    def translate(self, vec):
        '''Utility function to add vec to the head and tail of this bone 

        '''
        pass


class PoseBoneConstraints:
    '''Collection of pose bone constraints '''

    active = None
    '''Active PoseChannel constraint 

    :type:  Constraint 
    '''

    def new(self, type):
        '''Add a constraint to this object 

        :param type: Constraint type to addCAMERA_SOLVER Camera Solver.FOLLOW_TRACK Follow Track.OBJECT_SOLVER Object Solver.COPY_LOCATION Copy Location, Copy the location of a target (with an optional offset), so that they move together.COPY_ROTATION Copy Rotation, Copy the rotation of a target (with an optional offset), so that they rotate together.COPY_SCALE Copy Scale, Copy the scale factors of a target (with an optional offset), so that they are scaled by the same amount.COPY_TRANSFORMS Copy Transforms, Copy all the transformations of a target, so that they move together.LIMIT_DISTANCE Limit Distance, Restrict movements to within a certain distance of a target (at the time of constraint evaluation only).LIMIT_LOCATION Limit Location, Restrict movement along each axis within given ranges.LIMIT_ROTATION Limit Rotation, Restrict rotation along each axis within given ranges.LIMIT_SCALE Limit Scale, Restrict scaling along each axis with given ranges.MAINTAIN_VOLUME Maintain Volume, Compensate for scaling one axis by applying suitable scaling to the other two axes.TRANSFORM Transformation, Use one transform property from target to control another (or same) property on owner.TRANSFORM_CACHE Transform Cache, Look up the transformation matrix from an external file.CLAMP_TO Clamp To, Restrict movements to lie along a curve by remapping location along curve’s longest axis.DAMPED_TRACK Damped Track, Point towards a target by performing the smallest rotation necessary.IK Inverse Kinematics, Control a chain of bones by specifying the endpoint target (Bones only).LOCKED_TRACK Locked Track, Rotate around the specified (‘locked’) axis to point towards a target.SPLINE_IK Spline IK, Align chain of bones along a curve (Bones only).STRETCH_TO Stretch To, Stretch along Y-Axis to point towards a target.TRACK_TO Track To, Legacy tracking constraint prone to twisting artifacts.ACTION Action, Use transform property of target to look up pose for owner from an Action.ARMATURE Armature, Apply weight-blended transformation from multiple bones like the Armature modifier.CHILD_OF Child Of, Make target the ‘detachable’ parent of owner.FLOOR Floor, Use position (and optionally rotation) of target to define a ‘wall’ or ‘floor’ that the owner can not cross.FOLLOW_PATH Follow Path, Use to animate an object/bone following a path.PIVOT Pivot, Change pivot point for transforms (buggy).SHRINKWRAP Shrinkwrap, Restrict movements to surface of target mesh. 
        :type type: enum in ['CAMERA_SOLVER', 'FOLLOW_TRACK', 'OBJECT_SOLVER', 'COPY_LOCATION', 'COPY_ROTATION', 'COPY_SCALE', 'COPY_TRANSFORMS', 'LIMIT_DISTANCE', 'LIMIT_LOCATION', 'LIMIT_ROTATION', 'LIMIT_SCALE', 'MAINTAIN_VOLUME', 'TRANSFORM', 'TRANSFORM_CACHE', 'CLAMP_TO', 'DAMPED_TRACK', 'IK', 'LOCKED_TRACK', 'SPLINE_IK', 'STRETCH_TO', 'TRACK_TO', 'ACTION', 'ARMATURE', 'CHILD_OF', 'FLOOR', 'FOLLOW_PATH', 'PIVOT', 'SHRINKWRAP']
        :rtype: Constraint 
        :return:  New constraint 
        '''
        pass

    def remove(self, constraint):
        '''Remove a constraint from this object 

        :param constraint: Removed constraint 
        :type constraint: Constraint, (never None)
        '''
        pass


class Preferences:
    '''Global preferences '''

    active_section = None
    '''Active section of the preferences shown in the user interface 

    :type:  enum in [‘INTERFACE’, ‘THEMES’, ‘VIEWPORT’, ‘LIGHTS’, ‘EDITING’, ‘ANIMATION’, ‘ADDONS’, ‘INPUT’, ‘NAVIGATION’, ‘KEYMAP’, ‘SYSTEM’, ‘SAVE_LOAD’, ‘FILE_PATHS’], default ‘INTERFACE’ 
    '''

    addons = None
    '''

    :type:  Addons bpy_prop_collection of Addon, (readonly) 
    '''

    app_template = None
    '''

    :type:  string, default “”, (never None) 
    '''

    autoexec_paths = None
    '''

    :type:  PathCompareCollection bpy_prop_collection of PathCompare, (readonly) 
    '''

    edit = None
    '''Settings for interacting with Blender data 

    :type:  PreferencesEdit, (readonly, never None) 
    '''

    filepaths = None
    '''Default paths for external files 

    :type:  PreferencesFilePaths, (readonly, never None) 
    '''

    inputs = None
    '''Settings for input devices 

    :type:  PreferencesInput, (readonly, never None) 
    '''

    keymap = None
    '''Shortcut setup for keyboards and other input devices 

    :type:  PreferencesKeymap, (readonly, never None) 
    '''

    studio_lights = None
    '''

    :type:  StudioLights bpy_prop_collection of StudioLight, (readonly) 
    '''

    system = None
    '''Graphics driver and operating system settings 

    :type:  PreferencesSystem, (readonly, never None) 
    '''

    themes = None
    '''

    :type:  bpy_prop_collection of Theme, (readonly) 
    '''

    ui_styles = None
    '''

    :type:  bpy_prop_collection of ThemeStyle, (readonly) 
    '''

    version = None
    '''Version of Blender the userpref.blend was saved with 

    :type:  int array of 3 items in [0, inf], default (0, 0, 0), (readonly) 
    '''

    view = None
    '''Preferences related to viewing data 

    :type:  PreferencesView, (readonly, never None) 
    '''


class PreferencesEdit:
    '''Settings for interacting with Blender data '''

    auto_keying_mode = None
    '''Mode of automatic keyframe insertion for Objects and Bones (default setting used for new Scenes) 

    :type:  enum in [‘ADD_REPLACE_KEYS’, ‘REPLACE_KEYS’], default ‘ADD_REPLACE_KEYS’ 
    '''

    fcurve_unselected_alpha = None
    '''Amount that unselected F-Curves stand out from the background (Graph Editor) 

    :type:  float in [0.001, 1], default 0.0 
    '''

    grease_pencil_default_color = None
    '''Color of new annotation layers 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    grease_pencil_eraser_radius = None
    '''Radius of eraser ‘brush’ 

    :type:  int in [1, 500], default 0 
    '''

    grease_pencil_euclidean_distance = None
    '''Distance moved by mouse when drawing stroke to include 

    :type:  int in [0, 100], default 0 
    '''

    grease_pencil_manhattan_distance = None
    '''Pixels moved by mouse per axis when drawing stroke 

    :type:  int in [0, 100], default 0 
    '''

    keyframe_new_handle_type = None
    '''Handle type for handles of new keyframes 

    :type:  enum in [‘FREE’, ‘ALIGNED’, ‘VECTOR’, ‘AUTO’, ‘AUTO_CLAMPED’], default ‘FREE’ 
    '''

    keyframe_new_interpolation_type = None
    '''Interpolation mode used for first keyframe on newly added F-Curves (subsequent keyframes take interpolation from preceding keyframe) 

    :type:  enum in [‘CONSTANT’, ‘LINEAR’, ‘BEZIER’, ‘SINE’, ‘QUAD’, ‘CUBIC’, ‘QUART’, ‘QUINT’, ‘EXPO’, ‘CIRC’, ‘BACK’, ‘BOUNCE’, ‘ELASTIC’], default ‘CONSTANT’ 
    '''

    material_link = None
    '''Toggle whether the material is linked to object data or the object block 

    :type:  enum in [‘OBDATA’, ‘OBJECT’], default ‘OBDATA’ 
    '''

    node_margin = None
    '''Minimum distance between nodes for Auto-offsetting nodes 

    :type:  int in [0, 255], default 0 
    '''

    object_align = None
    '''When adding objects from a 3D View menu, either align them with that view or with the world 

    :type:  enum in [‘WORLD’, ‘VIEW’], default ‘WORLD’ 
    '''

    sculpt_paint_overlay_color = None
    '''Color of texture overlay 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    undo_memory_limit = None
    '''Maximum memory usage in megabytes (0 means unlimited) 

    :type:  int in [0, inf], default 0 
    '''

    undo_steps = None
    '''Number of undo steps available (smaller values conserve memory) 

    :type:  int in [0, 256], default 0 
    '''

    use_auto_keying = None
    '''Automatic keyframe insertion for Objects and Bones (default setting used for new Scenes) 

    :type:  boolean, default False 
    '''

    use_auto_keying_warning = None
    '''Show warning indicators when transforming objects and bones if auto keying is enabled 

    :type:  boolean, default False 
    '''

    use_cursor_lock_adjust = None
    '''Place the cursor without ‘jumping’ to the new location (when lock-to-cursor is used) 

    :type:  boolean, default False 
    '''

    use_duplicate_action = None
    '''Causes actions to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_armature = None
    '''Causes armature data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_curve = None
    '''Causes curve data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_fcurve = None
    '''Causes F-curve data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_light = None
    '''Causes light data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_material = None
    '''Causes material data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_mesh = None
    '''Causes mesh data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_metaball = None
    '''Causes metaball data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_particle = None
    '''Causes particle systems to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_surface = None
    '''Causes surface data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_text = None
    '''Causes text data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_duplicate_texture = None
    '''Causes texture data to be duplicated with the object 

    :type:  boolean, default False 
    '''

    use_enter_edit_mode = None
    '''Enter Edit Mode automatically after adding a new object 

    :type:  boolean, default False 
    '''

    use_global_undo = None
    '''Global undo works by keeping a full copy of the file itself in memory, so takes extra memory 

    :type:  boolean, default False 
    '''

    use_grease_pencil_simplify_stroke = None
    '''Simplify the final stroke 

    :type:  boolean, default False 
    '''

    use_insertkey_xyz_to_rgb = None
    '''Color for newly added transformation F-Curves (Location, Rotation, Scale) and also Color is based on the transform axis 

    :type:  boolean, default False 
    '''

    use_keyframe_insert_available = None
    '''Automatic keyframe insertion in available F-Curves 

    :type:  boolean, default False 
    '''

    use_keyframe_insert_needed = None
    '''Keyframe insertion only when keyframe needed 

    :type:  boolean, default False 
    '''

    use_mouse_depth_cursor = None
    '''Use the surface depth for cursor placement 

    :type:  boolean, default False 
    '''

    use_negative_frames = None
    '''Current frame number can be manually set to a negative value 

    :type:  boolean, default False 
    '''

    use_visual_keying = None
    '''Use Visual keying automatically for constrained objects 

    :type:  boolean, default False 
    '''


class PreferencesFilePaths:
    '''Default paths for external files '''

    animation_player = None
    '''Path to a custom animation/frame sequence player 

    :type:  string, default “”, (never None) 
    '''

    animation_player_preset = None
    '''Preset configs for external animation players 

    :type:  enum in [‘INTERNAL’, ‘DJV’, ‘FRAMECYCLER’, ‘RV’, ‘MPLAYER’, ‘CUSTOM’], default ‘INTERNAL’ 
    '''

    auto_save_time = None
    '''The time (in minutes) to wait between automatic temporary saves 

    :type:  int in [1, 60], default 0 
    '''

    font_directory = None
    '''The default directory to search for loading fonts 

    :type:  string, default “”, (never None) 
    '''

    hide_recent_locations = None
    '''Hide recent locations in the file selector 

    :type:  boolean, default False 
    '''

    hide_system_bookmarks = None
    '''Hide system bookmarks in the file selector 

    :type:  boolean, default False 
    '''

    i18n_branches_directory = None
    '''The path to the ‘/branches’ directory of your local svn-translation copy, to allow translating from the UI 

    :type:  string, default “”, (never None) 
    '''

    image_editor = None
    '''Path to an image editor 

    :type:  string, default “”, (never None) 
    '''

    recent_files = None
    '''Maximum number of recently opened files to remember 

    :type:  int in [0, 30], default 0 
    '''

    render_cache_directory = None
    '''Where to cache raw render results 

    :type:  string, default “”, (never None) 
    '''

    render_output_directory = None
    '''The default directory for rendering output, for new scenes 

    :type:  string, default “”, (never None) 
    '''

    save_version = None
    '''The number of old versions to maintain in the current directory, when manually saving 

    :type:  int in [0, 32], default 0 
    '''

    script_directory = None
    '''Alternate script path, matching the default layout with subdirs: startup, add-ons & modules (requires restart) 

    :type:  string, default “”, (never None) 
    '''

    show_hidden_files_datablocks = None
    '''Hide files and data-blocks if their name start with a dot (.*) 

    :type:  boolean, default False 
    '''

    show_thumbnails = None
    '''Open in thumbnail view for images and movies 

    :type:  boolean, default False 
    '''

    sound_directory = None
    '''The default directory to search for sounds 

    :type:  string, default “”, (never None) 
    '''

    temporary_directory = None
    '''The directory for storing temporary save files 

    :type:  string, default “”, (never None) 
    '''

    texture_directory = None
    '''The default directory to search for textures 

    :type:  string, default “”, (never None) 
    '''

    use_auto_save_temporary_files = None
    '''Automatic saving of temporary files in temp directory, uses process ID (Sculpt or edit mode data won’t be saved!’) 

    :type:  boolean, default False 
    '''

    use_file_compression = None
    '''Enable file compression when saving .blend files 

    :type:  boolean, default False 
    '''

    use_filter_files = None
    '''Display only files with extensions in the image select window 

    :type:  boolean, default False 
    '''

    use_load_ui = None
    '''Load user interface setup when loading .blend files 

    :type:  boolean, default False 
    '''

    use_relative_paths = None
    '''Default relative path option for the file selector 

    :type:  boolean, default False 
    '''

    use_save_preview_images = None
    '''Enables automatic saving of preview images in the .blend file 

    :type:  boolean, default False 
    '''

    use_scripts_auto_execute = None
    '''Allow any .blend file to run scripts automatically (unsafe with blend files from an untrusted source) 

    :type:  boolean, default False 
    '''

    use_tabs_as_spaces = None
    '''Automatically convert all new tabs into spaces for new and loaded text files 

    :type:  boolean, default False 
    '''


class PreferencesInput:
    '''Settings for input devices '''

    drag_threshold = None
    '''Number of pixels you have to drag before a tweak/drag event is triggered (otherwise click events are detected) 

    :type:  int in [3, 1024], default 0 
    '''

    invert_mouse_zoom = None
    '''Invert the axis of mouse movement for zooming 

    :type:  boolean, default False 
    '''

    invert_zoom_wheel = None
    '''Swap the Mouse Wheel zoom direction 

    :type:  boolean, default False 
    '''

    mouse_double_click_time = None
    '''Time/delay (in ms) for a double click 

    :type:  int in [1, 1000], default 0 
    '''

    move_threshold = None
    '''Number of pixels you have to before the cursor is considered to have moved (used for cycling selected items on successive clicks) 

    :type:  int in [0, 255], default 0 
    '''

    navigation_mode = None
    '''Which method to use for viewport navigation 

    :type:  enum in [‘WALK’, ‘FLY’], default ‘WALK’ 
    '''

    ndof_deadzone = None
    '''Threshold of initial movement needed from the device’s rest position 

    :type:  float in [0, 1], default 0.0 
    '''

    ndof_fly_helicopter = None
    '''Device up/down directly controls your Z position 

    :type:  boolean, default False 
    '''

    ndof_lock_horizon = None
    '''Keep horizon level while flying with 3D Mouse 

    :type:  boolean, default False 
    '''

    ndof_orbit_sensitivity = None
    '''Overall sensitivity of the 3D Mouse for orbiting 

    :type:  float in [0.01, 40], default 0.0 
    '''

    ndof_pan_yz_swap_axis = None
    '''Pan using up/down on the device (otherwise forward/backward) 

    :type:  boolean, default False 
    '''

    ndof_panx_invert_axis = None
    '''

    :type:  boolean, default False 
    '''

    ndof_pany_invert_axis = None
    '''

    :type:  boolean, default False 
    '''

    ndof_panz_invert_axis = None
    '''

    :type:  boolean, default False 
    '''

    ndof_rotx_invert_axis = None
    '''

    :type:  boolean, default False 
    '''

    ndof_roty_invert_axis = None
    '''

    :type:  boolean, default False 
    '''

    ndof_rotz_invert_axis = None
    '''

    :type:  boolean, default False 
    '''

    ndof_sensitivity = None
    '''Overall sensitivity of the 3D Mouse for panning 

    :type:  float in [0.01, 40], default 0.0 
    '''

    ndof_show_guide = None
    '''Display the center and axis during rotation 

    :type:  boolean, default False 
    '''

    ndof_view_navigate_method = None
    '''Navigation style in the viewport 

    :type:  enum in [‘FREE’, ‘ORBIT’], default ‘FREE’ 
    '''

    ndof_view_rotate_method = None
    '''Rotation style in the viewport 

    :type:  enum in [‘TURNTABLE’, ‘TRACKBALL’], default ‘TRACKBALL’ 
    '''

    ndof_zoom_invert = None
    '''Zoom using opposite direction 

    :type:  boolean, default False 
    '''

    pressure_softness = None
    '''Adjusts softness of the low pressure response onset using a gamma curve 

    :type:  float in [-inf, inf], default 0.0 
    '''

    pressure_threshold_max = None
    '''Raw input pressure value that is interpreted as 100% by Blender 

    :type:  float in [0, 1], default 1.0 
    '''

    tablet_api = None
    '''Select the tablet API to use for pressure sensitivity 

    :type:  enum in [‘AUTOMATIC’, ‘WINDOWS_INK’, ‘WINTAB’], default ‘AUTOMATIC’ 
    '''

    use_auto_perspective = None
    '''Automatically switch between orthographic and perspective when changing from top/front/side views 

    :type:  boolean, default False 
    '''

    use_camera_lock_parent = None
    '''When the camera is locked to the view and in fly mode, transform the parent rather than the camera 

    :type:  boolean, default False 
    '''

    use_drag_immediately = None
    '''Moving things with a mouse drag confirms when releasing the button 

    :type:  boolean, default False 
    '''

    use_emulate_numpad = None
    '''Main 1 to 0 keys act as the numpad ones (useful for laptops) 

    :type:  boolean, default False 
    '''

    use_mouse_continuous = None
    '''Allow moving the mouse outside the view on some manipulations (transform, ui control drag) 

    :type:  boolean, default False 
    '''

    use_mouse_depth_navigate = None
    '''Use the depth under the mouse to improve view pan/rotate/zoom functionality 

    :type:  boolean, default False 
    '''

    use_mouse_emulate_3_button = None
    '''Emulate Middle Mouse with Alt+Left Mouse 

    :type:  boolean, default False 
    '''

    use_ndof = None
    '''

    :type:  boolean, default True, (readonly) 
    '''

    use_numeric_input_advanced = None
    '''When entering numbers while transforming, default to advanced mode for full math expression evaluation 

    :type:  boolean, default False 
    '''

    use_rotate_around_active = None
    '''Use selection as the pivot point 

    :type:  boolean, default False 
    '''

    use_trackpad_natural = None
    '''If your system uses ‘natural’ scrolling, this option keeps consistent trackpad usage throughout the UI 

    :type:  boolean, default False 
    '''

    use_zoom_to_mouse = None
    '''Zoom in towards the mouse pointer’s position in the 3D view, rather than the 2D window center 

    :type:  boolean, default False 
    '''

    view_rotate_method = None
    '''Orbit method in the viewport 

    :type:  enum in [‘TURNTABLE’, ‘TRACKBALL’], default ‘TURNTABLE’ 
    '''

    view_zoom_axis = None
    '''Axis of mouse movement to zoom in or out on 

    :type:  enum in [‘VERTICAL’, ‘HORIZONTAL’], default ‘VERTICAL’ 
    '''

    view_zoom_method = None
    '''Which style to use for viewport scaling 

    :type:  enum in [‘CONTINUE’, ‘DOLLY’, ‘SCALE’], default ‘CONTINUE’ 
    '''

    walk_navigation = None
    '''Settings for walk navigation mode 

    :type:  WalkNavigation, (readonly, never None) 
    '''

    wheel_scroll_lines = None
    '''Number of lines scrolled at a time with the mouse wheel 

    :type:  int in [0, 32], default 0 
    '''


class PreferencesKeymap:
    '''Shortcut setup for keyboards and other input devices '''

    active_keyconfig = None
    '''The name of the active key configuration 

    :type:  string, default “”, (never None) 
    '''

    show_ui_keyconfig = None
    '''

    :type:  boolean, default False 
    '''


class PreferencesSystem:
    '''Graphics driver and operating system settings '''

    anisotropic_filter = None
    '''Quality of the anisotropic filtering (values greater than 1.0 enable anisotropic filtering) 

    :type:  enum in [‘FILTER_0’, ‘FILTER_2’, ‘FILTER_4’, ‘FILTER_8’, ‘FILTER_16’], default ‘FILTER_0’ 
    '''

    audio_channels = None
    '''Audio channel count 

    :type:  enum in [‘MONO’, ‘STEREO’, ‘SURROUND4’, ‘SURROUND51’, ‘SURROUND71’], default ‘MONO’ 
    '''

    audio_device = None
    '''Audio output device 

    :type:  enum in [‘Null’], default ‘Null’ 
    '''

    audio_mixing_buffer = None
    '''Number of samples used by the audio mixing buffer 

    :type:  enum in [‘SAMPLES_256’, ‘SAMPLES_512’, ‘SAMPLES_1024’, ‘SAMPLES_2048’, ‘SAMPLES_4096’, ‘SAMPLES_8192’, ‘SAMPLES_16384’, ‘SAMPLES_32768’], default ‘SAMPLES_256’ 
    '''

    audio_sample_format = None
    '''Audio sample format 

    :type:  enum in [‘U8’, ‘S16’, ‘S24’, ‘S32’, ‘FLOAT’, ‘DOUBLE’], default ‘U8’ 
    '''

    audio_sample_rate = None
    '''Audio sample rate 

    :type:  enum in [‘RATE_44100’, ‘RATE_48000’, ‘RATE_96000’, ‘RATE_192000’], default ‘RATE_44100’ 
    '''

    dpi = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    gl_clip_alpha = None
    '''Clip alpha below this threshold in the 3D textured view 

    :type:  float in [0, 1], default 0.0 
    '''

    gl_texture_limit = None
    '''Limit the texture size to save graphics memory 

    :type:  enum in [‘CLAMP_OFF’, ‘CLAMP_8192’, ‘CLAMP_4096’, ‘CLAMP_2048’, ‘CLAMP_1024’, ‘CLAMP_512’, ‘CLAMP_256’, ‘CLAMP_128’], default ‘CLAMP_OFF’ 
    '''

    gpencil_multi_sample = None
    '''Enable Grease Pencil OpenGL multi-sampling, only for systems that support it 

    :type:  enum in [‘NONE’, ‘2’, ‘4’, ‘8’, ‘16’], default ‘NONE’ 
    '''

    gpu_viewport_quality = None
    '''Quality setting for Solid mode rendering in the 3d viewport 

    :type:  float in [0, 1], default 0.6 
    '''

    image_draw_method = None
    '''Method used for displaying images on the screen 

    :type:  enum in [‘2DTEXTURE’, ‘GLSL’, ‘DRAWPIXELS’], default ‘2DTEXTURE’ 
    '''

    legacy_compute_device_type = None
    '''For backwards compatibility only 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    light_ambient = None
    '''Color of the ambient light that uniformly lit the scene 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    memory_cache_limit = None
    '''Memory cache limit (in megabytes) 

    :type:  int in [0, inf], default 0 
    '''

    multi_sample = None
    '''Enable OpenGL multi-sampling, only for systems that support it 

    :type:  enum in [‘NONE’, ‘2’, ‘4’, ‘8’, ‘16’], default ‘NONE’ 
    '''

    opensubdiv_compute_type = None
    '''Type of computer back-end used with OpenSubdiv 

    :type:  enum in [‘NONE’, ‘CPU’, ‘OPENMP’], default ‘NONE’ 
    '''

    pixel_size = None
    '''

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    prefetch_frames = None
    '''Number of frames to render ahead during playback (sequencer only) 

    :type:  int in [0, inf], default 0 
    '''

    scrollback = None
    '''Maximum number of lines to store for the console buffer 

    :type:  int in [32, 32768], default 0 
    '''

    solid_lights = None
    '''Lights user to display objects in solid draw mode 

    :type:  bpy_prop_collection of UserSolidLight, (readonly) 
    '''

    texture_collection_rate = None
    '''Number of seconds between each run of the GL texture garbage collector 

    :type:  int in [1, 3600], default 0 
    '''

    texture_time_out = None
    '''Time since last access of a GL texture in seconds after which it is freed (set to 0 to keep textures allocated) 

    :type:  int in [0, 3600], default 0 
    '''

    ui_line_width = None
    '''Suggested line thickness and point size in pixels, for add-ons drawing custom user interface elements, based on operating system settings and Blender UI scale 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    ui_scale = None
    '''Size multiplier to use when drawing custom user interface elements, so that they are scaled correctly on screens with different DPI. This value is based on operating system DPI settings and Blender display scale 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    use_edit_mode_smooth_wire = None
    '''Enable Edit-Mode edge smoothing, reducing aliasing, requires restart 

    :type:  boolean, default False 
    '''

    use_region_overlap = None
    '''Draw tool/property regions over the main region 

    :type:  boolean, default False 
    '''

    use_select_pick_depth = None
    '''Use the depth buffer for picking 3D View selection (without this the front most object may not be selected first) 

    :type:  boolean, default False 
    '''

    use_studio_light_edit = None
    '''View the result of the studio light editor in the viewport 

    :type:  boolean, default False 
    '''


class PreferencesView:
    '''Preferences related to viewing data '''

    color_picker_type = None
    '''Different styles of displaying the color picker widget 

    :type:  enum in [‘CIRCLE_HSV’, ‘CIRCLE_HSL’, ‘SQUARE_SV’, ‘SQUARE_HS’, ‘SQUARE_HV’], default ‘CIRCLE_HSV’ 
    '''

    factor_display_type = None
    '''How factor values are displayed 

    :type:  enum in [‘FACTOR’, ‘PERCENTAGE’], default ‘FACTOR’ 
    '''

    font_path_ui = None
    '''Path to interface font 

    :type:  string, default “”, (never None) 
    '''

    font_path_ui_mono = None
    '''Path to interface mono-space Font 

    :type:  string, default “”, (never None) 
    '''

    gizmo_size = None
    '''Diameter of the gizmo 

    :type:  int in [10, 200], default 75 
    '''

    header_align = None
    '''Default header position for new space-types 

    :type:  enum in [‘NONE’, ‘TOP’, ‘BOTTOM’], default ‘NONE’ 
    '''

    language = None
    '''Language used for translation 

    :type:  enum in [‘DEFAULT’], default ‘DEFAULT’ 
    '''

    mini_axis_brightness = None
    '''Brightness of the icon 

    :type:  int in [0, 10], default 0 
    '''

    mini_axis_size = None
    '''The axes icon’s size 

    :type:  int in [10, 64], default 0 
    '''

    mini_axis_type = None
    '''Show a small rotating 3D axes in the top right corner of the 3D View 

    :type:  enum in [‘MINIMAL’, ‘GIZMO’], default ‘MINIMAL’ 
    '''

    object_origin_size = None
    '''Diameter in Pixels for Object/Light origin display 

    :type:  int in [4, 10], default 0 
    '''

    open_sublevel_delay = None
    '''Time delay in 1/10 seconds before automatically opening sub level menus 

    :type:  int in [1, 40], default 0 
    '''

    open_toplevel_delay = None
    '''Time delay in 1/10 seconds before automatically opening top level menus 

    :type:  int in [1, 40], default 0 
    '''

    pie_animation_timeout = None
    '''Time needed to fully animate the pie to unfolded state (in 1/100ths of sec) 

    :type:  int in [0, 1000], default 0 
    '''

    pie_initial_timeout = None
    '''Pie menus will use the initial mouse position as center for this amount of time (in 1/100ths of sec) 

    :type:  int in [0, 1000], default 0 
    '''

    pie_menu_confirm = None
    '''Distance threshold after which selection is made (zero to disable) 

    :type:  int in [0, 1000], default 0 
    '''

    pie_menu_radius = None
    '''Pie menu size in pixels 

    :type:  int in [0, 1000], default 0 
    '''

    pie_menu_threshold = None
    '''Distance from center needed before a selection can be made 

    :type:  int in [0, 1000], default 0 
    '''

    pie_tap_timeout = None
    '''Pie menu button held longer than this will dismiss menu on release.(in 1/100ths of sec) 

    :type:  int in [0, 1000], default 0 
    '''

    rotation_angle = None
    '''Rotation step for numerical pad keys (2 4 6 8) 

    :type:  float in [0, 90], default 0.0 
    '''

    show_column_layout = None
    '''Use a column layout for toolbox 

    :type:  boolean, default False 
    '''

    show_developer_ui = None
    '''Show options for developers (edit source in context menu, geometry indices) 

    :type:  boolean, default False 
    '''

    show_gizmo = None
    '''Use transform gizmos by default 

    :type:  boolean, default False 
    '''

    show_large_cursors = None
    '''Use large mouse cursors when available 

    :type:  boolean, default False 
    '''

    show_layout_ui = None
    '''Split and join editors by dragging from corners 

    :type:  boolean, default False 
    '''

    show_object_info = None
    '''Display objects name and frame number in 3D view 

    :type:  boolean, default False 
    '''

    show_playback_fps = None
    '''Show the frames per second screen refresh rate, while animation is played back 

    :type:  boolean, default False 
    '''

    show_splash = None
    '''Display splash screen on startup 

    :type:  boolean, default False 
    '''

    show_tooltips = None
    '''Display tooltips (when off hold Alt to force display) 

    :type:  boolean, default False 
    '''

    show_tooltips_python = None
    '''Show Python references in tooltips 

    :type:  boolean, default False 
    '''

    show_view_name = None
    '''Show the name of the view’s direction in each 3D View 

    :type:  boolean, default False 
    '''

    smooth_view = None
    '''Time to animate the view in milliseconds, zero to disable 

    :type:  int in [0, 1000], default 0 
    '''

    text_hinting = None
    '''Method for making user interface text render sharp 

    :type:  enum in [‘AUTO’, ‘NONE’, ‘SLIGHT’, ‘FULL’], default ‘AUTO’ 
    '''

    timecode_style = None
    '''Format of Time Codes displayed when not displaying timing in terms of frames 

    :type:  enum in [‘MINIMAL’, ‘SMPTE’, ‘SMPTE_COMPACT’, ‘MILLISECONDS’, ‘SECONDS_ONLY’], default ‘MINIMAL’ 
    '''

    ui_line_width = None
    '''Changes the thickness of widget outlines, lines and points in the interface, for high DPI displays 

    :type:  enum in [‘THIN’, ‘AUTO’, ‘THICK’], default ‘AUTO’ 
    '''

    ui_scale = None
    '''Changes the size of the fonts and widgets in the interface 

    :type:  float in [0.25, 4], default 1.0 
    '''

    use_directional_menus = None
    '''Otherwise menus, etc will always be top to bottom, left to right, no matter opening direction 

    :type:  boolean, default False 
    '''

    use_international_fonts = None
    '''Enable UI translation and use international fonts 

    :type:  boolean, default False 
    '''

    use_mouse_over_open = None
    '''Open menu buttons and pulldowns automatically when the mouse is hovering 

    :type:  boolean, default False 
    '''

    use_save_prompt = None
    '''Ask for confirmation when quitting with unsaved changes 

    :type:  boolean, default False 
    '''

    use_text_antialiasing = None
    '''Draw user interface text anti-aliased 

    :type:  boolean, default False 
    '''

    use_translate_interface = None
    '''Translate all labels in menus, buttons and panels (note that this might make it hard to follow tutorials or the manual) 

    :type:  boolean, default False 
    '''

    use_translate_new_dataname = None
    '''Translate the names of new data-blocks (objects, materials…) 

    :type:  boolean, default False 
    '''

    use_translate_tooltips = None
    '''Translate the descriptions when hovering UI elements (recommended) 

    :type:  boolean, default False 
    '''

    use_weight_color_range = None
    '''Enable color range used for weight visualization in weight painting mode 

    :type:  boolean, default False 
    '''

    view2d_grid_spacing_min = None
    '''Minimum number of pixels between each gridline in 2D Viewports 

    :type:  int in [1, 500], default 0 
    '''

    view_frame_keyframes = None
    '''Keyframes around cursor that we zoom around 

    :type:  int in [1, 500], default 0 
    '''

    view_frame_seconds = None
    '''Seconds around cursor that we zoom around 

    :type:  float in [0, 10000], default 0.0 
    '''

    view_frame_type = None
    '''How zooming to frame focuses around current frame 

    :type:  enum in [‘KEEP_RANGE’, ‘SECONDS’, ‘KEYFRAMES’], default ‘KEEP_RANGE’ 
    '''

    weight_color_range = None
    '''Color range used for weight visualization in weight painting mode 

    :type:  ColorRamp, (readonly, never None) 
    '''


class Property:
    '''RNA property definition '''

    description = None
    '''Description of the property for tooltips 

    :type:  string, default “”, (readonly, never None) 
    '''

    icon = None
    '''Icon of the item 

    :type:  enum in [‘NONE’, ‘QUESTION’, ‘ERROR’, ‘CANCEL’, ‘TRIA_RIGHT’, ‘TRIA_DOWN’, ‘TRIA_LEFT’, ‘TRIA_UP’, ‘ARROW_LEFTRIGHT’, ‘PLUS’, ‘DISCLOSURE_TRI_RIGHT’, ‘DISCLOSURE_TRI_DOWN’, ‘RADIOBUT_OFF’, ‘RADIOBUT_ON’, ‘MENU_PANEL’, ‘BLENDER’, ‘GRIP’, ‘DOT’, ‘COLLAPSEMENU’, ‘X’, ‘DUPLICATE’, ‘TRASH’, ‘NODE’, ‘NODE_SEL’, ‘WINDOW’, ‘WORKSPACE’, ‘RIGHTARROW_THIN’, ‘BORDERMOVE’, ‘VIEWZOOM’, ‘ADD’, ‘REMOVE’, ‘PANEL_CLOSE’, ‘COPY_ID’, ‘EYEDROPPER’, ‘AUTO’, ‘CHECKBOX_DEHLT’, ‘CHECKBOX_HLT’, ‘UNLOCKED’, ‘LOCKED’, ‘UNPINNED’, ‘PINNED’, ‘SCREEN_BACK’, ‘RIGHTARROW’, ‘DOWNARROW_HLT’, ‘PLUGIN’, ‘HELP’, ‘GHOST_ENABLED’, ‘COLOR’, ‘UNLINKED’, ‘LINKED’, ‘HAND’, ‘ZOOM_ALL’, ‘ZOOM_SELECTED’, ‘ZOOM_PREVIOUS’, ‘ZOOM_IN’, ‘ZOOM_OUT’, ‘DRIVER_DISTANCE’, ‘DRIVER_ROTATIONAL_DIFFERENCE’, ‘DRIVER_TRANSFORM’, ‘FREEZE’, ‘STYLUS_PRESSURE’, ‘GHOST_DISABLED’, ‘FILE_NEW’, ‘FILE_TICK’, ‘QUIT’, ‘URL’, ‘RECOVER_LAST’, ‘THREE_DOTS’, ‘FULLSCREEN_ENTER’, ‘FULLSCREEN_EXIT’, ‘LIGHT’, ‘MATERIAL’, ‘TEXTURE’, ‘ANIM’, ‘WORLD’, ‘SCENE’, ‘OUTPUT’, ‘SCRIPT’, ‘PARTICLES’, ‘PHYSICS’, ‘SPEAKER’, ‘TOOL_SETTINGS’, ‘SHADERFX’, ‘MODIFIER’, ‘BLANK1’, ‘FAKE_USER_OFF’, ‘FAKE_USER_ON’, ‘VIEW3D’, ‘GRAPH’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILEBROWSER’, ‘IMAGE’, ‘INFO’, ‘SEQUENCE’, ‘TEXT’, ‘SOUND’, ‘ACTION’, ‘NLA’, ‘PREFERENCES’, ‘TIME’, ‘NODETREE’, ‘CONSOLE’, ‘TRACKER’, ‘ASSET_MANAGER’, ‘NODE_COMPOSITING’, ‘NODE_TEXTURE’, ‘NODE_MATERIAL’, ‘UV’, ‘OBJECT_DATAMODE’, ‘EDITMODE_HLT’, ‘UV_DATA’, ‘VPAINT_HLT’, ‘TPAINT_HLT’, ‘WPAINT_HLT’, ‘SCULPTMODE_HLT’, ‘POSE_HLT’, ‘PARTICLEMODE’, ‘TRACKING’, ‘TRACKING_BACKWARDS’, ‘TRACKING_FORWARDS’, ‘TRACKING_BACKWARDS_SINGLE’, ‘TRACKING_FORWARDS_SINGLE’, ‘TRACKING_CLEAR_BACKWARDS’, ‘TRACKING_CLEAR_FORWARDS’, ‘TRACKING_REFINE_BACKWARDS’, ‘TRACKING_REFINE_FORWARDS’, ‘SCENE_DATA’, ‘RENDERLAYERS’, ‘WORLD_DATA’, ‘OBJECT_DATA’, ‘MESH_DATA’, ‘CURVE_DATA’, ‘META_DATA’, ‘LATTICE_DATA’, ‘LIGHT_DATA’, ‘MATERIAL_DATA’, ‘TEXTURE_DATA’, ‘ANIM_DATA’, ‘CAMERA_DATA’, ‘PARTICLE_DATA’, ‘LIBRARY_DATA_DIRECT’, ‘GROUP’, ‘ARMATURE_DATA’, ‘COMMUNITY’, ‘BONE_DATA’, ‘CONSTRAINT’, ‘SHAPEKEY_DATA’, ‘CONSTRAINT_BONE’, ‘CAMERA_STEREO’, ‘PACKAGE’, ‘UGLYPACKAGE’, ‘EXPERIMENTAL’, ‘BRUSH_DATA’, ‘IMAGE_DATA’, ‘FILE’, ‘FCURVE’, ‘FONT_DATA’, ‘RENDER_RESULT’, ‘SURFACE_DATA’, ‘EMPTY_DATA’, ‘PRESET’, ‘RENDER_ANIMATION’, ‘RENDER_STILL’, ‘LIBRARY_DATA_BROKEN’, ‘BOIDS’, ‘STRANDS’, ‘LIBRARY_DATA_INDIRECT’, ‘GREASEPENCIL’, ‘LINE_DATA’, ‘LIBRARY_DATA_OVERRIDE’, ‘GROUP_BONE’, ‘GROUP_VERTEX’, ‘GROUP_VCOL’, ‘GROUP_UVS’, ‘FACE_MAPS’, ‘RNA’, ‘RNA_ADD’, ‘MOUSE_LMB’, ‘MOUSE_MMB’, ‘MOUSE_RMB’, ‘MOUSE_MOVE’, ‘MOUSE_LMB_DRAG’, ‘MOUSE_MMB_DRAG’, ‘MOUSE_RMB_DRAG’, ‘PRESET_NEW’, ‘DECORATE’, ‘DECORATE_KEYFRAME’, ‘DECORATE_ANIMATE’, ‘DECORATE_DRIVER’, ‘DECORATE_LINKED’, ‘DECORATE_LIBRARY_OVERRIDE’, ‘DECORATE_UNLOCKED’, ‘DECORATE_LOCKED’, ‘DECORATE_OVERRIDE’, ‘TRACKER_DATA’, ‘HEART’, ‘ORPHAN_DATA’, ‘USER’, ‘SYSTEM’, ‘SETTINGS’, ‘OUTLINER_OB_EMPTY’, ‘OUTLINER_OB_MESH’, ‘OUTLINER_OB_CURVE’, ‘OUTLINER_OB_LATTICE’, ‘OUTLINER_OB_META’, ‘OUTLINER_OB_LIGHT’, ‘OUTLINER_OB_CAMERA’, ‘OUTLINER_OB_ARMATURE’, ‘OUTLINER_OB_FONT’, ‘OUTLINER_OB_SURFACE’, ‘OUTLINER_OB_SPEAKER’, ‘OUTLINER_OB_FORCE_FIELD’, ‘OUTLINER_OB_GROUP_INSTANCE’, ‘OUTLINER_OB_GREASEPENCIL’, ‘OUTLINER_OB_LIGHTPROBE’, ‘OUTLINER_OB_IMAGE’, ‘RESTRICT_COLOR_OFF’, ‘RESTRICT_COLOR_ON’, ‘HIDE_ON’, ‘HIDE_OFF’, ‘RESTRICT_SELECT_ON’, ‘RESTRICT_SELECT_OFF’, ‘RESTRICT_RENDER_ON’, ‘RESTRICT_RENDER_OFF’, ‘OUTLINER_DATA_EMPTY’, ‘OUTLINER_DATA_MESH’, ‘OUTLINER_DATA_CURVE’, ‘OUTLINER_DATA_LATTICE’, ‘OUTLINER_DATA_META’, ‘OUTLINER_DATA_LIGHT’, ‘OUTLINER_DATA_CAMERA’, ‘OUTLINER_DATA_ARMATURE’, ‘OUTLINER_DATA_FONT’, ‘OUTLINER_DATA_SURFACE’, ‘OUTLINER_DATA_SPEAKER’, ‘OUTLINER_DATA_GREASEPENCIL’, ‘GP_SELECT_POINTS’, ‘GP_SELECT_STROKES’, ‘GP_MULTIFRAME_EDITING’, ‘GP_ONLY_SELECTED’, ‘GP_SELECT_BETWEEN_STROKES’, ‘MODIFIER_OFF’, ‘MODIFIER_ON’, ‘ONIONSKIN_OFF’, ‘ONIONSKIN_ON’, ‘RESTRICT_VIEW_ON’, ‘RESTRICT_VIEW_OFF’, ‘MESH_PLANE’, ‘MESH_CUBE’, ‘MESH_CIRCLE’, ‘MESH_UVSPHERE’, ‘MESH_ICOSPHERE’, ‘MESH_GRID’, ‘MESH_MONKEY’, ‘MESH_CYLINDER’, ‘MESH_TORUS’, ‘MESH_CONE’, ‘MESH_CAPSULE’, ‘EMPTY_SINGLE_ARROW’, ‘LIGHT_POINT’, ‘LIGHT_SUN’, ‘LIGHT_SPOT’, ‘LIGHT_HEMI’, ‘LIGHT_AREA’, ‘CUBE’, ‘SPHERE’, ‘CONE’, ‘META_PLANE’, ‘META_CUBE’, ‘META_BALL’, ‘META_ELLIPSOID’, ‘META_CAPSULE’, ‘SURFACE_NCURVE’, ‘SURFACE_NCIRCLE’, ‘SURFACE_NSURFACE’, ‘SURFACE_NCYLINDER’, ‘SURFACE_NSPHERE’, ‘SURFACE_NTORUS’, ‘EMPTY_AXIS’, ‘STROKE’, ‘EMPTY_ARROWS’, ‘CURVE_BEZCURVE’, ‘CURVE_BEZCIRCLE’, ‘CURVE_NCURVE’, ‘CURVE_NCIRCLE’, ‘CURVE_PATH’, ‘LIGHTPROBE_CUBEMAP’, ‘LIGHTPROBE_PLANAR’, ‘LIGHTPROBE_GRID’, ‘COLOR_RED’, ‘COLOR_GREEN’, ‘COLOR_BLUE’, ‘TRIA_RIGHT_BAR’, ‘TRIA_DOWN_BAR’, ‘TRIA_LEFT_BAR’, ‘TRIA_UP_BAR’, ‘FORCE_FORCE’, ‘FORCE_WIND’, ‘FORCE_VORTEX’, ‘FORCE_MAGNETIC’, ‘FORCE_HARMONIC’, ‘FORCE_CHARGE’, ‘FORCE_LENNARDJONES’, ‘FORCE_TEXTURE’, ‘FORCE_CURVE’, ‘FORCE_BOID’, ‘FORCE_TURBULENCE’, ‘FORCE_DRAG’, ‘FORCE_SMOKEFLOW’, ‘IMAGE_PLANE’, ‘IMAGE_BACKGROUND’, ‘IMAGE_REFERENCE’, ‘NODE_INSERT_ON’, ‘NODE_INSERT_OFF’, ‘NODE_TOP’, ‘NODE_SIDE’, ‘NODE_CORNER’, ‘ALIGN_LEFT’, ‘ALIGN_CENTER’, ‘ALIGN_RIGHT’, ‘ALIGN_JUSTIFY’, ‘ALIGN_FLUSH’, ‘ALIGN_TOP’, ‘ALIGN_MIDDLE’, ‘ALIGN_BOTTOM’, ‘BOLD’, ‘ITALIC’, ‘UNDERLINE’, ‘SMALL_CAPS’, ‘MODIFIER_DATA’, ‘MOD_WAVE’, ‘MOD_BUILD’, ‘MOD_DECIM’, ‘MOD_MIRROR’, ‘MOD_SOFT’, ‘MOD_SUBSURF’, ‘HOOK’, ‘MOD_PHYSICS’, ‘MOD_PARTICLES’, ‘MOD_BOOLEAN’, ‘MOD_EDGESPLIT’, ‘MOD_ARRAY’, ‘MOD_UVPROJECT’, ‘MOD_DISPLACE’, ‘MOD_CURVE’, ‘MOD_LATTICE’, ‘MOD_TINT’, ‘MOD_ARMATURE’, ‘MOD_SHRINKWRAP’, ‘MOD_CAST’, ‘MOD_MESHDEFORM’, ‘MOD_BEVEL’, ‘MOD_SMOOTH’, ‘MOD_SIMPLEDEFORM’, ‘MOD_MASK’, ‘MOD_CLOTH’, ‘MOD_EXPLODE’, ‘MOD_FLUIDSIM’, ‘MOD_MULTIRES’, ‘MOD_SMOKE’, ‘MOD_SOLIDIFY’, ‘MOD_SCREW’, ‘MOD_VERTEX_WEIGHT’, ‘MOD_DYNAMICPAINT’, ‘MOD_REMESH’, ‘MOD_OCEAN’, ‘MOD_WARP’, ‘MOD_SKIN’, ‘MOD_TRIANGULATE’, ‘MOD_WIREFRAME’, ‘MOD_DATA_TRANSFER’, ‘MOD_NORMALEDIT’, ‘MOD_PARTICLE_INSTANCE’, ‘MOD_HUE_SATURATION’, ‘MOD_NOISE’, ‘MOD_OFFSET’, ‘MOD_SIMPLIFY’, ‘MOD_THICKNESS’, ‘MOD_INSTANCE’, ‘MOD_TIME’, ‘MOD_OPACITY’, ‘REC’, ‘PLAY’, ‘FF’, ‘REW’, ‘PAUSE’, ‘PREV_KEYFRAME’, ‘NEXT_KEYFRAME’, ‘PLAY_SOUND’, ‘PLAY_REVERSE’, ‘PREVIEW_RANGE’, ‘ACTION_TWEAK’, ‘PMARKER_ACT’, ‘PMARKER_SEL’, ‘PMARKER’, ‘MARKER_HLT’, ‘MARKER’, ‘KEYFRAME_HLT’, ‘KEYFRAME’, ‘KEYINGSET’, ‘KEY_DEHLT’, ‘KEY_HLT’, ‘MUTE_IPO_OFF’, ‘MUTE_IPO_ON’, ‘VISIBLE_IPO_OFF’, ‘VISIBLE_IPO_ON’, ‘DRIVER’, ‘SOLO_OFF’, ‘SOLO_ON’, ‘FRAME_PREV’, ‘FRAME_NEXT’, ‘NLA_PUSHDOWN’, ‘IPO_CONSTANT’, ‘IPO_LINEAR’, ‘IPO_BEZIER’, ‘IPO_SINE’, ‘IPO_QUAD’, ‘IPO_CUBIC’, ‘IPO_QUART’, ‘IPO_QUINT’, ‘IPO_EXPO’, ‘IPO_CIRC’, ‘IPO_BOUNCE’, ‘IPO_ELASTIC’, ‘IPO_BACK’, ‘IPO_EASE_IN’, ‘IPO_EASE_OUT’, ‘IPO_EASE_IN_OUT’, ‘NORMALIZE_FCURVES’, ‘VERTEXSEL’, ‘EDGESEL’, ‘FACESEL’, ‘PIVOT_BOUNDBOX’, ‘PIVOT_CURSOR’, ‘PIVOT_INDIVIDUAL’, ‘PIVOT_MEDIAN’, ‘PIVOT_ACTIVE’, ‘CENTER_ONLY’, ‘ROOTCURVE’, ‘SMOOTHCURVE’, ‘SPHERECURVE’, ‘INVERSESQUARECURVE’, ‘SHARPCURVE’, ‘LINCURVE’, ‘NOCURVE’, ‘RNDCURVE’, ‘PROP_OFF’, ‘PROP_ON’, ‘PROP_CON’, ‘PROP_PROJECTED’, ‘PARTICLE_POINT’, ‘PARTICLE_TIP’, ‘PARTICLE_PATH’, ‘SNAP_OFF’, ‘SNAP_ON’, ‘SNAP_NORMAL’, ‘SNAP_GRID’, ‘SNAP_VERTEX’, ‘SNAP_EDGE’, ‘SNAP_FACE’, ‘SNAP_VOLUME’, ‘SNAP_INCREMENT’, ‘STICKY_UVS_LOC’, ‘STICKY_UVS_DISABLE’, ‘STICKY_UVS_VERT’, ‘CLIPUV_DEHLT’, ‘CLIPUV_HLT’, ‘SNAP_PEEL_OBJECT’, ‘GRID’, ‘OBJECT_ORIGIN’, ‘ORIENTATION_GLOBAL’, ‘ORIENTATION_GIMBAL’, ‘ORIENTATION_LOCAL’, ‘ORIENTATION_NORMAL’, ‘ORIENTATION_VIEW’, ‘COPYDOWN’, ‘PASTEDOWN’, ‘PASTEFLIPUP’, ‘PASTEFLIPDOWN’, ‘VIS_SEL_11’, ‘VIS_SEL_10’, ‘VIS_SEL_01’, ‘VIS_SEL_00’, ‘AUTOMERGE_ON’, ‘AUTOMERGE_OFF’, ‘UV_VERTEXSEL’, ‘UV_EDGESEL’, ‘UV_FACESEL’, ‘UV_ISLANDSEL’, ‘UV_SYNC_SELECT’, ‘ORIENTATION_CURSOR’, ‘NORMALS_VERTEX’, ‘NORMALS_FACE’, ‘NORMALS_VERTEX_FACE’, ‘SHADING_BBOX’, ‘SHADING_WIRE’, ‘SHADING_SOLID’, ‘SHADING_RENDERED’, ‘SHADING_TEXTURE’, ‘OVERLAY’, ‘XRAY’, ‘LOCKVIEW_OFF’, ‘LOCKVIEW_ON’, ‘AXIS_SIDE’, ‘AXIS_FRONT’, ‘AXIS_TOP’, ‘NDOF_DOM’, ‘NDOF_TURN’, ‘NDOF_FLY’, ‘NDOF_TRANS’, ‘LAYER_USED’, ‘LAYER_ACTIVE’, ‘SORTALPHA’, ‘SORTBYEXT’, ‘SORTTIME’, ‘SORTSIZE’, ‘SHORTDISPLAY’, ‘LONGDISPLAY’, ‘IMGDISPLAY’, ‘BOOKMARKS’, ‘FONTPREVIEW’, ‘FILTER’, ‘NEWFOLDER’, ‘FILE_PARENT’, ‘FILE_REFRESH’, ‘FILE_FOLDER’, ‘FILE_BLANK’, ‘FILE_BLEND’, ‘FILE_IMAGE’, ‘FILE_MOVIE’, ‘FILE_SCRIPT’, ‘FILE_SOUND’, ‘FILE_FONT’, ‘FILE_TEXT’, ‘SORT_DESC’, ‘SORT_ASC’, ‘LINK_BLEND’, ‘APPEND_BLEND’, ‘IMPORT’, ‘EXPORT’, ‘LOOP_BACK’, ‘LOOP_FORWARDS’, ‘BACK’, ‘FORWARD’, ‘FILE_VOLUME’, ‘ALEMBIC’, ‘VOLUME’, ‘FILE_HIDDEN’, ‘FILE_BACKUP’, ‘DISK_DRIVE’, ‘MATPLANE’, ‘MATSPHERE’, ‘MATCUBE’, ‘MONKEY’, ‘HAIR’, ‘ALIASED’, ‘ANTIALIASED’, ‘MAT_SPHERE_SKY’, ‘MATSHADERBALL’, ‘MATCLOTH’, ‘MATFLUID’, ‘WORDWRAP_OFF’, ‘WORDWRAP_ON’, ‘SYNTAX_OFF’, ‘SYNTAX_ON’, ‘LINENUMBERS_OFF’, ‘LINENUMBERS_ON’, ‘SCRIPTPLUGINS’, ‘SEQ_SEQUENCER’, ‘SEQ_PREVIEW’, ‘SEQ_LUMA_WAVEFORM’, ‘SEQ_CHROMA_SCOPE’, ‘SEQ_HISTOGRAM’, ‘SEQ_SPLITVIEW’, ‘IMAGE_RGB’, ‘IMAGE_RGB_ALPHA’, ‘IMAGE_ALPHA’, ‘IMAGE_ZDEPTH’, ‘VIEW_PERSPECTIVE’, ‘VIEW_ORTHO’, ‘VIEW_CAMERA’, ‘VIEW_PAN’, ‘VIEW_ZOOM’, ‘BRUSH_BLOB’, ‘BRUSH_BLUR’, ‘BRUSH_CLAY’, ‘BRUSH_CLAY_STRIPS’, ‘BRUSH_CLONE’, ‘BRUSH_CREASE’, ‘BRUSH_FILL’, ‘BRUSH_FLATTEN’, ‘BRUSH_GRAB’, ‘BRUSH_INFLATE’, ‘BRUSH_LAYER’, ‘BRUSH_MASK’, ‘BRUSH_MIX’, ‘BRUSH_NUDGE’, ‘BRUSH_PINCH’, ‘BRUSH_SCRAPE’, ‘BRUSH_SCULPT_DRAW’, ‘BRUSH_SMEAR’, ‘BRUSH_SMOOTH’, ‘BRUSH_SNAKE_HOOK’, ‘BRUSH_SOFTEN’, ‘BRUSH_TEXDRAW’, ‘BRUSH_TEXFILL’, ‘BRUSH_TEXMASK’, ‘BRUSH_THUMB’, ‘BRUSH_ROTATE’, ‘GPBRUSH_SMOOTH’, ‘GPBRUSH_THICKNESS’, ‘GPBRUSH_STRENGTH’, ‘GPBRUSH_GRAB’, ‘GPBRUSH_PUSH’, ‘GPBRUSH_TWIST’, ‘GPBRUSH_PINCH’, ‘GPBRUSH_RANDOMIZE’, ‘GPBRUSH_CLONE’, ‘GPBRUSH_WEIGHT’, ‘GPBRUSH_PENCIL’, ‘GPBRUSH_PEN’, ‘GPBRUSH_INK’, ‘GPBRUSH_INKNOISE’, ‘GPBRUSH_BLOCK’, ‘GPBRUSH_MARKER’, ‘GPBRUSH_FILL’, ‘GPBRUSH_ERASE_SOFT’, ‘GPBRUSH_ERASE_HARD’, ‘GPBRUSH_ERASE_STROKE’, ‘SMALL_TRI_RIGHT_VEC’, ‘KEYTYPE_KEYFRAME_VEC’, ‘KEYTYPE_BREAKDOWN_VEC’, ‘KEYTYPE_EXTREME_VEC’, ‘KEYTYPE_JITTER_VEC’, ‘KEYTYPE_MOVING_HOLD_VEC’, ‘HANDLETYPE_FREE_VEC’, ‘HANDLETYPE_ALIGNED_VEC’, ‘HANDLETYPE_VECTOR_VEC’, ‘HANDLETYPE_AUTO_VEC’, ‘HANDLETYPE_AUTO_CLAMP_VEC’, ‘COLORSET_01_VEC’, ‘COLORSET_02_VEC’, ‘COLORSET_03_VEC’, ‘COLORSET_04_VEC’, ‘COLORSET_05_VEC’, ‘COLORSET_06_VEC’, ‘COLORSET_07_VEC’, ‘COLORSET_08_VEC’, ‘COLORSET_09_VEC’, ‘COLORSET_10_VEC’, ‘COLORSET_11_VEC’, ‘COLORSET_12_VEC’, ‘COLORSET_13_VEC’, ‘COLORSET_14_VEC’, ‘COLORSET_15_VEC’, ‘COLORSET_16_VEC’, ‘COLORSET_17_VEC’, ‘COLORSET_18_VEC’, ‘COLORSET_19_VEC’, ‘COLORSET_20_VEC’, ‘EVENT_A’, ‘EVENT_B’, ‘EVENT_C’, ‘EVENT_D’, ‘EVENT_E’, ‘EVENT_F’, ‘EVENT_G’, ‘EVENT_H’, ‘EVENT_I’, ‘EVENT_J’, ‘EVENT_K’, ‘EVENT_L’, ‘EVENT_M’, ‘EVENT_N’, ‘EVENT_O’, ‘EVENT_P’, ‘EVENT_Q’, ‘EVENT_R’, ‘EVENT_S’, ‘EVENT_T’, ‘EVENT_U’, ‘EVENT_V’, ‘EVENT_W’, ‘EVENT_X’, ‘EVENT_Y’, ‘EVENT_Z’, ‘EVENT_SHIFT’, ‘EVENT_CTRL’, ‘EVENT_ALT’, ‘EVENT_OS’, ‘EVENT_F1’, ‘EVENT_F2’, ‘EVENT_F3’, ‘EVENT_F4’, ‘EVENT_F5’, ‘EVENT_F6’, ‘EVENT_F7’, ‘EVENT_F8’, ‘EVENT_F9’, ‘EVENT_F10’, ‘EVENT_F11’, ‘EVENT_F12’, ‘EVENT_ESC’, ‘EVENT_TAB’, ‘EVENT_PAGEUP’, ‘EVENT_PAGEDOWN’, ‘EVENT_RETURN’], default ‘NONE’, (readonly) 
    '''

    identifier = None
    '''Unique name used in the code and scripting 

    :type:  string, default “”, (readonly, never None) 
    '''

    is_animatable = None
    '''Property is animatable through RNA 

    :type:  boolean, default False, (readonly) 
    '''

    is_argument_optional = None
    '''True when the property is optional in a Python function implementing an RNA function 

    :type:  boolean, default False, (readonly) 
    '''

    is_enum_flag = None
    '''True when multiple enums 

    :type:  boolean, default False, (readonly) 
    '''

    is_hidden = None
    '''True when the property is hidden 

    :type:  boolean, default False, (readonly) 
    '''

    is_library_editable = None
    '''Property is editable from linked instances (changes not saved) 

    :type:  boolean, default False, (readonly) 
    '''

    is_never_none = None
    '''True when this value can’t be set to None 

    :type:  boolean, default False, (readonly) 
    '''

    is_output = None
    '''True when this property is an output value from an RNA function 

    :type:  boolean, default False, (readonly) 
    '''

    is_overridable = None
    '''Property is overridable through RNA 

    :type:  boolean, default False, (readonly) 
    '''

    is_readonly = None
    '''Property is editable through RNA 

    :type:  boolean, default False, (readonly) 
    '''

    is_registered = None
    '''Property is registered as part of type registration 

    :type:  boolean, default False, (readonly) 
    '''

    is_registered_optional = None
    '''Property is optionally registered as part of type registration 

    :type:  boolean, default False, (readonly) 
    '''

    is_required = None
    '''False when this property is an optional argument in an RNA function 

    :type:  boolean, default False, (readonly) 
    '''

    is_runtime = None
    '''Property has been dynamically created at runtime 

    :type:  boolean, default False, (readonly) 
    '''

    is_skip_save = None
    '''True when the property is not saved in presets 

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''Human readable name 

    :type:  string, default “”, (readonly, never None) 
    '''

    srna = None
    '''Struct definition used for properties assigned to this item 

    :type:  Struct, (readonly) 
    '''

    subtype = None
    '''Semantic interpretation of the property 

    :type:  enum in [‘NONE’, ‘FILE_PATH’, ‘DIR_PATH’, ‘PIXEL’, ‘UNSIGNED’, ‘PERCENTAGE’, ‘FACTOR’, ‘ANGLE’, ‘TIME’, ‘DISTANCE’, ‘COLOR’, ‘TRANSLATION’, ‘DIRECTION’, ‘MATRIX’, ‘EULER’, ‘QUATERNION’, ‘XYZ’, ‘COLOR_GAMMA’, ‘COORDINATES’, ‘LAYER’, ‘LAYER_MEMBERSHIP’], default ‘NONE’, (readonly) 
    '''

    tags = None
    '''Subset of tags (defined in parent struct) that are set for this property 

    :type:  enum set in {}, default {}, (readonly) 
    '''

    translation_context = None
    '''Translation context of the property’s name 

    :type:  string, default “”, (readonly, never None) 
    '''

    type = None
    '''Data type of the property 

    :type:  enum in [‘BOOLEAN’, ‘INT’, ‘FLOAT’, ‘STRING’, ‘ENUM’, ‘POINTER’, ‘COLLECTION’], default ‘BOOLEAN’, (readonly) 
    '''

    unit = None
    '''Type of units for this property 

    :type:  enum in [‘NONE’, ‘LENGTH’, ‘AREA’, ‘VOLUME’, ‘ROTATION’, ‘TIME’, ‘VELOCITY’, ‘ACCELERATION’, ‘MASS’, ‘CAMERA’, ‘POWER’], default ‘NONE’, (readonly) 
    '''


class PropertyGroup:
    '''Group of ID properties '''

    name = None
    '''Unique name used in the code and scripting 

    :type:  string, default “”, (never None) 
    '''


class PropertyGroupItem:
    '''Property that stores arbitrary, user defined properties '''

    collection = None
    '''

    :type:  bpy_prop_collection of PropertyGroup, (readonly) 
    '''

    double = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    double_array = None
    '''

    :type:  float array of 1 items in [-inf, inf], default (0.0) 
    '''

    float = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    float_array = None
    '''

    :type:  float array of 1 items in [-inf, inf], default (0.0) 
    '''

    group = None
    '''

    :type:  PropertyGroup, (readonly) 
    '''

    id = None
    '''

    :type:  ID, (readonly) 
    '''

    idp_array = None
    '''

    :type:  bpy_prop_collection of PropertyGroup, (readonly) 
    '''

    int = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''

    int_array = None
    '''

    :type:  int array of 1 items in [-inf, inf], default (0,) 
    '''

    string = None
    '''

    :type:  string, default “”, (never None) 
    '''


class PythonConstraint:
    '''Use Python script for constraint evaluation '''

    has_script_error = None
    '''The linked Python script has thrown an error 

    :type:  boolean, default False, (readonly) 
    '''

    target_count = None
    '''Usually only 1-3 are needed 

    :type:  int in [-inf, inf], default 0 
    '''

    targets = None
    '''Target Objects 

    :type:  bpy_prop_collection of ConstraintTarget, (readonly) 
    '''

    text = None
    '''The text object that contains the Python script 

    :type:  Text 
    '''

    use_targets = None
    '''Use the targets indicated in the constraint panel 

    :type:  boolean, default False 
    '''


class RENDER_UL_renderviews:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class Region:
    '''Region in a subdivided screen area '''

    alignment = None
    '''Alignment of the region within the area 

    :type:  enum in [‘NONE’, ‘TOP’, ‘BOTTOM’, ‘LEFT’, ‘RIGHT’, ‘HORIZONTAL_SPLIT’, ‘VERTICAL_SPLIT’, ‘FLOAT’, ‘QUAD_SPLIT’], default ‘NONE’, (readonly) 
    '''

    height = None
    '''Region height 

    :type:  int in [0, 32767], default 0, (readonly) 
    '''

    type = None
    '''Type of this region 

    :type:  enum in [‘WINDOW’, ‘HEADER’, ‘CHANNELS’, ‘TEMPORARY’, ‘UI’, ‘TOOLS’, ‘TOOL_PROPS’, ‘PREVIEW’, ‘HUD’, ‘NAVIGATION_BAR’, ‘EXECUTE’, ‘FOOTER’], default ‘WINDOW’, (readonly) 
    '''

    view2d = None
    '''2D view of the region 

    :type:  View2D, (readonly, never None) 
    '''

    width = None
    '''Region width 

    :type:  int in [0, 32767], default 0, (readonly) 
    '''

    x = None
    '''The window relative vertical location of the region 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    y = None
    '''The window relative horizontal location of the region 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    def tag_redraw(self):
        '''tag_redraw 

        '''
        pass


class RegionView3D:
    '''3D View region data '''

    clip_planes = None
    '''

    :type:  float multi-dimensional array of 6 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    is_orthographic_side_view = None
    '''Is current view an orthographic side view 

    :type:  boolean, default False 
    '''

    is_perspective = None
    '''

    :type:  boolean, default False 
    '''

    lock_rotation = None
    '''Lock view rotation in side views 

    :type:  boolean, default False 
    '''

    perspective_matrix = None
    '''Current perspective matrix (window_matrix * view_matrix) 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)), (readonly) 
    '''

    show_sync_view = None
    '''Sync view position between side views 

    :type:  boolean, default False 
    '''

    use_box_clip = None
    '''Clip objects based on what’s visible in other side views 

    :type:  boolean, default False 
    '''

    use_clip_planes = None
    '''

    :type:  boolean, default False 
    '''

    view_camera_offset = None
    '''View shift in camera view 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    view_camera_zoom = None
    '''Zoom factor in camera view 

    :type:  float in [-30, 600], default 0.0 
    '''

    view_distance = None
    '''Distance to the view location 

    :type:  float in [0, inf], default 0.0 
    '''

    view_location = None
    '''View pivot location 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    view_matrix = None
    '''Current view matrix 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)) 
    '''

    view_perspective = None
    '''View Perspective 

    :type:  enum in [‘PERSP’, ‘ORTHO’, ‘CAMERA’], default ‘ORTHO’ 
    '''

    view_rotation = None
    '''Rotation in quaternions (keep normalized) 

    :type:  float array of 4 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    window_matrix = None
    '''Current window matrix 

    :type:  float multi-dimensional array of 4 * 4 items in [-inf, inf], default ((0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0)), (readonly) 
    '''

    def update(self):
        '''Recalculate the view matrices 

        '''
        pass


class RemeshModifier:
    '''Generate a new surface with regular topology that follows the shape of the input mesh '''

    mode = None
    '''

    :type:  enum in [‘BLOCKS’, ‘SMOOTH’, ‘SHARP’], default ‘BLOCKS’ 
    '''

    octree_depth = None
    '''Resolution of the octree; higher values give finer details 

    :type:  int in [1, 12], default 0 
    '''

    scale = None
    '''The ratio of the largest dimension of the model over the size of the grid 

    :type:  float in [0, 0.99], default 0.0 
    '''

    sharpness = None
    '''Tolerance for outliers; lower values filter noise while higher values will reproduce edges closer to the input 

    :type:  float in [-inf, inf], default 0.0 
    '''

    threshold = None
    '''If removing disconnected pieces, minimum size of components to preserve as a ratio of the number of polygons in the largest component 

    :type:  float in [0, 1], default 0.0 
    '''

    use_remove_disconnected = None
    '''

    :type:  boolean, default False 
    '''

    use_smooth_shade = None
    '''Output faces with smooth shading rather than flat shaded 

    :type:  boolean, default False 
    '''


class RenderEngine:
    '''Render engine '''

    bl_idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_label = None
    '''

    :type:  string, default “”, (never None) 
    '''

    bl_use_exclude_layers = None
    '''

    :type:  boolean, default False 
    '''

    bl_use_postprocess = None
    '''

    :type:  boolean, default False 
    '''

    bl_use_preview = None
    '''

    :type:  boolean, default False 
    '''

    bl_use_save_buffers = None
    '''

    :type:  boolean, default False 
    '''

    bl_use_shading_nodes = None
    '''

    :type:  boolean, default False 
    '''

    bl_use_shading_nodes_custom = None
    '''

    :type:  boolean, default True 
    '''

    bl_use_spherical_stereo = None
    '''

    :type:  boolean, default False 
    '''

    camera_override = None
    '''

    :type:  Object, (readonly) 
    '''

    is_animation = None
    '''

    :type:  boolean, default False 
    '''

    is_preview = None
    '''

    :type:  boolean, default False 
    '''

    layer_override = None
    '''

    :type:  boolean array of 20 items, default (False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False) 
    '''

    render = None
    '''

    :type:  RenderSettings, (readonly) 
    '''

    resolution_x = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    resolution_y = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    tile_x = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    tile_y = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    use_highlight_tiles = None
    '''

    :type:  boolean, default False 
    '''

    def update(self, data=None, depsgraph=None):
        '''Export scene data for render 

        '''
        pass

    def render(self, depsgraph):
        '''Render scene into an image 

        '''
        pass

    def bake(self, depsgraph, object, pass_type, pass_filter, object_id,
             pixel_array, num_pixels, depth, result):
        '''Bake passes 

        :param pass_type: Pass, Pass to bake 
        :type pass_type: enum in ['COMBINED', 'AO', 'SHADOW', 'NORMAL', 'UV', 'ROUGHNESS', 'EMIT', 'ENVIRONMENT', 'DIFFUSE', 'GLOSSY', 'TRANSMISSION', 'SUBSURFACE']
        :param pass_filter: Pass Filter, Filter to combined, diffuse, glossy, transmission and subsurface passes 
        :type pass_filter: int in [0, inf]
        :param object_id: Object Id, Id of the current object being baked in relation to the others 
        :type object_id: int in [0, inf]
        :param num_pixels: Number of Pixels, Size of the baking batch 
        :type num_pixels: int in [0, inf]
        :param depth: Pixels depth, Number of channels 
        :type depth: int in [0, inf]
        '''
        pass

    def view_update(self, context=None):
        '''Update on data changes for viewport render 

        '''
        pass

    def view_draw(self, context=None):
        '''Draw viewport render 

        '''
        pass

    def update_script_node(self, node=None):
        '''Compile shader script node 

        '''
        pass

    def update_render_passes(self, scene=None, renderlayer=None):
        '''Update the render passes that will be generated 

        '''
        pass

    def tag_redraw(self):
        '''Request redraw for viewport rendering 

        '''
        pass

    def tag_update(self):
        '''Request update call for viewport rendering 

        '''
        pass

    def begin_result(self, x, y, w, h, layer="", view=""):
        '''Create render result to write linear floating point render layers and passes 

        :param x: X 
        :type x: int in [0, inf]
        :param y: Y 
        :type y: int in [0, inf]
        :param w: Width 
        :type w: int in [0, inf]
        :param h: Height 
        :type h: int in [0, inf]
        :param layer: Layer, Single layer to get render result for 
        :type layer: string, (optional, never None)
        :param view: View, Single view to get render result for 
        :type view: string, (optional, never None)
        :rtype: RenderResult 
        :return:  Result 
        '''
        pass

    def update_result(self, result):
        '''Signal that pixels have been updated and can be redrawn in the user interface 

        :param result: Result 
        :type result: RenderResult
        '''
        pass

    def end_result(self,
                   result,
                   cancel=False,
                   highlight=False,
                   do_merge_results=False):
        '''All pixels in the render result have been set and are final 

        :param result: Result 
        :type result: RenderResult
        :param cancel: Cancel, Don’t mark tile as done, don’t merge results unless forced 
        :type cancel: boolean, (optional)
        :param highlight: Highlight, Don’t mark tile as done yet 
        :type highlight: boolean, (optional)
        :param do_merge_results: Merge Results, Merge results even if cancel=true 
        :type do_merge_results: boolean, (optional)
        '''
        pass

    def add_pass(self, name, channels, chan_id, layer=""):
        '''Add a pass to the render layer 

        :param name: Name, Name of the Pass, without view or channel tag 
        :type name: string, (never None)
        :param channels: Channels 
        :type channels: int in [0, inf]
        :param chan_id: Channel IDs, Channel names, one character per channel 
        :type chan_id: string, (never None)
        :param layer: Layer, Single layer to add render pass to 
        :type layer: string, (optional, never None)
        '''
        pass

    def get_result(self):
        '''Get final result for non-pixel operations 

        :rtype: RenderResult 
        :return:  Result 
        '''
        pass

    def test_break(self):
        '''Test if the render operation should been canceled, this is a fast call that should be used regularly for responsiveness 

        :rtype: boolean 
        :return:  Break 
        '''
        pass

    def active_view_get(self):
        '''active_view_get 

        :rtype: string, (never None) 
        :return:  View, Single view active 
        '''
        pass

    def active_view_set(self, view):
        '''active_view_set 

        :param view: View, Single view to set as active 
        :type view: string, (never None)
        '''
        pass

    def camera_shift_x(self, camera, use_spherical_stereo=False):
        '''camera_shift_x 

        :param use_spherical_stereo: Spherical Stereo 
        :type use_spherical_stereo: boolean, (optional)
        :rtype: float in [0, inf] 
        :return:  Shift X 
        '''
        pass

    def camera_model_matrix(self, camera, use_spherical_stereo=False):
        '''camera_model_matrix 

        :param use_spherical_stereo: Spherical Stereo 
        :type use_spherical_stereo: boolean, (optional)
        :rtype: float multi-dimensional array of 4 * 4 items in [-inf, inf] 
        :return:  Model Matrix, Normalized camera model matrix 
        '''
        pass

    def use_spherical_stereo(self, camera):
        '''use_spherical_stereo 

        :rtype: boolean 
        :return:  Spherical Stereo 
        '''
        pass

    def update_stats(self, stats, info):
        '''Update and signal to redraw render status text 

        :param stats: Stats 
        :type stats: string, (never None)
        :param info: Info 
        :type info: string, (never None)
        '''
        pass

    def frame_set(self, frame, subframe):
        '''Evaluate scene at a different frame (for motion blur) 

        :param frame: Frame 
        :type frame: int in [-inf, inf]
        :param subframe: Subframe 
        :type subframe: float in [0, 1]
        '''
        pass

    def update_progress(self, progress):
        '''Update progress percentage of render 

        :param progress: Percentage of render that’s done 
        :type progress: float in [0, 1]
        '''
        pass

    def update_memory_stats(self, memory_used=0.0, memory_peak=0.0):
        '''Update memory usage statistics 

        :param memory_used: Current memory usage in megabytes 
        :type memory_used: float in [0, inf], (optional)
        :param memory_peak: Peak memory usage in megabytes 
        :type memory_peak: float in [0, inf], (optional)
        '''
        pass

    def report(self, type, message):
        '''Report info, warning or error messages 

        :param type: Type 
        :type type: enum set in {'DEBUG', 'INFO', 'OPERATOR', 'PROPERTY', 'WARNING', 'ERROR', 'ERROR_INVALID_INPUT', 'ERROR_INVALID_CONTEXT', 'ERROR_OUT_OF_MEMORY'}
        :param message: Report Message 
        :type message: string, (never None)
        '''
        pass

    def error_set(self, message):
        '''Set error message displaying after the render is finished 

        :param message: Report Message 
        :type message: string, (never None)
        '''
        pass

    def bind_display_space_shader(self, scene):
        '''Bind GLSL fragment shader that converts linear colors to display space colors using scene color management settings 

        '''
        pass

    def unbind_display_space_shader(self):
        '''Unbind GLSL display space shader, must always be called after binding the shader 

        '''
        pass

    def support_display_space_shader(self, scene):
        '''Test if GLSL display space shader is supported for the combination of graphics card and scene settings 

        :rtype: boolean 
        :return:  Supported 
        '''
        pass

    def get_preview_pixel_size(self, scene):
        '''Free Blender side memory of render engine 

        :rtype: int in [1, 8] 
        :return:  Pixel Size 
        '''
        pass

    def free_blender_memory(self):
        '''free_blender_memory 

        '''
        pass

    def register_pass(self, scene, view_layer, name, channels, chanid, type):
        '''Register a render pass that will be part of the render with the current settings 

        :param name: Name 
        :type name: string, (never None)
        :param channels: Channels 
        :type channels: int in [1, 8]
        :param chanid: Channel IDs 
        :type chanid: string, (never None)
        :param type: Type 
        :type type: enum in ['VALUE', 'VECTOR', 'COLOR']
        '''
        pass


class RenderLayer:
    invert_zmask = None
    '''For Zmask, only render what is behind solid z values instead of in front 

    :type:  boolean, default False, (readonly) 
    '''

    name = None
    '''View layer name 

    :type:  string, default “”, (readonly, never None) 
    '''

    passes = None
    '''

    :type:  RenderPasses bpy_prop_collection of RenderPass, (readonly) 
    '''

    use_all_z = None
    '''Fill in Z values for solid faces in invisible layers, for masking 

    :type:  boolean, default False, (readonly) 
    '''

    use_ao = None
    '''Render Ambient Occlusion in this Layer 

    :type:  boolean, default False, (readonly) 
    '''

    use_edge_enhance = None
    '''Render Edge-enhance in this Layer (only works for Solid faces) 

    :type:  boolean, default False, (readonly) 
    '''

    use_halo = None
    '''Render Halos in this Layer (on top of Solid) 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_ambient_occlusion = None
    '''Deliver Ambient Occlusion pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_combined = None
    '''Deliver full combined RGBA buffer 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_diffuse_color = None
    '''Deliver diffuse color pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_diffuse_direct = None
    '''Deliver diffuse direct pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_diffuse_indirect = None
    '''Deliver diffuse indirect pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_emit = None
    '''Deliver emission pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_environment = None
    '''Deliver environment lighting pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_glossy_color = None
    '''Deliver glossy color pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_glossy_direct = None
    '''Deliver glossy direct pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_glossy_indirect = None
    '''Deliver glossy indirect pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_material_index = None
    '''Deliver material index pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_mist = None
    '''Deliver mist factor pass (0.0-1.0) 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_normal = None
    '''Deliver normal pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_object_index = None
    '''Deliver object index pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_shadow = None
    '''Deliver shadow pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_subsurface_color = None
    '''Deliver subsurface color pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_subsurface_direct = None
    '''Deliver subsurface direct pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_subsurface_indirect = None
    '''Deliver subsurface indirect pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_transmission_color = None
    '''Deliver transmission color pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_transmission_direct = None
    '''Deliver transmission direct pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_transmission_indirect = None
    '''Deliver transmission indirect pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_uv = None
    '''Deliver texture UV pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_vector = None
    '''Deliver speed vector pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_pass_z = None
    '''Deliver Z values pass 

    :type:  boolean, default False, (readonly) 
    '''

    use_sky = None
    '''Render Sky in this Layer 

    :type:  boolean, default False, (readonly) 
    '''

    use_solid = None
    '''Render Solid faces in this Layer 

    :type:  boolean, default False, (readonly) 
    '''

    use_strand = None
    '''Render Strands in this Layer 

    :type:  boolean, default False, (readonly) 
    '''

    use_zmask = None
    '''Only render what’s in front of the solid z values 

    :type:  boolean, default False, (readonly) 
    '''

    use_ztransp = None
    '''Render Z-Transparent faces in this Layer (on top of Solid and Halos) 

    :type:  boolean, default False, (readonly) 
    '''

    def load_from_file(self, filename, x=0, y=0):
        '''Copies the pixels of this renderlayer from an image file 

        :param filename: Filename, Filename to load into this render tile, must be no smaller than the renderlayer 
        :type filename: string, (never None)
        :param x: Offset X, Offset the position to copy from if the image is larger than the render layer 
        :type x: int in [0, inf], (optional)
        :param y: Offset Y, Offset the position to copy from if the image is larger than the render layer 
        :type y: int in [0, inf], (optional)
        '''
        pass


class RenderPass:
    channel_id = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    channels = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    fullname = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    name = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    rect = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    view_id = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''


class RenderPasses:
    '''Collection of render passes '''

    def find_by_type(self, pass_type, view):
        '''Get the render pass for a given type and view 

        :param pass_type: Pass 
        :type pass_type: enum in ['COMBINED', 'Z', 'SHADOW', 'AO', 'NORMAL', 'VECTOR', 'OBJECT_INDEX', 'UV', 'MIST', 'EMIT', 'ENVIRONMENT', 'MATERIAL_INDEX', 'DIFFUSE_DIRECT', 'DIFFUSE_INDIRECT', 'DIFFUSE_COLOR', 'GLOSSY_DIRECT', 'GLOSSY_INDIRECT', 'GLOSSY_COLOR', 'TRANSMISSION_DIRECT', 'TRANSMISSION_INDIRECT', 'TRANSMISSION_COLOR', 'SUBSURFACE_DIRECT', 'SUBSURFACE_INDIRECT', 'SUBSURFACE_COLOR']
        :param view: View, Render view to get pass from 
        :type view: string, (never None)
        :rtype: RenderPass 
        :return:  The matching render pass 
        '''
        pass

    def find_by_name(self, name, view):
        '''Get the render pass for a given name and view 

        :param name: Pass 
        :type name: string, (never None)
        :param view: View, Render view to get pass from 
        :type view: string, (never None)
        :rtype: RenderPass 
        :return:  The matching render pass 
        '''
        pass


class RenderResult:
    '''Result of rendering, including all layers and passes '''

    layers = None
    '''

    :type:  bpy_prop_collection of RenderLayer, (readonly) 
    '''

    resolution_x = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    resolution_y = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    views = None
    '''

    :type:  bpy_prop_collection of RenderView, (readonly) 
    '''

    def load_from_file(self, filename):
        '''Copies the pixels of this render result from an image file 

        :param filename: File Name, Filename to load into this render tile, must be no smaller than the render result 
        :type filename: string, (never None)
        '''
        pass

    def stamp_data_add_field(self, field, value):
        '''Add engine-specific stamp data to the result 

        :param field: Field, Name of the stamp field to add 
        :type field: string, (never None)
        :param value: Value, Value of the stamp data 
        :type value: string, (never None)
        '''
        pass


class RenderSettings:
    '''Rendering settings for a Scene data-block '''

    alpha_mode = None
    '''Representation of alpha information in the RGBA pixels 

    :type:  enum in [‘SKY’, ‘TRANSPARENT’], default ‘SKY’ 
    '''

    antialiasing_samples = None
    '''Amount of anti-aliasing samples per pixel 

    :type:  enum in [‘5’, ‘8’, ‘11’, ‘16’], default ‘5’ 
    '''

    bake = None
    '''

    :type:  BakeSettings, (readonly, never None) 
    '''

    bake_bias = None
    '''Bias towards faces further away from the object (in blender units) 

    :type:  float in [0, 1000], default 0.0 
    '''

    bake_margin = None
    '''Extends the baked result as a post process filter 

    :type:  int in [0, 64], default 0 
    '''

    bake_samples = None
    '''Number of samples used for ambient occlusion baking from multires 

    :type:  int in [64, 1024], default 256 
    '''

    bake_type = None
    '''Choose shading information to bake into the image 

    :type:  enum in [‘NORMALS’, ‘DISPLACEMENT’], default ‘NORMALS’ 
    '''

    bake_user_scale = None
    '''Instead of automatically normalizing to 0..1, apply a user scale to the derivative map 

    :type:  float in [0, 1000], default 0.0 
    '''

    border_max_x = None
    '''Maximum X value for the render region 

    :type:  float in [0, 1], default 0.0 
    '''

    border_max_y = None
    '''Maximum Y value for the render region 

    :type:  float in [0, 1], default 0.0 
    '''

    border_min_x = None
    '''Minimum X value for the render region 

    :type:  float in [0, 1], default 0.0 
    '''

    border_min_y = None
    '''Minimum Y value for the render region 

    :type:  float in [0, 1], default 0.0 
    '''

    display_mode = None
    '''Select where rendered images will be displayed 

    :type:  enum in [‘SCREEN’, ‘AREA’, ‘WINDOW’, ‘NONE’], default ‘SCREEN’ 
    '''

    dither_intensity = None
    '''Amount of dithering noise added to the rendered image to break up banding 

    :type:  float in [0, 2], default 0.0 
    '''

    engine = None
    '''Engine to use for rendering 

    :type:  enum in [‘BLENDER_EEVEE’], default ‘BLENDER_EEVEE’ 
    '''

    ffmpeg = None
    '''FFmpeg related settings for the scene 

    :type:  FFmpegSettings, (readonly) 
    '''

    file_extension = None
    '''The file extension used for saving renders 

    :type:  string, default “”, (readonly, never None) 
    '''

    filepath = None
    '''Directory/name to save animations, # characters defines the position and length of frame numbers 

    :type:  string, default “”, (never None) 
    '''

    filter_size = None
    '''Width over which the reconstruction filter combines samples 

    :type:  float in [0, 500], default 0.0 
    '''

    fps = None
    '''Framerate, expressed in frames per second 

    :type:  int in [1, 32767], default 0 
    '''

    fps_base = None
    '''Framerate base 

    :type:  float in [1e-05, 1e+06], default 0.0 
    '''

    frame_map_new = None
    '''How many frames the Map Old will last 

    :type:  int in [1, 900], default 0 
    '''

    frame_map_old = None
    '''Old mapping value in frames 

    :type:  int in [1, 900], default 0 
    '''

    hair_subdiv = None
    '''Additional subdivision along the hair 

    :type:  int in [0, 3], default 0 
    '''

    hair_type = None
    '''Hair shape type 

    :type:  enum in [‘STRAND’, ‘STRIP’], default ‘STRAND’ 
    '''

    has_multiple_engines = None
    '''More than one rendering engine is available 

    :type:  boolean, default False, (readonly) 
    '''

    image_settings = None
    '''

    :type:  ImageFormatSettings, (readonly, never None) 
    '''

    is_movie_format = None
    '''When true the format is a movie 

    :type:  boolean, default False, (readonly) 
    '''

    line_thickness = None
    '''Line thickness in pixels 

    :type:  float in [0, 10000], default 0.0 
    '''

    line_thickness_mode = None
    '''Line thickness mode for Freestyle line drawing 

    :type:  enum in [‘ABSOLUTE’, ‘RELATIVE’], default ‘ABSOLUTE’ 
    '''

    motion_blur_shutter = None
    '''Time taken in frames between shutter open and close 

    :type:  float in [0, inf], default 0.0 
    '''

    motion_blur_shutter_curve = None
    '''Curve defining the shutter’s openness over time 

    :type:  CurveMapping, (readonly) 
    '''

    pixel_aspect_x = None
    '''Horizontal aspect ratio - for anamorphic or non-square pixel output 

    :type:  float in [1, 200], default 0.0 
    '''

    pixel_aspect_y = None
    '''Vertical aspect ratio - for anamorphic or non-square pixel output 

    :type:  float in [1, 200], default 0.0 
    '''

    preview_pixel_size = None
    '''Pixel size for viewport rendering 

    :type:  enum in [‘AUTO’, ‘1’, ‘2’, ‘4’, ‘8’], default ‘AUTO’ 
    '''

    preview_start_resolution = None
    '''Resolution to start rendering preview at, progressively increasing it to the full viewport size 

    :type:  int in [8, 16384], default 64 
    '''

    resolution_percentage = None
    '''Percentage scale for render resolution 

    :type:  int in [1, 32767], default 0 
    '''

    resolution_x = None
    '''Number of horizontal pixels in the rendered image 

    :type:  int in [4, 65536], default 0 
    '''

    resolution_y = None
    '''Number of vertical pixels in the rendered image 

    :type:  int in [4, 65536], default 0 
    '''

    sequencer_gl_preview = None
    '''Method to draw in the sequencer view 

    :type:  enum in [‘WIREFRAME’, ‘SOLID’, ‘MATERIAL’, ‘RENDERED’], default ‘WIREFRAME’ 
    '''

    simplify_child_particles = None
    '''Global child particles percentage 

    :type:  float in [0, 1], default 0.0 
    '''

    simplify_child_particles_render = None
    '''Global child particles percentage during rendering 

    :type:  float in [0, 1], default 0.0 
    '''

    simplify_gpencil = None
    '''Simplify Grease Pencil drawing 

    :type:  boolean, default False 
    '''

    simplify_gpencil_blend = None
    '''Do not display blend layers 

    :type:  boolean, default False 
    '''

    simplify_gpencil_onplay = None
    '''Simplify Grease Pencil only during animation playback 

    :type:  boolean, default False 
    '''

    simplify_gpencil_remove_lines = None
    '''Disable external lines of fill strokes 

    :type:  boolean, default False 
    '''

    simplify_gpencil_shader_fx = None
    '''Do not apply shader fx 

    :type:  boolean, default False 
    '''

    simplify_gpencil_view_fill = None
    '''Disable fill strokes in the viewport 

    :type:  boolean, default False 
    '''

    simplify_gpencil_view_modifier = None
    '''Do not apply modifiers in the viewport 

    :type:  boolean, default False 
    '''

    simplify_subdivision = None
    '''Global maximum subdivision level 

    :type:  int in [0, 32767], default 0 
    '''

    simplify_subdivision_render = None
    '''Global maximum subdivision level during rendering 

    :type:  int in [0, 32767], default 0 
    '''

    stamp_background = None
    '''Color to use behind stamp text 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    stamp_font_size = None
    '''Size of the font used when rendering stamp text 

    :type:  int in [8, 64], default 0 
    '''

    stamp_foreground = None
    '''Color to use for stamp text 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    stamp_note_text = None
    '''Custom text to appear in the stamp note 

    :type:  string, default “”, (never None) 
    '''

    stereo_views = None
    '''

    :type:  bpy_prop_collection of SceneRenderView, (readonly) 
    '''

    threads = None
    '''Number of CPU threads to use simultaneously while rendering (for multi-core/CPU systems) 

    :type:  int in [1, 1024], default 0 
    '''

    threads_mode = None
    '''Determine the amount of render threads used 

    :type:  enum in [‘AUTO’, ‘FIXED’], default ‘AUTO’ 
    '''

    tile_x = None
    '''Horizontal tile size to use while rendering 

    :type:  int in [8, 65536], default 0 
    '''

    tile_y = None
    '''Vertical tile size to use while rendering 

    :type:  int in [8, 65536], default 0 
    '''

    use_antialiasing = None
    '''Render and combine multiple samples per pixel to prevent jagged edges 

    :type:  boolean, default False 
    '''

    use_bake_clear = None
    '''Clear Images before baking 

    :type:  boolean, default False 
    '''

    use_bake_lores_mesh = None
    '''Calculate heights against unsubdivided low resolution mesh 

    :type:  boolean, default False 
    '''

    use_bake_multires = None
    '''Bake directly from multires object 

    :type:  boolean, default False 
    '''

    use_bake_selected_to_active = None
    '''Bake shading on the surface of selected objects to the active object 

    :type:  boolean, default False 
    '''

    use_bake_user_scale = None
    '''Use a user scale for the derivative map 

    :type:  boolean, default False 
    '''

    use_border = None
    '''Render a user-defined render region, within the frame size 

    :type:  boolean, default False 
    '''

    use_compositing = None
    '''Process the render result through the compositing pipeline, if compositing nodes are enabled 

    :type:  boolean, default False 
    '''

    use_crop_to_border = None
    '''Crop the rendered frame to the defined render region size 

    :type:  boolean, default False 
    '''

    use_file_extension = None
    '''Add the file format extensions to the rendered file name (eg: filename + .jpg) 

    :type:  boolean, default False 
    '''

    use_freestyle = None
    '''Draw stylized strokes using Freestyle 

    :type:  boolean, default False 
    '''

    use_full_sample = None
    '''Save for every anti-aliasing sample the entire RenderLayer results (this solves anti-aliasing issues with compositing) 

    :type:  boolean, default False 
    '''

    use_lock_interface = None
    '''Lock interface during rendering in favor of giving more memory to the renderer 

    :type:  boolean, default False 
    '''

    use_motion_blur = None
    '''Use multi-sampled 3D scene motion blur 

    :type:  boolean, default False 
    '''

    use_multiview = None
    '''Use multiple views in the scene 

    :type:  boolean, default False 
    '''

    use_overwrite = None
    '''Overwrite existing files while rendering 

    :type:  boolean, default False 
    '''

    use_persistent_data = None
    '''Keep render data around for faster re-renders 

    :type:  boolean, default False 
    '''

    use_placeholder = None
    '''Create empty placeholder files while rendering frames (similar to Unix ‘touch’) 

    :type:  boolean, default False 
    '''

    use_render_cache = None
    '''Save render cache to EXR files (useful for heavy compositing, Note: affects indirectly rendered scenes) 

    :type:  boolean, default False 
    '''

    use_save_buffers = None
    '''Save tiles for all RenderLayers and SceneNodes to files in the temp directory (saves memory, required for Full Sample) 

    :type:  boolean, default False 
    '''

    use_sequencer = None
    '''Process the render (and composited) result through the video sequence editor pipeline, if sequencer strips exist 

    :type:  boolean, default False 
    '''

    use_sequencer_gl_dof = None
    '''Use depth of field using the values from scene strip active camera 

    :type:  boolean, default False 
    '''

    use_sequencer_gl_textured_solid = None
    '''Display face-assigned textures in solid draw method 

    :type:  boolean, default False 
    '''

    use_simplify = None
    '''Enable simplification of scene for quicker preview renders 

    :type:  boolean, default False 
    '''

    use_simplify_smoke_highres = None
    '''Display high-resolution smoke in the viewport 

    :type:  boolean, default False 
    '''

    use_single_layer = None
    '''Only render the active layer. Only affects rendering from the interface, ignored for rendering from command line 

    :type:  boolean, default False 
    '''

    use_spherical_stereo = None
    '''Active render engine supports spherical stereo rendering 

    :type:  boolean, default False, (readonly) 
    '''

    use_stamp = None
    '''Render the stamp info text in the rendered image 

    :type:  boolean, default False 
    '''

    use_stamp_camera = None
    '''Include the name of the active camera in image metadata 

    :type:  boolean, default False 
    '''

    use_stamp_date = None
    '''Include the current date in image/video metadata 

    :type:  boolean, default False 
    '''

    use_stamp_filename = None
    '''Include the .blend filename in image/video metadata 

    :type:  boolean, default False 
    '''

    use_stamp_frame = None
    '''Include the frame number in image metadata 

    :type:  boolean, default False 
    '''

    use_stamp_frame_range = None
    '''Include the rendered frame range in image/video metadata 

    :type:  boolean, default False 
    '''

    use_stamp_hostname = None
    '''Include the hostname of the machine that rendered the frame 

    :type:  boolean, default False 
    '''

    use_stamp_labels = None
    '''Display stamp labels (“Camera” in front of camera name, etc.) 

    :type:  boolean, default False 
    '''

    use_stamp_lens = None
    '''Include the active camera’s lens in image metadata 

    :type:  boolean, default False 
    '''

    use_stamp_marker = None
    '''Include the name of the last marker in image metadata 

    :type:  boolean, default False 
    '''

    use_stamp_memory = None
    '''Include the peak memory usage in image metadata 

    :type:  boolean, default False 
    '''

    use_stamp_note = None
    '''Include a custom note in image/video metadata 

    :type:  boolean, default False 
    '''

    use_stamp_render_time = None
    '''Include the render time in image metadata 

    :type:  boolean, default False 
    '''

    use_stamp_scene = None
    '''Include the name of the active scene in image/video metadata 

    :type:  boolean, default False 
    '''

    use_stamp_sequencer_strip = None
    '''Include the name of the foreground sequence strip in image metadata 

    :type:  boolean, default False 
    '''

    use_stamp_strip_meta = None
    '''Use metadata from the strips in the sequencer 

    :type:  boolean, default False 
    '''

    use_stamp_time = None
    '''Include the rendered frame timecode as HH:MM:SS.FF in image metadata 

    :type:  boolean, default False 
    '''

    views = None
    '''

    :type:  RenderViews bpy_prop_collection of SceneRenderView, (readonly) 
    '''

    views_format = None
    '''

    :type:  enum in [‘STEREO_3D’, ‘MULTIVIEW’], default ‘STEREO_3D’ 
    '''

    def frame_path(self, frame=-2147483648, preview=False, view=""):
        '''Return the absolute path to the filename to be written for a given frame 

        :param frame: Frame number to use, if unset the current frame will be used 
        :type frame: int in [-inf, inf], (optional)
        :param preview: Preview, Use preview range 
        :type preview: boolean, (optional)
        :param view: View, The name of the view to use to replace the “%” chars 
        :type view: string, (optional, never None)
        :rtype: string, (never None) 
        :return:  File Path, The resulting filepath from the scenes render settings 
        '''
        pass


class RenderSlot:
    '''Parameters defining the render slot '''

    name = None
    '''Render slot name 

    :type:  string, default “”, (never None) 
    '''

    def clear(self, iuser):
        '''Clear the render slot 

        :param iuser: ImageUser 
        :type iuser: ImageUser
        '''
        pass


class RenderSlots:
    '''Collection of render layers '''

    active = None
    '''Active render slot of the image 

    :type:  RenderSlot 
    '''

    active_index = None
    '''Active render slot of the image 

    :type:  int in [0, 32767], default 0 
    '''

    def new(self, name=""):
        '''Add a render slot to the image 

        :param name: Name, New name for the render slot 
        :type name: string, (optional, never None)
        :rtype: RenderSlot 
        :return:  Newly created render layer 
        '''
        pass


class RenderView:
    name = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''


class RenderViews:
    '''Collection of render views '''

    active = None
    '''Active Render View 

    :type:  SceneRenderView, (never None) 
    '''

    active_index = None
    '''Active index in render view array 

    :type:  int in [0, 32767], default 0 
    '''

    def new(self, name):
        '''Add a render view to scene 

        :param name: New name for the marker (not unique) 
        :type name: string, (never None)
        :rtype: SceneRenderView 
        :return:  Newly created render view 
        '''
        pass

    def remove(self, view):
        '''Remove a render view 

        :param view: Render view to remove 
        :type view: SceneRenderView, (never None)
        '''
        pass


class RigidBodyConstraint:
    '''Constraint influencing Objects inside Rigid Body Simulation '''

    breaking_threshold = None
    '''Impulse threshold that must be reached for the constraint to break 

    :type:  float in [0, inf], default 10.0 
    '''

    disable_collisions = None
    '''Disable collisions between constrained rigid bodies 

    :type:  boolean, default False 
    '''

    enabled = None
    '''Enable this constraint 

    :type:  boolean, default False 
    '''

    limit_ang_x_lower = None
    '''Lower limit of X axis rotation 

    :type:  float in [-6.28319, 6.28319], default -0.785398 
    '''

    limit_ang_x_upper = None
    '''Upper limit of X axis rotation 

    :type:  float in [-6.28319, 6.28319], default 0.785398 
    '''

    limit_ang_y_lower = None
    '''Lower limit of Y axis rotation 

    :type:  float in [-6.28319, 6.28319], default -0.785398 
    '''

    limit_ang_y_upper = None
    '''Upper limit of Y axis rotation 

    :type:  float in [-6.28319, 6.28319], default 0.785398 
    '''

    limit_ang_z_lower = None
    '''Lower limit of Z axis rotation 

    :type:  float in [-6.28319, 6.28319], default -0.785398 
    '''

    limit_ang_z_upper = None
    '''Upper limit of Z axis rotation 

    :type:  float in [-6.28319, 6.28319], default 0.785398 
    '''

    limit_lin_x_lower = None
    '''Lower limit of X axis translation 

    :type:  float in [-inf, inf], default -1 
    '''

    limit_lin_x_upper = None
    '''Upper limit of X axis translation 

    :type:  float in [-inf, inf], default 1.0 
    '''

    limit_lin_y_lower = None
    '''Lower limit of Y axis translation 

    :type:  float in [-inf, inf], default -1 
    '''

    limit_lin_y_upper = None
    '''Upper limit of Y axis translation 

    :type:  float in [-inf, inf], default 1.0 
    '''

    limit_lin_z_lower = None
    '''Lower limit of Z axis translation 

    :type:  float in [-inf, inf], default -1 
    '''

    limit_lin_z_upper = None
    '''Upper limit of Z axis translation 

    :type:  float in [-inf, inf], default 1.0 
    '''

    motor_ang_max_impulse = None
    '''Maximum angular motor impulse 

    :type:  float in [0, inf], default 1.0 
    '''

    motor_ang_target_velocity = None
    '''Target angular motor velocity 

    :type:  float in [-inf, inf], default 1.0 
    '''

    motor_lin_max_impulse = None
    '''Maximum linear motor impulse 

    :type:  float in [0, inf], default 1.0 
    '''

    motor_lin_target_velocity = None
    '''Target linear motor velocity 

    :type:  float in [-inf, inf], default 1.0 
    '''

    object1 = None
    '''First Rigid Body Object to be constrained 

    :type:  Object 
    '''

    object2 = None
    '''Second Rigid Body Object to be constrained 

    :type:  Object 
    '''

    solver_iterations = None
    '''Number of constraint solver iterations made per simulation step (higher values are more accurate but slower) 

    :type:  int in [1, 1000], default 10 
    '''

    spring_damping_ang_x = None
    '''Damping on the X rotational axis 

    :type:  float in [0, inf], default 0.5 
    '''

    spring_damping_ang_y = None
    '''Damping on the Y rotational axis 

    :type:  float in [0, inf], default 0.5 
    '''

    spring_damping_ang_z = None
    '''Damping on the Z rotational axis 

    :type:  float in [0, inf], default 0.5 
    '''

    spring_damping_x = None
    '''Damping on the X axis 

    :type:  float in [0, inf], default 0.5 
    '''

    spring_damping_y = None
    '''Damping on the Y axis 

    :type:  float in [0, inf], default 0.5 
    '''

    spring_damping_z = None
    '''Damping on the Z axis 

    :type:  float in [0, inf], default 0.5 
    '''

    spring_stiffness_ang_x = None
    '''Stiffness on the X rotational axis 

    :type:  float in [0, inf], default 10.0 
    '''

    spring_stiffness_ang_y = None
    '''Stiffness on the Y rotational axis 

    :type:  float in [0, inf], default 10.0 
    '''

    spring_stiffness_ang_z = None
    '''Stiffness on the Z rotational axis 

    :type:  float in [0, inf], default 10.0 
    '''

    spring_stiffness_x = None
    '''Stiffness on the X axis 

    :type:  float in [0, inf], default 10.0 
    '''

    spring_stiffness_y = None
    '''Stiffness on the Y axis 

    :type:  float in [0, inf], default 10.0 
    '''

    spring_stiffness_z = None
    '''Stiffness on the Z axis 

    :type:  float in [0, inf], default 10.0 
    '''

    spring_type = None
    '''Which implementation of spring to use 

    :type:  enum in [‘SPRING1’, ‘SPRING2’], default ‘SPRING1’ 
    '''

    type = None
    '''Type of Rigid Body Constraint 

    :type:  enum in [‘FIXED’, ‘POINT’, ‘HINGE’, ‘SLIDER’, ‘PISTON’, ‘GENERIC’, ‘GENERIC_SPRING’, ‘MOTOR’], default ‘POINT’ 
    '''

    use_breaking = None
    '''Constraint can be broken if it receives an impulse above the threshold 

    :type:  boolean, default False 
    '''

    use_limit_ang_x = None
    '''Limit rotation around X axis 

    :type:  boolean, default False 
    '''

    use_limit_ang_y = None
    '''Limit rotation around Y axis 

    :type:  boolean, default False 
    '''

    use_limit_ang_z = None
    '''Limit rotation around Z axis 

    :type:  boolean, default False 
    '''

    use_limit_lin_x = None
    '''Limit translation on X axis 

    :type:  boolean, default False 
    '''

    use_limit_lin_y = None
    '''Limit translation on Y axis 

    :type:  boolean, default False 
    '''

    use_limit_lin_z = None
    '''Limit translation on Z axis 

    :type:  boolean, default False 
    '''

    use_motor_ang = None
    '''Enable angular motor 

    :type:  boolean, default False 
    '''

    use_motor_lin = None
    '''Enable linear motor 

    :type:  boolean, default False 
    '''

    use_override_solver_iterations = None
    '''Override the number of solver iterations for this constraint 

    :type:  boolean, default False 
    '''

    use_spring_ang_x = None
    '''Enable spring on X rotational axis 

    :type:  boolean, default False 
    '''

    use_spring_ang_y = None
    '''Enable spring on Y rotational axis 

    :type:  boolean, default False 
    '''

    use_spring_ang_z = None
    '''Enable spring on Z rotational axis 

    :type:  boolean, default False 
    '''

    use_spring_x = None
    '''Enable spring on X axis 

    :type:  boolean, default False 
    '''

    use_spring_y = None
    '''Enable spring on Y axis 

    :type:  boolean, default False 
    '''

    use_spring_z = None
    '''Enable spring on Z axis 

    :type:  boolean, default False 
    '''


class RigidBodyObject:
    '''Settings for object participating in Rigid Body Simulation '''

    angular_damping = None
    '''Amount of angular velocity that is lost over time 

    :type:  float in [0, 1], default 0.1 
    '''

    collision_collections = None
    '''Collision collections rigid body belongs to 

    :type:  boolean array of 20 items, default (False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False) 
    '''

    collision_margin = None
    '''Threshold of distance near surface where collisions are still considered (best results when non-zero) 

    :type:  float in [0, 1], default 0.04 
    '''

    collision_shape = None
    '''Collision Shape of object in Rigid Body Simulations 

    :type:  enum in [‘BOX’, ‘SPHERE’, ‘CAPSULE’, ‘CYLINDER’, ‘CONE’, ‘CONVEX_HULL’, ‘MESH’], default ‘BOX’ 
    '''

    deactivate_angular_velocity = None
    '''Angular Velocity below which simulation stops simulating object 

    :type:  float in [0, inf], default 0.5 
    '''

    deactivate_linear_velocity = None
    '''Linear Velocity below which simulation stops simulating object 

    :type:  float in [0, inf], default 0.4 
    '''

    enabled = None
    '''Rigid Body actively participates to the simulation 

    :type:  boolean, default False 
    '''

    friction = None
    '''Resistance of object to movement 

    :type:  float in [0, inf], default 0.5 
    '''

    kinematic = None
    '''Allow rigid body to be controlled by the animation system 

    :type:  boolean, default False 
    '''

    linear_damping = None
    '''Amount of linear velocity that is lost over time 

    :type:  float in [0, 1], default 0.04 
    '''

    mass = None
    '''How much the object ‘weighs’ irrespective of gravity 

    :type:  float in [0.001, inf], default 1.0 
    '''

    mesh_source = None
    '''Source of the mesh used to create collision shape 

    :type:  enum in [‘BASE’, ‘DEFORM’, ‘FINAL’], default ‘BASE’ 
    '''

    restitution = None
    '''Tendency of object to bounce after colliding with another (0 = stays still, 1 = perfectly elastic) 

    :type:  float in [0, inf], default 0.0 
    '''

    type = None
    '''Role of object in Rigid Body Simulations 

    :type:  enum in [‘ACTIVE’, ‘PASSIVE’], default ‘ACTIVE’ 
    '''

    use_deactivation = None
    '''Enable deactivation of resting rigid bodies (increases performance and stability but can cause glitches) 

    :type:  boolean, default True 
    '''

    use_deform = None
    '''Rigid body deforms during simulation 

    :type:  boolean, default False 
    '''

    use_margin = None
    '''Use custom collision margin (some shapes will have a visible gap around them) 

    :type:  boolean, default False 
    '''

    use_start_deactivated = None
    '''Deactivate rigid body at the start of the simulation 

    :type:  boolean, default False 
    '''


class RigidBodyWorld:
    '''Self-contained rigid body simulation environment and settings '''

    collection = None
    '''Collection containing objects participating in this simulation 

    :type:  Collection 
    '''

    constraints = None
    '''Collection containing rigid body constraint objects 

    :type:  Collection 
    '''

    effector_weights = None
    '''

    :type:  EffectorWeights, (readonly) 
    '''

    enabled = None
    '''Simulation will be evaluated 

    :type:  boolean, default False 
    '''

    point_cache = None
    '''

    :type:  PointCache, (readonly, never None) 
    '''

    solver_iterations = None
    '''Number of constraint solver iterations made per simulation step (higher values are more accurate but slower) 

    :type:  int in [1, 1000], default 10 
    '''

    steps_per_second = None
    '''Number of simulation steps taken per second (higher values are more accurate but slower) 

    :type:  int in [1, 32767], default 60 
    '''

    time_scale = None
    '''Change the speed of the simulation 

    :type:  float in [0, 100], default 1.0 
    '''

    use_split_impulse = None
    '''Reduce extra velocity that can build up when objects collide (lowers simulation stability a little so use only when necessary) 

    :type:  boolean, default False 
    '''

    def convex_sweep_test(self, object, start, end):
        '''Sweep test convex rigidbody against the current rigidbody world 

        :param object: Rigidbody object with a convex collision shape 
        :type object: Object, (never None)
        '''
        pass


class SCENE_UL_keying_set_paths:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class SPHFluidSettings:
    '''Settings for particle fluids physics '''

    buoyancy = None
    '''Artificial buoyancy force in negative gravity direction based on pressure differences inside the fluid 

    :type:  float in [0, 10], default 0.0 
    '''

    fluid_radius = None
    '''Fluid interaction radius 

    :type:  float in [0, 20], default 0.0 
    '''

    linear_viscosity = None
    '''Linear viscosity 

    :type:  float in [0, 100], default 0.0 
    '''

    plasticity = None
    '''How much the spring rest length can change after the elastic limit is crossed 

    :type:  float in [0, 100], default 0.0 
    '''

    repulsion = None
    '''How strongly the fluid tries to keep from clustering (factor of stiffness) 

    :type:  float in [0, 100], default 0.0 
    '''

    rest_density = None
    '''Fluid rest density 

    :type:  float in [0, 10000], default 0.0 
    '''

    rest_length = None
    '''Spring rest length (factor of particle radius) 

    :type:  float in [0, 2], default 0.0 
    '''

    solver = None
    '''The code used to calculate internal forces on particles 

    :type:  enum in [‘DDR’, ‘CLASSICAL’], default ‘DDR’ 
    '''

    spring_force = None
    '''Spring force 

    :type:  float in [0, 100], default 0.0 
    '''

    spring_frames = None
    '''Create springs for this number of frames since particles birth (0 is always) 

    :type:  int in [0, 100], default 0 
    '''

    stiff_viscosity = None
    '''Creates viscosity for expanding fluid 

    :type:  float in [0, 100], default 0.0 
    '''

    stiffness = None
    '''How incompressible the fluid is (speed of sound) 

    :type:  float in [0, 1000], default 0.0 
    '''

    use_factor_density = None
    '''Density is calculated as a factor of default density (depends on particle size) 

    :type:  boolean, default False 
    '''

    use_factor_radius = None
    '''Interaction radius is a factor of 4 * particle size 

    :type:  boolean, default False 
    '''

    use_factor_repulsion = None
    '''Repulsion is a factor of stiffness 

    :type:  boolean, default False 
    '''

    use_factor_rest_length = None
    '''Spring rest length is a factor of 2 * particle size 

    :type:  boolean, default False 
    '''

    use_factor_stiff_viscosity = None
    '''Stiff viscosity is a factor of normal viscosity 

    :type:  boolean, default False 
    '''

    use_initial_rest_length = None
    '''Use the initial length as spring rest length instead of 2 * particle size 

    :type:  boolean, default False 
    '''

    use_viscoelastic_springs = None
    '''Use viscoelastic springs instead of Hooke’s springs 

    :type:  boolean, default False 
    '''

    yield_ratio = None
    '''How much the spring has to be stretched/compressed in order to change it’s rest length 

    :type:  float in [0, 1], default 0.0 
    '''


class Scene:
    '''Scene data-block, consisting in objects and defining time and render related settings '''

    active_clip = None
    '''Active movie clip used for constraints and viewport drawing 

    :type:  MovieClip 
    '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    audio_distance_model = None
    '''Distance model for distance attenuation calculation 

    :type:  enum in [‘NONE’, ‘INVERSE’, ‘INVERSE_CLAMPED’, ‘LINEAR’, ‘LINEAR_CLAMPED’, ‘EXPONENT’, ‘EXPONENT_CLAMPED’], default ‘NONE’ 
    '''

    audio_doppler_factor = None
    '''Pitch factor for Doppler effect calculation 

    :type:  float in [0, inf], default 0.0 
    '''

    audio_doppler_speed = None
    '''Speed of sound for Doppler effect calculation 

    :type:  float in [0.01, inf], default 0.0 
    '''

    audio_volume = None
    '''Audio volume 

    :type:  float in [0, 100], default 0.0 
    '''

    background_set = None
    '''Background set scene 

    :type:  Scene 
    '''

    camera = None
    '''Active camera, used for rendering the scene 

    :type:  Object 
    '''

    collection = None
    '''Scene master collection that objects and other collections in the scene 

    :type:  Collection, (readonly, never None) 
    '''

    cursor = None
    '''

    :type:  View3DCursor, (readonly, never None) 
    '''

    cycles = None
    '''Cycles render settings 

    :type:  CyclesRenderSettings, (readonly) 
    '''

    cycles_curves = None
    '''Cycles hair rendering settings 

    :type:  CyclesCurveRenderSettings, (readonly) 
    '''

    display = None
    '''Scene display settings for 3d viewport 

    :type:  SceneDisplay, (readonly) 
    '''

    display_settings = None
    '''Settings of device saved image would be displayed on 

    :type:  ColorManagedDisplaySettings, (readonly) 
    '''

    eevee = None
    '''EEVEE settings for the scene 

    :type:  SceneEEVEE, (readonly) 
    '''

    frame_current = None
    '''Current Frame, to update animation data from python frame_set() instead 

    :type:  int in [-1048574, 1048574], default 0 
    '''

    frame_current_final = None
    '''Current frame with subframe and time remapping applied 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0, (readonly) 
    '''

    frame_end = None
    '''Final frame of the playback/rendering range 

    :type:  int in [0, 1048574], default 250 
    '''

    frame_float = None
    '''

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    frame_preview_end = None
    '''Alternative end frame for UI playback 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_preview_start = None
    '''Alternative start frame for UI playback 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_start = None
    '''First frame of the playback/rendering range 

    :type:  int in [0, 1048574], default 1 
    '''

    frame_step = None
    '''Number of frames to skip forward while rendering/playing back each frame 

    :type:  int in [0, 1048574], default 0 
    '''

    frame_subframe = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    gravity = None
    '''Constant acceleration in a given direction 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    grease_pencil = None
    '''Grease Pencil data-block used for annotations in the 3D view 

    :type:  GreasePencil 
    '''

    is_nla_tweakmode = None
    '''Whether there is any action referenced by NLA being edited (strictly read-only) 

    :type:  boolean, default False, (readonly) 
    '''

    keying_sets = None
    '''Absolute Keying Sets for this Scene 

    :type:  KeyingSets bpy_prop_collection of KeyingSet, (readonly) 
    '''

    keying_sets_all = None
    '''All Keying Sets available for use (Builtins and Absolute Keying Sets for this Scene) 

    :type:  KeyingSetsAll bpy_prop_collection of KeyingSet, (readonly) 
    '''

    lock_frame_selection_to_range = None
    '''Don’t allow frame to be selected with mouse outside of frame range 

    :type:  boolean, default False 
    '''

    node_tree = None
    '''Compositing node tree 

    :type:  NodeTree, (readonly) 
    '''

    objects = None
    '''

    :type:  SceneObjects bpy_prop_collection of Object, (readonly) 
    '''

    render = None
    '''

    :type:  RenderSettings, (readonly, never None) 
    '''

    rigidbody_world = None
    '''

    :type:  RigidBodyWorld, (readonly) 
    '''

    safe_areas = None
    '''

    :type:  DisplaySafeAreas, (readonly, never None) 
    '''

    sequence_editor = None
    '''

    :type:  SequenceEditor, (readonly) 
    '''

    sequencer_colorspace_settings = None
    '''Settings of color space sequencer is working in 

    :type:  ColorManagedSequencerColorspaceSettings, (readonly) 
    '''

    show_keys_from_selected_only = None
    '''Consider keyframes for active Object and/or its selected bones only (in timeline and when jumping between keyframes) 

    :type:  boolean, default False 
    '''

    show_subframe = None
    '''Show current scene subframe and allow set it using interface tools 

    :type:  boolean, default False 
    '''

    sync_mode = None
    '''How to sync playback 

    :type:  enum in [‘NONE’, ‘FRAME_DROP’, ‘AUDIO_SYNC’], default ‘AUDIO_SYNC’ 
    '''

    timeline_markers = None
    '''Markers used in all timelines for the current scene 

    :type:  TimelineMarkers bpy_prop_collection of TimelineMarker, (readonly) 
    '''

    tool_settings = None
    '''

    :type:  ToolSettings, (readonly, never None) 
    '''

    transform_orientation_slots = None
    '''

    :type:  bpy_prop_collection of TransformOrientationSlot, (readonly) 
    '''

    unit_settings = None
    '''Unit editing settings 

    :type:  UnitSettings, (readonly, never None) 
    '''

    use_audio = None
    '''Play back of audio from Sequence Editor will be muted 

    :type:  boolean, default False 
    '''

    use_audio_scrub = None
    '''Play audio from Sequence Editor while scrubbing 

    :type:  boolean, default False 
    '''

    use_gravity = None
    '''Use global gravity for all dynamics 

    :type:  boolean, default False 
    '''

    use_nodes = None
    '''Enable the compositing node tree 

    :type:  boolean, default False 
    '''

    use_preview_range = None
    '''Use an alternative start/end frame range for animation playback and OpenGL renders instead of the Render properties start/end frame range 

    :type:  boolean, default False 
    '''

    use_stamp_note = None
    '''User defined note for the render stamping 

    :type:  string, default “”, (never None) 
    '''

    view_layers = None
    '''

    :type:  ViewLayers bpy_prop_collection of ViewLayer, (readonly) 
    '''

    view_settings = None
    '''Color management settings applied on image before saving 

    :type:  ColorManagedViewSettings, (readonly) 
    '''

    world = None
    '''World used for rendering the scene 

    :type:  World 
    '''

    def statistics(self, view_layer):
        '''statistics 

        :param view_layer: Active layer 
        :type view_layer: ViewLayer, (never None)
        :rtype: string, (never None) 
        :return:  Statistics 
        '''
        pass

    def frame_set(self, frame, subframe=0.0):
        '''Set scene frame updating all objects immediately 

        :param frame: Frame number to set 
        :type frame: int in [-1048574, 1048574]
        :param subframe: Sub-frame time, between 0.0 and 1.0 
        :type subframe: float in [0, 1], (optional)
        '''
        pass

    def update(self):
        '''Update data tagged to be updated from previous access to data or operators 

        '''
        pass

    def uvedit_aspect(self, object):
        '''Get uv aspect for current object 

        :param object: Object 
        :type object: Object, (never None)
        :rtype: float array of 2 items in [0, inf] 
        :return:  aspect 
        '''
        pass

    def ray_cast(self, view_layer, origin, direction, distance=1.70141e+38):
        '''Cast a ray onto in object space 

        :param view_layer: Scene Layer 
        :type view_layer: ViewLayer, (never None)
        :param distance: Maximum distance 
        :type distance: float in [0, inf], (optional)
        '''
        pass

    def sequence_editor_create(self):
        '''Ensure sequence editor is valid in this scene 

        :rtype: SequenceEditor 
        :return:  New sequence editor data or NULL 
        '''
        pass

    def sequence_editor_clear(self):
        '''Clear sequence editor in this scene 

        '''
        pass

    def alembic_export(self,
                       filepath,
                       frame_start=1,
                       frame_end=1,
                       xform_samples=1,
                       geom_samples=1,
                       shutter_open=0.0,
                       shutter_close=1.0,
                       selected_only=False,
                       uvs=True,
                       normals=True,
                       vcolors=False,
                       apply_subdiv=True,
                       flatten=False,
                       visible_layers_only=False,
                       renderable_only=False,
                       face_sets=False,
                       subdiv_schema=False,
                       export_hair=True,
                       export_particles=True,
                       compression_type='OGAWA',
                       packuv=False,
                       scale=1.0,
                       triangulate=False,
                       quad_method='BEAUTY',
                       ngon_method='BEAUTY'):
        '''Export to Alembic file (deprecated, use the Alembic export operator) 

        :param filepath: File Path, File path to write Alembic file 
        :type filepath: string, (never None)
        :param frame_start: Start, Start Frame 
        :type frame_start: int in [-inf, inf], (optional)
        :param frame_end: End, End Frame 
        :type frame_end: int in [-inf, inf], (optional)
        :param xform_samples: Xform samples, Transform samples per frame 
        :type xform_samples: int in [1, 128], (optional)
        :param geom_samples: Geom samples, Geometry samples per frame 
        :type geom_samples: int in [1, 128], (optional)
        :param shutter_open: Shutter open 
        :type shutter_open: float in [-1, 1], (optional)
        :param shutter_close: Shutter close 
        :type shutter_close: float in [-1, 1], (optional)
        :param selected_only: Selected only, Export only selected objects 
        :type selected_only: boolean, (optional)
        :param uvs: UVs, Export UVs 
        :type uvs: boolean, (optional)
        :param normals: Normals, Export normals 
        :type normals: boolean, (optional)
        :param vcolors: Vertex colors, Export vertex colors 
        :type vcolors: boolean, (optional)
        :param apply_subdiv: Subsurfs as meshes, Export subdivision surfaces as meshes 
        :type apply_subdiv: boolean, (optional)
        :param flatten: Flatten hierarchy, Flatten hierarchy 
        :type flatten: boolean, (optional)
        :param visible_layers_only: Visible layers only, Export only objects in visible layers 
        :type visible_layers_only: boolean, (optional)
        :param renderable_only: Renderable objects only, Export only objects marked renderable in the outliner 
        :type renderable_only: boolean, (optional)
        :param face_sets: Facesets, Export face sets 
        :type face_sets: boolean, (optional)
        :param subdiv_schema: Use Alembic subdivision Schema, Use Alembic subdivision Schema 
        :type subdiv_schema: boolean, (optional)
        :param export_hair: Export Hair, Exports hair particle systems as animated curves 
        :type export_hair: boolean, (optional)
        :param export_particles: Export Particles, Exports non-hair particle systems 
        :type export_particles: boolean, (optional)
        :param compression_type: Compression 
        :type compression_type: enum in ['OGAWA', 'HDF5'], (optional)
        :param packuv: Export with packed UV islands, Export with packed UV islands 
        :type packuv: boolean, (optional)
        :param scale: Scale, Value by which to enlarge or shrink the objects with respect to the world’s origin 
        :type scale: float in [0.0001, 1000], (optional)
        :param triangulate: Triangulate, Export Polygons (Quads & NGons) as Triangles 
        :type triangulate: boolean, (optional)
        :param quad_method: Quad Method, Method for splitting the quads into trianglesBEAUTY Beauty , Split the quads in nice triangles, slower method.FIXED Fixed, Split the quads on the first and third vertices.FIXED_ALTERNATE Fixed Alternate, Split the quads on the 2nd and 4th vertices.SHORTEST_DIAGONAL Shortest Diagonal, Split the quads based on the distance between the vertices. 
        :type quad_method: enum in ['BEAUTY', 'FIXED', 'FIXED_ALTERNATE', 'SHORTEST_DIAGONAL'], (optional)
        :param ngon_method: Polygon Method, Method for splitting the polygons into trianglesBEAUTY Beauty , Split the quads in nice triangles, slower method.FIXED Fixed, Split the quads on the first and third vertices.FIXED_ALTERNATE Fixed Alternate, Split the quads on the 2nd and 4th vertices.SHORTEST_DIAGONAL Shortest Diagonal, Split the quads based on the distance between the vertices. 
        :type ngon_method: enum in ['BEAUTY', 'FIXED', 'FIXED_ALTERNATE', 'SHORTEST_DIAGONAL'], (optional)
        '''
        pass


class SceneDisplay:
    '''Scene display settings for 3d viewport '''

    light_direction = None
    '''Direction of the light for shadows and highlights 

    :type:  float array of 3 items in [-inf, inf], default (-0.57735, -0.57735, 0.57735) 
    '''

    matcap_ssao_attenuation = None
    '''Attenuation constant 

    :type:  float in [1, 100000], default 1.0 
    '''

    matcap_ssao_distance = None
    '''Distance of object that contribute to the Cavity/Edge effect 

    :type:  float in [0, 100000], default 0.2 
    '''

    matcap_ssao_samples = None
    '''Number of samples 

    :type:  int in [1, 500], default 16 
    '''

    shading = None
    '''Shading settings for OpenGL render engine 

    :type:  View3DShading, (readonly) 
    '''

    shadow_focus = None
    '''Shadow factor hardness 

    :type:  float in [0, 1], default 0.0 
    '''

    shadow_shift = None
    '''Shadow termination angle 

    :type:  float in [0, 1], default 0.1 
    '''


class SceneEEVEE:
    '''Scene display settings for 3d viewport '''

    bloom_clamp = None
    '''Maximum intensity a bloom pixel can have (0 to disabled) 

    :type:  float in [0, 100000], default 0.0 
    '''

    bloom_color = None
    '''Color applied to the bloom effect 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''

    bloom_intensity = None
    '''Blend factor 

    :type:  float in [0, 10000], default 0.05 
    '''

    bloom_knee = None
    '''Makes transition between under/over-threshold gradual 

    :type:  float in [0, 1], default 0.5 
    '''

    bloom_radius = None
    '''Bloom spread distance 

    :type:  float in [0, 100], default 6.5 
    '''

    bloom_threshold = None
    '''Filters out pixels under this level of brightness 

    :type:  float in [0, 100000], default 0.8 
    '''

    bokeh_max_size = None
    '''Max size of the bokeh shape for the depth of field (lower is faster) 

    :type:  float in [0, 2000], default 100.0 
    '''

    bokeh_threshold = None
    '''Brightness threshold for using sprite base depth of field 

    :type:  float in [0, 100000], default 1.0 
    '''

    gi_auto_bake = None
    '''Auto bake indirect lighting when editing probes 

    :type:  boolean, default False 
    '''

    gi_cache_info = None
    '''Info on current cache status 

    :type:  string, default “”, (readonly, never None) 
    '''

    gi_cubemap_display_size = None
    '''Size of the cubemap spheres to debug captured light 

    :type:  float in [0.05, 10], default 0.3 
    '''

    gi_cubemap_resolution = None
    '''Size of every cubemaps 

    :type:  enum in [‘64’, ‘128’, ‘256’, ‘512’, ‘1024’, ‘2048’, ‘4096’], default ‘512’ 
    '''

    gi_diffuse_bounces = None
    '''Number of time the light is reinjected inside light grids, 0 disable indirect diffuse light 

    :type:  int in [0, inf], default 3 
    '''

    gi_filter_quality = None
    '''Take more samples during cubemap filtering to remove artifacts 

    :type:  float in [1, 8], default 1.0 
    '''

    gi_glossy_clamp = None
    '''Clamp pixel intensity to reduce noise inside glossy reflections from reflection cubemaps (0 to disabled) 

    :type:  float in [0, inf], default 0.0 
    '''

    gi_irradiance_display_size = None
    '''Size of the irradiance sample spheres to debug captured light 

    :type:  float in [0.05, 10], default 0.1 
    '''

    gi_irradiance_smoothing = None
    '''Smoother irradiance interpolation but introduce light bleeding 

    :type:  float in [0, inf], default 0.1 
    '''

    gi_show_cubemaps = None
    '''Display captured cubemaps in the viewport 

    :type:  boolean, default False 
    '''

    gi_show_irradiance = None
    '''Display irradiance samples in the viewport 

    :type:  boolean, default False 
    '''

    gi_visibility_resolution = None
    '''Size of the shadow map applied to each irradiance sample 

    :type:  enum in [‘8’, ‘16’, ‘32’, ‘64’], default ‘32’ 
    '''

    gtao_distance = None
    '''Distance of object that contribute to the ambient occlusion effect 

    :type:  float in [0, 100000], default 0.2 
    '''

    gtao_factor = None
    '''Factor for ambient occlusion blending 

    :type:  float in [0, inf], default 1.0 
    '''

    gtao_quality = None
    '''Precision of the horizon search 

    :type:  float in [0, 1], default 0.25 
    '''

    light_threshold = None
    '''Minimum light intensity for a light to contribute to the lighting 

    :type:  float in [0, inf], default 0.01 
    '''

    motion_blur_samples = None
    '''Number of samples to take with motion blur 

    :type:  int in [1, 64], default 8 
    '''

    motion_blur_shutter = None
    '''Time taken in frames between shutter open and close 

    :type:  float in [0, inf], default 1.0 
    '''

    overscan_size = None
    '''Percentage of render size to add as overscan to the internal render buffers 

    :type:  float in [0, 50], default 3.0 
    '''

    shadow_cascade_size = None
    '''Size of sun light shadow maps 

    :type:  enum in [‘64’, ‘128’, ‘256’, ‘512’, ‘1024’, ‘2048’, ‘4096’], default ‘1024’ 
    '''

    shadow_cube_size = None
    '''Size of point and area light shadow maps 

    :type:  enum in [‘64’, ‘128’, ‘256’, ‘512’, ‘1024’, ‘2048’, ‘4096’], default ‘512’ 
    '''

    shadow_method = None
    '''Technique use to compute the shadows 

    :type:  enum in [‘ESM’, ‘VSM’], default ‘ESM’ 
    '''

    ssr_border_fade = None
    '''Screen percentage used to fade the SSR 

    :type:  float in [0, 0.5], default 0.075 
    '''

    ssr_firefly_fac = None
    '''Clamp pixel intensity to remove noise (0 to disabled) 

    :type:  float in [0, inf], default 10.0 
    '''

    ssr_max_roughness = None
    '''Do not raytrace reflections for roughness above this value 

    :type:  float in [0, 1], default 0.5 
    '''

    ssr_quality = None
    '''Precision of the screen space raytracing 

    :type:  float in [0, 1], default 0.25 
    '''

    ssr_thickness = None
    '''Pixel thickness used to detect intersection 

    :type:  float in [1e-06, inf], default 0.2 
    '''

    sss_jitter_threshold = None
    '''Rotate samples that are below this threshold 

    :type:  float in [0, 1], default 0.3 
    '''

    sss_samples = None
    '''Number of samples to compute the scattering effect 

    :type:  int in [1, 32], default 7 
    '''

    taa_render_samples = None
    '''Number of samples per pixels for rendering 

    :type:  int in [1, inf], default 64 
    '''

    taa_samples = None
    '''Number of samples, unlimited if 0 

    :type:  int in [0, inf], default 16 
    '''

    use_bloom = None
    '''High brightness pixels generate a glowing effect 

    :type:  boolean, default False 
    '''

    use_dof = None
    '''Enable depth of field using the values from the active camera 

    :type:  boolean, default False 
    '''

    use_gtao = None
    '''Enable ambient occlusion to simulate medium scale indirect shadowing 

    :type:  boolean, default False 
    '''

    use_gtao_bent_normals = None
    '''Compute main non occluded direction to sample the environment 

    :type:  boolean, default True 
    '''

    use_gtao_bounce = None
    '''An approximation to simulate light bounces giving less occlusion on brighter objects 

    :type:  boolean, default True 
    '''

    use_motion_blur = None
    '''Enable motion blur effect (only in camera view) 

    :type:  boolean, default False 
    '''

    use_overscan = None
    '''Internally render past the image border to avoid screen-space effects disappearing 

    :type:  boolean, default False 
    '''

    use_shadow_high_bitdepth = None
    '''Use 32bit shadows 

    :type:  boolean, default False 
    '''

    use_soft_shadows = None
    '''Randomize shadowmaps origin to create soft shadows 

    :type:  boolean, default False 
    '''

    use_ssr = None
    '''Enable screen space reflection 

    :type:  boolean, default False 
    '''

    use_ssr_halfres = None
    '''Raytrace at a lower resolution 

    :type:  boolean, default True 
    '''

    use_ssr_refraction = None
    '''Enable screen space Refractions 

    :type:  boolean, default False 
    '''

    use_sss = None
    '''Enable screen space subsurface scattering 

    :type:  boolean, default False 
    '''

    use_sss_separate_albedo = None
    '''Avoid albedo being blurred by the subsurface scattering but uses more video memory 

    :type:  boolean, default False 
    '''

    use_taa_reprojection = None
    '''Denoise image using temporal reprojection (can leave some ghosting) 

    :type:  boolean, default True 
    '''

    use_volumetric = None
    '''Enable scattering and absorbance of volumetric material 

    :type:  boolean, default False 
    '''

    use_volumetric_lights = None
    '''Enable scene light interactions with volumetrics 

    :type:  boolean, default True 
    '''

    use_volumetric_shadows = None
    '''Generate shadows from volumetric material (Very expensive) 

    :type:  boolean, default False 
    '''

    volumetric_end = None
    '''End distance of the volumetric effect 

    :type:  float in [1e-06, inf], default 100.0 
    '''

    volumetric_light_clamp = None
    '''Maximum light contribution, reducing noise 

    :type:  float in [0, inf], default 0.0 
    '''

    volumetric_sample_distribution = None
    '''Distribute more samples closer to the camera 

    :type:  float in [0, 1], default 0.8 
    '''

    volumetric_samples = None
    '''Number of samples to compute volumetric effects 

    :type:  int in [1, 256], default 64 
    '''

    volumetric_shadow_samples = None
    '''Number of samples to compute volumetric shadowing 

    :type:  int in [1, 128], default 16 
    '''

    volumetric_start = None
    '''Start distance of the volumetric effect 

    :type:  float in [1e-06, inf], default 0.1 
    '''

    volumetric_tile_size = None
    '''Control the quality of the volumetric effects (lower size increase vram usage and quality) 

    :type:  enum in [‘2’, ‘4’, ‘8’, ‘16’], default ‘8’ 
    '''


class SceneObjects:
    '''All the of scene objects '''

    pass


class SceneRenderView:
    '''Render viewpoint for 3D stereo and multiview rendering '''

    camera_suffix = None
    '''Suffix to identify the cameras to use, and added to the render images for this view 

    :type:  string, default “”, (never None) 
    '''

    file_suffix = None
    '''Suffix added to the render images for this view 

    :type:  string, default “”, (never None) 
    '''

    name = None
    '''Render view name 

    :type:  string, default “”, (never None) 
    '''

    use = None
    '''Disable or enable the render view 

    :type:  boolean, default False 
    '''


class SceneSequence:
    '''Sequence strip to used the rendered image of a scene '''

    alpha_mode = None
    '''Representation of alpha information in the RGBA pixels 

    :type:  enum in [‘STRAIGHT’, ‘PREMUL’], default ‘STRAIGHT’ 
    '''

    animation_offset_end = None
    '''Animation end offset (trim end) 

    :type:  int in [0, inf], default 0 
    '''

    animation_offset_start = None
    '''Animation start offset (trim start) 

    :type:  int in [0, inf], default 0 
    '''

    color_multiply = None
    '''

    :type:  float in [0, 20], default 1.0 
    '''

    color_saturation = None
    '''Adjust the intensity of the input’s color 

    :type:  float in [0, 20], default 1.0 
    '''

    crop = None
    '''

    :type:  SequenceCrop, (readonly) 
    '''

    fps = None
    '''Frames per second 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    proxy = None
    '''

    :type:  SequenceProxy, (readonly) 
    '''

    scene = None
    '''Scene that this sequence uses 

    :type:  Scene 
    '''

    scene_camera = None
    '''Override the scenes active camera 

    :type:  Object 
    '''

    strobe = None
    '''Only display every nth frame 

    :type:  float in [1, 30], default 0.0 
    '''

    transform = None
    '''

    :type:  SequenceTransform, (readonly) 
    '''

    use_crop = None
    '''Crop image before processing 

    :type:  boolean, default False 
    '''

    use_deinterlace = None
    '''Remove fields from video movies 

    :type:  boolean, default False 
    '''

    use_flip_x = None
    '''Flip on the X axis 

    :type:  boolean, default False 
    '''

    use_flip_y = None
    '''Flip on the Y axis 

    :type:  boolean, default False 
    '''

    use_float = None
    '''Convert input to float data 

    :type:  boolean, default False 
    '''

    use_grease_pencil = None
    '''Show Grease Pencil strokes in OpenGL previews 

    :type:  boolean, default False 
    '''

    use_proxy = None
    '''Use a preview proxy and/or timecode index for this strip 

    :type:  boolean, default False 
    '''

    use_reverse_frames = None
    '''Reverse frame order 

    :type:  boolean, default False 
    '''

    use_sequence = None
    '''Use scenes sequence strips directly, instead of rendering 

    :type:  boolean, default False 
    '''

    use_translation = None
    '''Translate image before processing 

    :type:  boolean, default False 
    '''


class Scopes:
    '''Scopes for statistical view of an image '''

    accuracy = None
    '''Proportion of original image source pixel lines to sample 

    :type:  float in [0, 100], default 0.0 
    '''

    histogram = None
    '''Histogram for viewing image statistics 

    :type:  Histogram, (readonly) 
    '''

    use_full_resolution = None
    '''Sample every pixel of the image 

    :type:  boolean, default False 
    '''

    vectorscope_alpha = None
    '''Opacity of the points 

    :type:  float in [0, 1], default 0.0 
    '''

    waveform_alpha = None
    '''Opacity of the points 

    :type:  float in [0, 1], default 0.0 
    '''

    waveform_mode = None
    '''

    :type:  enum in [‘LUMA’, ‘PARADE’, ‘YCBCR601’, ‘YCBCR709’, ‘YCBCRJPG’, ‘RGB’], default ‘LUMA’ 
    '''


class Screen:
    '''Screen data-block, defining the layout of areas in a window '''

    areas = None
    '''Areas the screen is subdivided into 

    :type:  bpy_prop_collection of Area, (readonly) 
    '''

    is_animation_playing = None
    '''Animation playback is active 

    :type:  boolean, default False, (readonly) 
    '''

    show_fullscreen = None
    '''An area is maximized, filling this screen 

    :type:  boolean, default False, (readonly) 
    '''

    show_statusbar = None
    '''Show status bar 

    :type:  boolean, default False 
    '''

    show_topbar = None
    '''Show top bar with tool settings 

    :type:  boolean, default False 
    '''

    use_follow = None
    '''Follow current frame in editors 

    :type:  boolean, default False 
    '''

    use_play_3d_editors = None
    '''

    :type:  boolean, default False 
    '''

    use_play_animation_editors = None
    '''

    :type:  boolean, default False 
    '''

    use_play_clip_editors = None
    '''

    :type:  boolean, default False 
    '''

    use_play_image_editors = None
    '''

    :type:  boolean, default False 
    '''

    use_play_node_editors = None
    '''

    :type:  boolean, default False 
    '''

    use_play_properties_editors = None
    '''

    :type:  boolean, default False 
    '''

    use_play_sequence_editors = None
    '''

    :type:  boolean, default False 
    '''

    use_play_top_left_3d_editor = None
    '''

    :type:  boolean, default False 
    '''


class ScrewModifier:
    '''Revolve edges '''

    angle = None
    '''Angle of revolution 

    :type:  float in [-inf, inf], default 0.0 
    '''

    axis = None
    '''Screw axis 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    iterations = None
    '''Number of times to apply the screw operation 

    :type:  int in [1, 10000], default 0 
    '''

    merge_threshold = None
    '''Limit below which to merge vertices 

    :type:  float in [0, inf], default 0.0 
    '''

    object = None
    '''Object to define the screw axis 

    :type:  Object 
    '''

    render_steps = None
    '''Number of steps in the revolution 

    :type:  int in [2, 10000], default 0 
    '''

    screw_offset = None
    '''Offset the revolution along its axis 

    :type:  float in [-inf, inf], default 0.0 
    '''

    steps = None
    '''Number of steps in the revolution 

    :type:  int in [2, 10000], default 0 
    '''

    use_merge_vertices = None
    '''Merge adjacent vertices (screw offset must be zero) 

    :type:  boolean, default False 
    '''

    use_normal_calculate = None
    '''Calculate the order of edges (needed for meshes, but not curves) 

    :type:  boolean, default False 
    '''

    use_normal_flip = None
    '''Flip normals of lathed faces 

    :type:  boolean, default False 
    '''

    use_object_screw_offset = None
    '''Use the distance between the objects to make a screw 

    :type:  boolean, default False 
    '''

    use_smooth_shade = None
    '''Output faces with smooth shading rather than flat shaded 

    :type:  boolean, default False 
    '''

    use_stretch_u = None
    '''Stretch the U coordinates between 0-1 when UV’s are present 

    :type:  boolean, default False 
    '''

    use_stretch_v = None
    '''Stretch the V coordinates between 0-1 when UV’s are present 

    :type:  boolean, default False 
    '''


class Sculpt:
    constant_detail_resolution = None
    '''Maximum edge length for dynamic topology sculpting (as divisor of blender unit - higher value means smaller edge length) 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    detail_percent = None
    '''Maximum edge length for dynamic topology sculpting (in brush percenage) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    detail_refine_method = None
    '''In dynamic-topology mode, how to add or remove mesh detail 

    :type:  enum in [‘SUBDIVIDE’, ‘COLLAPSE’, ‘SUBDIVIDE_COLLAPSE’], default ‘SUBDIVIDE’ 
    '''

    detail_size = None
    '''Maximum edge length for dynamic topology sculpting (in pixels) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    detail_type_method = None
    '''In dynamic-topology mode, how mesh detail size is calculated 

    :type:  enum in [‘RELATIVE’, ‘CONSTANT’, ‘BRUSH’, ‘MANUAL’], default ‘RELATIVE’ 
    '''

    gravity = None
    '''Amount of gravity after each dab 

    :type:  float in [0, 1], default 0.0 
    '''

    gravity_object = None
    '''Object whose Z axis defines orientation of gravity 

    :type:  Object 
    '''

    lock_x = None
    '''Disallow changes to the X axis of vertices 

    :type:  boolean, default False 
    '''

    lock_y = None
    '''Disallow changes to the Y axis of vertices 

    :type:  boolean, default False 
    '''

    lock_z = None
    '''Disallow changes to the Z axis of vertices 

    :type:  boolean, default False 
    '''

    radial_symmetry = None
    '''Number of times to copy strokes across the surface 

    :type:  int array of 3 items in [1, 64], default (1, 1, 1) 
    '''

    show_diffuse_color = None
    '''Show diffuse color of object and overlay sculpt mask on top of it 

    :type:  boolean, default False 
    '''

    show_mask = None
    '''Show mask as overlay on object 

    :type:  boolean, default False 
    '''

    symmetrize_direction = None
    '''Source and destination for symmetrize operator 

    :type:  enum in [‘NEGATIVE_X’, ‘POSITIVE_X’, ‘NEGATIVE_Y’, ‘POSITIVE_Y’, ‘NEGATIVE_Z’, ‘POSITIVE_Z’], default ‘NEGATIVE_X’ 
    '''

    use_deform_only = None
    '''Use only deformation modifiers (temporary disable all constructive modifiers except multi-resolution) 

    :type:  boolean, default False 
    '''

    use_smooth_shading = None
    '''Show faces in dynamic-topology mode with smooth shading rather than flat shaded 

    :type:  boolean, default False 
    '''

    use_threaded = None
    '''Take advantage of multiple CPU cores to improve sculpting performance 

    :type:  boolean, default False 
    '''


class SelectedUvElement:
    element_index = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    face_index = None
    '''

    :type:  int in [0, inf], default 0 
    '''


class Sequence:
    '''Sequence strip in the sequence editor '''

    blend_alpha = None
    '''Percentage of how much the strip’s colors affect other strips 

    :type:  float in [0, 1], default 0.0 
    '''

    blend_type = None
    '''Method for controlling how the strip combines with other strips 

    :type:  enum in [‘REPLACE’, ‘CROSS’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LINEAR_BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘HARD_LIGHT’, ‘VIVID_LIGHT’, ‘LINEAR_LIGHT’, ‘PIN_LIGHT’, ‘DIFFERENCE’, ‘EXCLUSION’, ‘SUBTRACT’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’, ‘ALPHA_OVER’, ‘ALPHA_UNDER’, ‘GAMMA_CROSS’, ‘OVER_DROP’], default ‘REPLACE’ 
    '''

    channel = None
    '''Y position of the sequence strip 

    :type:  int in [1, 32], default 0 
    '''

    effect_fader = None
    '''Custom fade value 

    :type:  float in [0, 1], default 0.0 
    '''

    frame_duration = None
    '''The length of the contents of this strip before the handles are applied 

    :type:  int in [1, 1048574], default 0, (readonly) 
    '''

    frame_final_duration = None
    '''The length of the contents of this strip after the handles are applied 

    :type:  int in [1, 1048574], default 0 
    '''

    frame_final_end = None
    '''End frame displayed in the sequence editor after offsets are applied 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_final_start = None
    '''Start frame displayed in the sequence editor after offsets are applied, setting this is equivalent to moving the handle, not the actual start frame 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_offset_end = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''

    frame_offset_start = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''

    frame_start = None
    '''X position where the strip begins 

    :type:  int in [-inf, inf], default 0 
    '''

    frame_still_end = None
    '''

    :type:  int in [0, 1048574], default 0 
    '''

    frame_still_start = None
    '''

    :type:  int in [0, 1048574], default 0 
    '''

    lock = None
    '''Lock strip so that it cannot be transformed 

    :type:  boolean, default False 
    '''

    modifiers = None
    '''Modifiers affecting this strip 

    :type:  SequenceModifiers bpy_prop_collection of SequenceModifier, (readonly) 
    '''

    mute = None
    '''Disable strip so that it cannot be viewed in the output 

    :type:  boolean, default False 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    select = None
    '''

    :type:  boolean, default False 
    '''

    select_left_handle = None
    '''

    :type:  boolean, default False 
    '''

    select_right_handle = None
    '''

    :type:  boolean, default False 
    '''

    speed_factor = None
    '''Multiply the current speed of the sequence with this number or remap current frame to this frame 

    :type:  float in [-inf, inf], default 0.0 
    '''

    type = None
    '''

    :type:  enum in [‘IMAGE’, ‘META’, ‘SCENE’, ‘MOVIE’, ‘MOVIECLIP’, ‘MASK’, ‘SOUND’, ‘CROSS’, ‘ADD’, ‘SUBTRACT’, ‘ALPHA_OVER’, ‘ALPHA_UNDER’, ‘GAMMA_CROSS’, ‘MULTIPLY’, ‘OVER_DROP’, ‘WIPE’, ‘GLOW’, ‘TRANSFORM’, ‘COLOR’, ‘SPEED’, ‘MULTICAM’, ‘ADJUSTMENT’, ‘GAUSSIAN_BLUR’, ‘TEXT’, ‘COLORMIX’], default ‘IMAGE’, (readonly) 
    '''

    use_default_fade = None
    '''Fade effect using the built-in default (usually make transition as long as effect strip) 

    :type:  boolean, default False 
    '''

    use_linear_modifiers = None
    '''Calculate modifiers in linear space instead of sequencer’s space 

    :type:  boolean, default False 
    '''

    def update(self, data=False):
        '''Update the strip dimensions 

        :param data: Data, Update strip data 
        :type data: boolean, (optional)
        '''
        pass

    def strip_elem_from_frame(self, frame):
        '''Return the strip element from a given frame or None 

        :param frame: Frame, The frame to get the strip element from 
        :type frame: int in [-1048574, 1048574]
        :rtype: SequenceElement 
        :return:  strip element of the current frame 
        '''
        pass

    def swap(self, other):
        '''swap 

        :param other: Other 
        :type other: Sequence, (never None)
        '''
        pass


class SequenceColorBalance:
    '''Color balance parameters for a sequence strip '''

    pass


class SequenceColorBalanceData:
    '''Color balance parameters for a sequence strip and it’s modifiers '''

    gain = None
    '''Color balance gain (highlights) 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''

    gamma = None
    '''Color balance gamma (midtones) 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''

    invert_gain = None
    '''Invert the gain color` 

    :type:  boolean, default False 
    '''

    invert_gamma = None
    '''Invert the gamma color 

    :type:  boolean, default False 
    '''

    invert_lift = None
    '''Invert the lift color 

    :type:  boolean, default False 
    '''

    lift = None
    '''Color balance lift (shadows) 

    :type:  float array of 3 items in [0, inf], default (1.0, 1.0, 1.0) 
    '''


class SequenceCrop:
    '''Cropping parameters for a sequence strip '''

    max_x = None
    '''Number of pixels to crop from the right side 

    :type:  int in [0, inf], default 0 
    '''

    max_y = None
    '''Number of pixels to crop from the top 

    :type:  int in [0, inf], default 0 
    '''

    min_x = None
    '''Number of pixels to crop from the left side 

    :type:  int in [0, inf], default 0 
    '''

    min_y = None
    '''Number of pixels to crop from the bottom 

    :type:  int in [0, inf], default 0 
    '''


class SequenceEditor:
    '''Sequence editing data for a Scene data-block '''

    active_strip = None
    '''Sequencer’s active strip 

    :type:  Sequence 
    '''

    meta_stack = None
    '''Meta strip stack, last is currently edited meta strip 

    :type:  bpy_prop_collection of Sequence, (readonly) 
    '''

    overlay_frame = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''

    proxy_dir = None
    '''

    :type:  string, default “”, (never None) 
    '''

    proxy_storage = None
    '''How to store proxies for this project 

    :type:  enum in [‘PER_STRIP’, ‘PROJECT’], default ‘PER_STRIP’ 
    '''

    sequences = None
    '''Top-level strips only 

    :type:  Sequences bpy_prop_collection of Sequence, (readonly) 
    '''

    sequences_all = None
    '''All strips, recursively including those inside metastrips 

    :type:  bpy_prop_collection of Sequence, (readonly) 
    '''

    show_overlay = None
    '''Partial overlay on top of the sequencer 

    :type:  boolean, default False 
    '''

    use_overlay_lock = None
    '''

    :type:  boolean, default False 
    '''


class SequenceElement:
    '''Sequence strip data for a single frame '''

    filename = None
    '''Name of the source file 

    :type:  string, default “”, (never None) 
    '''

    orig_height = None
    '''Original image height 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    orig_width = None
    '''Original image width 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''


class SequenceElements:
    '''Collection of SequenceElement '''

    def append(self, filename):
        '''Push an image from ImageSequence.directory 

        :param filename: Filepath to image 
        :type filename: string, (never None)
        :rtype: SequenceElement 
        :return:  New SequenceElement 
        '''
        pass

    def pop(self, index):
        '''Pop an image off the collection 

        :param index: Index of image to remove 
        :type index: int in [-inf, inf]
        '''
        pass


class SequenceModifier:
    '''Modifier for sequence strip '''

    input_mask_id = None
    '''Mask ID used as mask input for the modifier 

    :type:  Mask 
    '''

    input_mask_strip = None
    '''Strip used as mask input for the modifier 

    :type:  Sequence 
    '''

    input_mask_type = None
    '''Type of input data used for mask 

    :type:  enum in [‘STRIP’, ‘ID’], default ‘STRIP’ 
    '''

    mask_time = None
    '''Time to use for the Mask animation 

    :type:  enum in [‘RELATIVE’, ‘ABSOLUTE’], default ‘RELATIVE’ 
    '''

    mute = None
    '''Mute this modifier 

    :type:  boolean, default False 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    show_expanded = None
    '''Mute expanded settings for the modifier 

    :type:  boolean, default False 
    '''

    type = None
    '''

    :type:  enum in [‘COLOR_BALANCE’, ‘CURVES’, ‘HUE_CORRECT’, ‘BRIGHT_CONTRAST’, ‘MASK’, ‘WHITE_BALANCE’, ‘TONEMAP’], default ‘COLOR_BALANCE’, (readonly) 
    '''


class SequenceModifiers:
    '''Collection of strip modifiers '''

    def new(self, name, type):
        '''Add a new modifier 

        :param name: New name for the modifier 
        :type name: string, (never None)
        :param type: Modifier type to add 
        :type type: enum in ['COLOR_BALANCE', 'CURVES', 'HUE_CORRECT', 'BRIGHT_CONTRAST', 'MASK', 'WHITE_BALANCE', 'TONEMAP']
        :rtype: SequenceModifier 
        :return:  Newly created modifier 
        '''
        pass

    def remove(self, modifier):
        '''Remove an existing modifier from the sequence 

        :param modifier: Modifier to remove 
        :type modifier: SequenceModifier, (never None)
        '''
        pass

    def clear(self):
        '''Remove all modifiers from the sequence 

        '''
        pass


class SequenceProxy:
    '''Proxy parameters for a sequence strip '''

    build_100 = None
    '''Build 100% proxy resolution 

    :type:  boolean, default False 
    '''

    build_25 = None
    '''Build 25% proxy resolution 

    :type:  boolean, default False 
    '''

    build_50 = None
    '''Build 50% proxy resolution 

    :type:  boolean, default False 
    '''

    build_75 = None
    '''Build 75% proxy resolution 

    :type:  boolean, default False 
    '''

    build_free_run = None
    '''Build free run time code index 

    :type:  boolean, default False 
    '''

    build_free_run_rec_date = None
    '''Build free run time code index using Record Date/Time 

    :type:  boolean, default False 
    '''

    build_record_run = None
    '''Build record run time code index 

    :type:  boolean, default False 
    '''

    directory = None
    '''Location to store the proxy files 

    :type:  string, default “”, (never None) 
    '''

    filepath = None
    '''Location of custom proxy file 

    :type:  string, default “”, (never None) 
    '''

    quality = None
    '''JPEG Quality of proxies to build 

    :type:  int in [0, 32767], default 0 
    '''

    timecode = None
    '''Method for reading the inputs timecode 

    :type:  enum in [‘NONE’, ‘RECORD_RUN’, ‘FREE_RUN’, ‘FREE_RUN_REC_DATE’, ‘RECORD_RUN_NO_GAPS’], default ‘NONE’ 
    '''

    use_overwrite = None
    '''Overwrite existing proxy files when building 

    :type:  boolean, default False 
    '''

    use_proxy_custom_directory = None
    '''Use a custom directory to store data 

    :type:  boolean, default False 
    '''

    use_proxy_custom_file = None
    '''Use a custom file to read proxy data from 

    :type:  boolean, default False 
    '''


class SequenceTransform:
    '''Transform parameters for a sequence strip '''

    offset_x = None
    '''Amount to move the input on the X axis within its boundaries 

    :type:  int in [-inf, inf], default 0 
    '''

    offset_y = None
    '''Amount to move the input on the Y axis within its boundaries 

    :type:  int in [-inf, inf], default 0 
    '''


class SequencerTonemapModifierData:
    '''Tone mapping modifier '''

    adaptation = None
    '''If 0, global; if 1, based on pixel intensity 

    :type:  float in [0, 1], default 0.0 
    '''

    contrast = None
    '''Set to 0 to use estimate from input image 

    :type:  float in [0, 1], default 0.0 
    '''

    correction = None
    '''If 0, same for all channels; if 1, each independent 

    :type:  float in [0, 1], default 0.0 
    '''

    gamma = None
    '''If not used, set to 1 

    :type:  float in [0.001, 3], default 0.0 
    '''

    intensity = None
    '''If less than zero, darkens image; otherwise, makes it brighter 

    :type:  float in [-8, 8], default 0.0 
    '''

    key = None
    '''The value the average luminance is mapped to 

    :type:  float in [0, 1], default 0.0 
    '''

    offset = None
    '''Normally always 1, but can be used as an extra control to alter the brightness curve 

    :type:  float in [0.001, 10], default 0.0 
    '''

    tonemap_type = None
    '''Tone mapping algorithm 

    :type:  enum in [‘RD_PHOTORECEPTOR’, ‘RH_SIMPLE’], default ‘RH_SIMPLE’ 
    '''


class Sequences:
    '''Collection of Sequences '''

    def new_clip(self, name, clip, channel, frame_start):
        '''Add a new movie clip sequence 

        :param name: Name for the new sequence 
        :type name: string, (never None)
        :param clip: Movie clip to add 
        :type clip: MovieClip, (never None)
        :param channel: Channel, The channel for the new sequence 
        :type channel: int in [1, 32]
        :param frame_start: The start frame for the new sequence 
        :type frame_start: int in [-1048574, 1048574]
        :rtype: Sequence 
        :return:  New Sequence 
        '''
        pass

    def new_mask(self, name, mask, channel, frame_start):
        '''Add a new mask sequence 

        :param name: Name for the new sequence 
        :type name: string, (never None)
        :param mask: Mask to add 
        :type mask: Mask, (never None)
        :param channel: Channel, The channel for the new sequence 
        :type channel: int in [1, 32]
        :param frame_start: The start frame for the new sequence 
        :type frame_start: int in [-1048574, 1048574]
        :rtype: Sequence 
        :return:  New Sequence 
        '''
        pass

    def new_scene(self, name, scene, channel, frame_start):
        '''Add a new scene sequence 

        :param name: Name for the new sequence 
        :type name: string, (never None)
        :param scene: Scene to add 
        :type scene: Scene, (never None)
        :param channel: Channel, The channel for the new sequence 
        :type channel: int in [1, 32]
        :param frame_start: The start frame for the new sequence 
        :type frame_start: int in [-1048574, 1048574]
        :rtype: Sequence 
        :return:  New Sequence 
        '''
        pass

    def new_image(self, name, filepath, channel, frame_start):
        '''Add a new image sequence 

        :param name: Name for the new sequence 
        :type name: string, (never None)
        :param filepath: Filepath to image 
        :type filepath: string, (never None)
        :param channel: Channel, The channel for the new sequence 
        :type channel: int in [1, 32]
        :param frame_start: The start frame for the new sequence 
        :type frame_start: int in [-1048574, 1048574]
        :rtype: Sequence 
        :return:  New Sequence 
        '''
        pass

    def new_movie(self, name, filepath, channel, frame_start):
        '''Add a new movie sequence 

        :param name: Name for the new sequence 
        :type name: string, (never None)
        :param filepath: Filepath to movie 
        :type filepath: string, (never None)
        :param channel: Channel, The channel for the new sequence 
        :type channel: int in [1, 32]
        :param frame_start: The start frame for the new sequence 
        :type frame_start: int in [-1048574, 1048574]
        :rtype: Sequence 
        :return:  New Sequence 
        '''
        pass

    def new_sound(self, name, filepath, channel, frame_start):
        '''Add a new sound sequence 

        :param name: Name for the new sequence 
        :type name: string, (never None)
        :param filepath: Filepath to movie 
        :type filepath: string, (never None)
        :param channel: Channel, The channel for the new sequence 
        :type channel: int in [1, 32]
        :param frame_start: The start frame for the new sequence 
        :type frame_start: int in [-1048574, 1048574]
        :rtype: Sequence 
        :return:  New Sequence 
        '''
        pass

    def new_effect(self,
                   name,
                   type,
                   channel,
                   frame_start,
                   frame_end=0,
                   seq1=None,
                   seq2=None,
                   seq3=None):
        '''Add a new effect sequence 

        :param name: Name for the new sequence 
        :type name: string, (never None)
        :param type: Type, type for the new sequence 
        :type type: enum in ['CROSS', 'ADD', 'SUBTRACT', 'ALPHA_OVER', 'ALPHA_UNDER', 'GAMMA_CROSS', 'MULTIPLY', 'OVER_DROP', 'WIPE', 'GLOW', 'TRANSFORM', 'COLOR', 'SPEED', 'MULTICAM', 'ADJUSTMENT', 'GAUSSIAN_BLUR', 'TEXT', 'COLORMIX']
        :param channel: Channel, The channel for the new sequence 
        :type channel: int in [1, 32]
        :param frame_start: The start frame for the new sequence 
        :type frame_start: int in [-inf, inf]
        :param frame_end: The end frame for the new sequence 
        :type frame_end: int in [-inf, inf], (optional)
        :param seq1: Sequence 1 for effect 
        :type seq1: Sequence, (optional)
        :param seq2: Sequence 2 for effect 
        :type seq2: Sequence, (optional)
        :param seq3: Sequence 3 for effect 
        :type seq3: Sequence, (optional)
        :rtype: Sequence 
        :return:  New Sequence 
        '''
        pass

    def remove(self, sequence):
        '''Remove a Sequence 

        :param sequence: Sequence to remove 
        :type sequence: Sequence, (never None)
        '''
        pass


class ShaderFx:
    '''Effect affecting the grease pencil object '''

    name = None
    '''Effect name 

    :type:  string, default “”, (never None) 
    '''

    show_expanded = None
    '''Set effect expanded in the user interface 

    :type:  boolean, default False 
    '''

    show_in_editmode = None
    '''Display effect in Edit mode 

    :type:  boolean, default False 
    '''

    show_render = None
    '''Use effect during render 

    :type:  boolean, default False 
    '''

    show_viewport = None
    '''Display effect in viewport 

    :type:  boolean, default False 
    '''

    type = None
    '''

    :type:  enum in [‘FX_BLUR’, ‘FX_COLORIZE’, ‘FX_FLIP’, ‘FX_GLOW’, ‘FX_LIGHT’, ‘FX_PIXEL’, ‘FX_RIM’, ‘FX_SHADOW’, ‘FX_SWIRL’, ‘FX_WAVE’], default ‘FX_BLUR’, (readonly) 
    '''


class ShaderFxBlur:
    '''Gaussian Blur effect '''

    coc = None
    '''Define circle of confusion for depth of field 

    :type:  float in [0.001, 1], default 0.025 
    '''

    factor = None
    '''Factor of Blur 

    :type:  int array of 2 items in [0, inf], default (0, 0) 
    '''

    samples = None
    '''Number of Blur Samples (zero, disable blur) 

    :type:  int in [0, 32], default 4 
    '''

    use_dof_mode = None
    '''Blur using focal plane distance as factor to simulate depth of field effect (only in camera view) 

    :type:  boolean, default False 
    '''


class ShaderFxColorize:
    '''Colorize effect '''

    factor = None
    '''Mix factor 

    :type:  float in [0, 1], default 0.0 
    '''

    high_color = None
    '''Second color used for effect 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    low_color = None
    '''First color used for effect 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    mode = None
    '''Effect mode 

    :type:  enum in [‘GRAYSCALE’, ‘SEPIA’, ‘DUOTONE’, ‘TRANSPARENT’, ‘CUSTOM’], default ‘GRAYSCALE’ 
    '''


class ShaderFxFlip:
    '''Flip effect '''

    flip_horizontal = None
    '''Flip image horizontally 

    :type:  boolean, default False 
    '''

    flip_vertical = None
    '''Flip image vertically 

    :type:  boolean, default False 
    '''


class ShaderFxGlow:
    '''Glow effect '''

    glow_color = None
    '''Color used for generated glow 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    mode = None
    '''Glow mode 

    :type:  enum in [‘LUMINANCE’, ‘COLOR’], default ‘LUMINANCE’ 
    '''

    radius = None
    '''Number of pixels for blurring glow (set to 0 to disable) 

    :type:  int in [0, inf], default 0 
    '''

    samples = None
    '''Number of Blur Samples 

    :type:  int in [1, 32], default 4 
    '''

    select_color = None
    '''Color selected to apply glow 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    threshold = None
    '''Limit to select color for glow effect 

    :type:  float in [0, 1], default 0.0 
    '''

    use_alpha_mode = None
    '''Glow only areas with alpha 

    :type:  boolean, default False 
    '''


class ShaderFxLight:
    '''Light effect '''

    ambient = None
    '''Strength of ambient light source 

    :type:  float in [0, inf], default 0.0 
    '''

    energy = None
    '''Strength of light source 

    :type:  float in [0, inf], default 0.0 
    '''

    object = None
    '''Object to determine light source location 

    :type:  Object 
    '''


class ShaderFxPixel:
    '''Pixelate effect '''

    color = None
    '''Color used for lines 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    size = None
    '''Pixel size 

    :type:  int array of 2 items in [1, inf], default (0, 0) 
    '''

    use_lines = None
    '''Display lines between pixels 

    :type:  boolean, default False 
    '''


class ShaderFxRim:
    '''Rim effect '''

    blur = None
    '''Number of pixels for blurring rim (set to 0 to disable) 

    :type:  int array of 2 items in [0, inf], default (0, 0) 
    '''

    mask_color = None
    '''Color that must be kept 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    mode = None
    '''Blend mode 

    :type:  enum in [‘NORMAL’, ‘OVERLAY’, ‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’], default ‘NORMAL’ 
    '''

    offset = None
    '''Offset of the rim 

    :type:  int array of 2 items in [-inf, inf], default (0, 0) 
    '''

    rim_color = None
    '''Color used for Rim 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    samples = None
    '''Number of Blur Samples (zero, disable blur) 

    :type:  int in [0, 32], default 4 
    '''


class ShaderFxShadow:
    '''Shadow effect '''

    amplitude = None
    '''Amplitude of Wave 

    :type:  float in [0, inf], default 0.0 
    '''

    blur = None
    '''Number of pixels for blurring shadow (set to 0 to disable) 

    :type:  int array of 2 items in [0, inf], default (0, 0) 
    '''

    object = None
    '''Object to determine center of rotation 

    :type:  Object 
    '''

    offset = None
    '''Offset of the shadow 

    :type:  int array of 2 items in [-inf, inf], default (0, 0) 
    '''

    orientation = None
    '''Direction of the wave 

    :type:  enum in [‘HORIZONTAL’, ‘VERTICAL’], default ‘HORIZONTAL’ 
    '''

    period = None
    '''Period of Wave 

    :type:  float in [0, inf], default 0.0 
    '''

    phase = None
    '''Phase Shift of Wave 

    :type:  float in [-inf, inf], default 0.0 
    '''

    rotation = None
    '''Rotation around center or object 

    :type:  float in [-6.28319, 6.28319], default 0.0 
    '''

    samples = None
    '''Number of Blur Samples (zero, disable blur) 

    :type:  int in [0, 32], default 4 
    '''

    scale = None
    '''Offset of the shadow 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    shadow_color = None
    '''Color used for Shadow 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    use_object = None
    '''Use object as center of rotation 

    :type:  boolean, default False 
    '''

    use_wave = None
    '''Use wave effect 

    :type:  boolean, default False 
    '''


class ShaderFxSwirl:
    '''Swirl effect '''

    angle = None
    '''Angle of rotation 

    :type:  float in [-31.4159, 31.4159], default 0.0 
    '''

    object = None
    '''Object to determine center location 

    :type:  Object 
    '''

    radius = None
    '''Radius to apply 

    :type:  int in [0, inf], default 0 
    '''

    use_transparent = None
    '''Make image transparent outside of radius 

    :type:  boolean, default False 
    '''


class ShaderFxWave:
    '''Wave Deformation effect '''

    amplitude = None
    '''Amplitude of Wave 

    :type:  float in [0, inf], default 0.0 
    '''

    orientation = None
    '''Direction of the wave 

    :type:  enum in [‘HORIZONTAL’, ‘VERTICAL’], default ‘HORIZONTAL’ 
    '''

    period = None
    '''Period of Wave 

    :type:  float in [0, inf], default 0.0 
    '''

    phase = None
    '''Phase Shift of Wave 

    :type:  float in [-inf, inf], default 0.0 
    '''


class ShaderNode:
    '''Material shader node '''

    pass


class ShaderNodeAddShader:
    pass


class ShaderNodeAmbientOcclusion:
    inside = None
    '''Trace rays towards the inside of the object 

    :type:  boolean, default False 
    '''

    only_local = None
    '''Only consider the object itself when computing AO 

    :type:  boolean, default False 
    '''

    samples = None
    '''Number of rays to trace per shader evaluation 

    :type:  int in [1, 128], default 0 
    '''


class ShaderNodeAttribute:
    attribute_name = None
    '''

    :type:  string, default “”, (never None) 
    '''


class ShaderNodeBackground:
    pass


class ShaderNodeBevel:
    samples = None
    '''Number of rays to trace per shader evaluation 

    :type:  int in [2, 16], default 0 
    '''


class ShaderNodeBlackbody:
    pass


class ShaderNodeBrightContrast:
    pass


class ShaderNodeBsdfAnisotropic:
    distribution = None
    '''

    :type:  enum in [‘BECKMANN’, ‘GGX’, ‘MULTI_GGX’, ‘ASHIKHMIN_SHIRLEY’], default ‘BECKMANN’ 
    '''


class ShaderNodeBsdfDiffuse:
    pass


class ShaderNodeBsdfGlass:
    distribution = None
    '''

    :type:  enum in [‘SHARP’, ‘BECKMANN’, ‘GGX’, ‘MULTI_GGX’], default ‘BECKMANN’ 
    '''


class ShaderNodeBsdfGlossy:
    distribution = None
    '''

    :type:  enum in [‘SHARP’, ‘BECKMANN’, ‘GGX’, ‘ASHIKHMIN_SHIRLEY’, ‘MULTI_GGX’], default ‘BECKMANN’ 
    '''


class ShaderNodeBsdfHair:
    component = None
    '''

    :type:  enum in [‘Reflection’, ‘Transmission’], default ‘Reflection’ 
    '''


class ShaderNodeBsdfHairPrincipled:
    parametrization = None
    '''Select the shader’s color parametrization 

    :type:  enum in [‘ABSORPTION’, ‘MELANIN’, ‘COLOR’], default ‘COLOR’ 
    '''


class ShaderNodeBsdfPrincipled:
    distribution = None
    '''

    :type:  enum in [‘GGX’, ‘MULTI_GGX’], default ‘GGX’ 
    '''

    subsurface_method = None
    '''Method for rendering subsurface scattering 

    :type:  enum in [‘BURLEY’, ‘RANDOM_WALK’], default ‘BURLEY’ 
    '''


class ShaderNodeBsdfRefraction:
    distribution = None
    '''

    :type:  enum in [‘SHARP’, ‘BECKMANN’, ‘GGX’], default ‘BECKMANN’ 
    '''


class ShaderNodeBsdfToon:
    component = None
    '''

    :type:  enum in [‘DIFFUSE’, ‘GLOSSY’], default ‘DIFFUSE’ 
    '''


class ShaderNodeBsdfTranslucent:
    pass


class ShaderNodeBsdfTransparent:
    pass


class ShaderNodeBsdfVelvet:
    pass


class ShaderNodeBump:
    invert = None
    '''Invert the bump mapping direction to push into the surface instead of out 

    :type:  boolean, default False 
    '''


class ShaderNodeCameraData:
    pass


class ShaderNodeCombineHSV:
    pass


class ShaderNodeCombineRGB:
    pass


class ShaderNodeCombineXYZ:
    pass


class ShaderNodeCustomGroup:
    '''Custom Shader Group Node for Python nodes '''

    interface = None
    '''Interface socket data 

    :type:  PropertyGroup, (readonly) 
    '''

    node_tree = None
    '''

    :type:  NodeTree 
    '''


class ShaderNodeDisplacement:
    space = None
    '''Space of the input height 

    :type:  enum in [‘OBJECT’, ‘WORLD’], default ‘OBJECT’ 
    '''


class ShaderNodeEeveeSpecular:
    pass


class ShaderNodeEmission:
    pass


class ShaderNodeFresnel:
    pass


class ShaderNodeGamma:
    pass


class ShaderNodeGroup:
    interface = None
    '''Interface socket data 

    :type:  PropertyGroup, (readonly) 
    '''

    node_tree = None
    '''

    :type:  NodeTree 
    '''


class ShaderNodeHairInfo:
    pass


class ShaderNodeHoldout:
    pass


class ShaderNodeHueSaturation:
    pass


class ShaderNodeInvert:
    pass


class ShaderNodeLayerWeight:
    pass


class ShaderNodeLightFalloff:
    pass


class ShaderNodeLightPath:
    pass


class ShaderNodeMapping:
    max = None
    '''Maximum value for clipping 

    :type:  float array of 3 items in [-inf, inf], default (1.0, 1.0, 1.0) 
    '''

    min = None
    '''Minimum value for clipping 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    rotation = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    scale = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (1.0, 1.0, 1.0) 
    '''

    translation = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    use_max = None
    '''Whether to use maximum clipping value 

    :type:  boolean, default False 
    '''

    use_min = None
    '''Whether to use minimum clipping value 

    :type:  boolean, default False 
    '''

    vector_type = None
    '''Type of vector that the mapping transforms 

    :type:  enum in [‘TEXTURE’, ‘POINT’, ‘VECTOR’, ‘NORMAL’], default ‘POINT’ 
    '''


class ShaderNodeMath:
    operation = None
    '''

    :type:  enum in [‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘POWER’, ‘LOGARITHM’, ‘SQRT’, ‘ABSOLUTE’, ‘MINIMUM’, ‘MAXIMUM’, ‘LESS_THAN’, ‘GREATER_THAN’, ‘ROUND’, ‘FLOOR’, ‘CEIL’, ‘FRACT’, ‘MODULO’, ‘SINE’, ‘COSINE’, ‘TANGENT’, ‘ARCSINE’, ‘ARCCOSINE’, ‘ARCTANGENT’, ‘ARCTAN2’], default ‘ADD’ 
    '''

    use_clamp = None
    '''Clamp result of the node to 0..1 range 

    :type:  boolean, default False 
    '''


class ShaderNodeMixRGB:
    blend_type = None
    '''

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    use_alpha = None
    '''Include alpha of second input in this operation 

    :type:  boolean, default False 
    '''

    use_clamp = None
    '''Clamp result of the node to 0..1 range 

    :type:  boolean, default False 
    '''


class ShaderNodeMixShader:
    pass


class ShaderNodeNewGeometry:
    pass


class ShaderNodeNormal:
    pass


class ShaderNodeNormalMap:
    space = None
    '''Space of the input normal 

    :type:  enum in [‘TANGENT’, ‘OBJECT’, ‘WORLD’, ‘BLENDER_OBJECT’, ‘BLENDER_WORLD’], default ‘TANGENT’ 
    '''

    uv_map = None
    '''UV Map for tangent space maps 

    :type:  string, default “”, (never None) 
    '''


class ShaderNodeObjectInfo:
    pass


class ShaderNodeOutputLight:
    is_active_output = None
    '''True if this node is used as the active output 

    :type:  boolean, default False 
    '''

    target = None
    '''Which renderer and viewport shading types to use the shaders for 

    :type:  enum in [‘ALL’, ‘EEVEE’, ‘CYCLES’], default ‘ALL’ 
    '''


class ShaderNodeOutputLineStyle:
    blend_type = None
    '''

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    is_active_output = None
    '''True if this node is used as the active output 

    :type:  boolean, default False 
    '''

    target = None
    '''Which renderer and viewport shading types to use the shaders for 

    :type:  enum in [‘ALL’, ‘EEVEE’, ‘CYCLES’], default ‘ALL’ 
    '''

    use_alpha = None
    '''Include alpha of second input in this operation 

    :type:  boolean, default False 
    '''

    use_clamp = None
    '''Clamp result of the node to 0..1 range 

    :type:  boolean, default False 
    '''


class ShaderNodeOutputMaterial:
    is_active_output = None
    '''True if this node is used as the active output 

    :type:  boolean, default False 
    '''

    target = None
    '''Which renderer and viewport shading types to use the shaders for 

    :type:  enum in [‘ALL’, ‘EEVEE’, ‘CYCLES’], default ‘ALL’ 
    '''


class ShaderNodeOutputWorld:
    is_active_output = None
    '''True if this node is used as the active output 

    :type:  boolean, default False 
    '''

    target = None
    '''Which renderer and viewport shading types to use the shaders for 

    :type:  enum in [‘ALL’, ‘EEVEE’, ‘CYCLES’], default ‘ALL’ 
    '''


class ShaderNodeParticleInfo:
    pass


class ShaderNodeRGB:
    pass


class ShaderNodeRGBCurve:
    mapping = None
    '''

    :type:  CurveMapping, (readonly) 
    '''


class ShaderNodeRGBToBW:
    pass


class ShaderNodeScript:
    bytecode = None
    '''Compile bytecode for shader script node 

    :type:  string, default “”, (never None) 
    '''

    bytecode_hash = None
    '''Hash of compile bytecode, for quick equality checking 

    :type:  string, default “”, (never None) 
    '''

    filepath = None
    '''Shader script path 

    :type:  string, default “”, (never None) 
    '''

    mode = None
    '''

    :type:  enum in [‘INTERNAL’, ‘EXTERNAL’], default ‘INTERNAL’ 
    '''

    script = None
    '''Internal shader script to define the shader 

    :type:  Text 
    '''

    use_auto_update = None
    '''Automatically update the shader when the .osl file changes (external scripts only) 

    :type:  boolean, default False 
    '''


class ShaderNodeSeparateHSV:
    pass


class ShaderNodeSeparateRGB:
    pass


class ShaderNodeSeparateXYZ:
    pass


class ShaderNodeShaderToRGB:
    pass


class ShaderNodeSqueeze:
    pass


class ShaderNodeSubsurfaceScattering:
    falloff = None
    '''Function to determine how much light nearby points contribute based on their distance to the shading point 

    :type:  enum in [‘CUBIC’, ‘GAUSSIAN’, ‘BURLEY’, ‘RANDOM_WALK’], default ‘CUBIC’ 
    '''


class ShaderNodeTangent:
    axis = None
    '''Axis for radial tangents 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    direction_type = None
    '''Method to use for the tangent 

    :type:  enum in [‘RADIAL’, ‘UV_MAP’], default ‘RADIAL’ 
    '''

    uv_map = None
    '''UV Map for tangent generated from UV 

    :type:  string, default “”, (never None) 
    '''


class ShaderNodeTexBrick:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    offset = None
    '''

    :type:  float in [0, 1], default 0.5 
    '''

    offset_frequency = None
    '''

    :type:  int in [1, 99], default 2 
    '''

    squash = None
    '''

    :type:  float in [0, 99], default 1.0 
    '''

    squash_frequency = None
    '''

    :type:  int in [1, 99], default 2 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''


class ShaderNodeTexChecker:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''


class ShaderNodeTexCoord:
    from_instancer = None
    '''Use the parent of the dupli object if possible 

    :type:  boolean, default False 
    '''

    object = None
    '''Use coordinates from this object (for object texture coordinates output) 

    :type:  Object 
    '''


class ShaderNodeTexEnvironment:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    color_space = None
    '''Image file color space 

    :type:  enum in [‘COLOR’, ‘NONE’], default ‘COLOR’ 
    '''

    image = None
    '''

    :type:  Image 
    '''

    image_user = None
    '''Parameters defining which layer, pass and frame of the image is displayed 

    :type:  ImageUser, (readonly, never None) 
    '''

    interpolation = None
    '''Texture interpolation 

    :type:  enum in [‘Linear’, ‘Closest’, ‘Cubic’, ‘Smart’], default ‘Linear’ 
    '''

    projection = None
    '''Projection of the input image 

    :type:  enum in [‘EQUIRECTANGULAR’, ‘MIRROR_BALL’], default ‘EQUIRECTANGULAR’ 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''


class ShaderNodeTexGradient:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    gradient_type = None
    '''Style of the color blending 

    :type:  enum in [‘LINEAR’, ‘QUADRATIC’, ‘EASING’, ‘DIAGONAL’, ‘SPHERICAL’, ‘QUADRATIC_SPHERE’, ‘RADIAL’], default ‘LINEAR’ 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''


class ShaderNodeTexIES:
    filepath = None
    '''IES light path 

    :type:  string, default “”, (never None) 
    '''

    ies = None
    '''Internal IES file 

    :type:  Text 
    '''

    mode = None
    '''Whether the IES file is loaded from disk or from a Text datablock 

    :type:  enum in [‘INTERNAL’, ‘EXTERNAL’], default ‘INTERNAL’ 
    '''


class ShaderNodeTexImage:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    color_space = None
    '''Image file color space 

    :type:  enum in [‘COLOR’, ‘NONE’], default ‘COLOR’ 
    '''

    extension = None
    '''How the image is extrapolated past its original bounds 

    :type:  enum in [‘REPEAT’, ‘EXTEND’, ‘CLIP’], default ‘REPEAT’ 
    '''

    image = None
    '''

    :type:  Image 
    '''

    image_user = None
    '''Parameters defining which layer, pass and frame of the image is displayed 

    :type:  ImageUser, (readonly, never None) 
    '''

    interpolation = None
    '''Texture interpolation 

    :type:  enum in [‘Linear’, ‘Closest’, ‘Cubic’, ‘Smart’], default ‘Linear’ 
    '''

    projection = None
    '''Method to project 2D image on object with a 3D texture vector 

    :type:  enum in [‘FLAT’, ‘BOX’, ‘SPHERE’, ‘TUBE’], default ‘FLAT’ 
    '''

    projection_blend = None
    '''For box projection, amount of blend to use between sides 

    :type:  float in [0, 1], default 0.0 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''


class ShaderNodeTexMagic:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''

    turbulence_depth = None
    '''Level of detail in the added turbulent noise 

    :type:  int in [0, 10], default 0 
    '''


class ShaderNodeTexMusgrave:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    musgrave_type = None
    '''

    :type:  enum in [‘MULTIFRACTAL’, ‘RIDGED_MULTIFRACTAL’, ‘HYBRID_MULTIFRACTAL’, ‘FBM’, ‘HETERO_TERRAIN’], default ‘MULTIFRACTAL’ 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''


class ShaderNodeTexNoise:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''


class ShaderNodeTexPointDensity:
    interpolation = None
    '''Texture interpolation 

    :type:  enum in [‘Closest’, ‘Linear’, ‘Cubic’], default ‘Linear’ 
    '''

    object = None
    '''Object to take point data from 

    :type:  Object 
    '''

    particle_color_source = None
    '''Data to derive color results from 

    :type:  enum in [‘PARTICLE_AGE’, ‘PARTICLE_SPEED’, ‘PARTICLE_VELOCITY’], default ‘PARTICLE_AGE’ 
    '''

    particle_system = None
    '''Particle System to render as points 

    :type:  ParticleSystem 
    '''

    point_source = None
    '''Point data to use as renderable point density 

    :type:  enum in [‘PARTICLE_SYSTEM’, ‘OBJECT’], default ‘PARTICLE_SYSTEM’ 
    '''

    radius = None
    '''Radius from the shaded sample to look for points within 

    :type:  float in [0.001, inf], default 0.0 
    '''

    resolution = None
    '''Resolution used by the texture holding the point density 

    :type:  int in [1, 32768], default 0 
    '''

    space = None
    '''Coordinate system to calculate voxels in 

    :type:  enum in [‘OBJECT’, ‘WORLD’], default ‘OBJECT’ 
    '''

    vertex_attribute_name = None
    '''Vertex attribute to use for color 

    :type:  string, default “”, (never None) 
    '''

    vertex_color_source = None
    '''Data to derive color results from 

    :type:  enum in [‘VERTEX_COLOR’, ‘VERTEX_WEIGHT’, ‘VERTEX_NORMAL’], default ‘VERTEX_COLOR’ 
    '''

    def cache_point_density(self, depsgraph=None):
        '''Cache point density data for later calculation 

        '''
        pass

    def calc_point_density(self, depsgraph=None):
        '''Calculate point density 

        :rtype: float array of 1 items in [-inf, inf] 
        :return:  RGBA Values 
        '''
        pass

    def calc_point_density_minmax(self, depsgraph=None):
        '''Calculate point density 

        '''
        pass


class ShaderNodeTexSky:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    ground_albedo = None
    '''Ground color that is subtly reflected in the sky 

    :type:  float in [0, 1], default 0.0 
    '''

    sky_type = None
    '''

    :type:  enum in [‘PREETHAM’, ‘HOSEK_WILKIE’], default ‘PREETHAM’ 
    '''

    sun_direction = None
    '''Direction from where the sun is shining 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 1.0) 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''

    turbidity = None
    '''Atmospheric turbidity 

    :type:  float in [1, 10], default 0.0 
    '''


class ShaderNodeTexVoronoi:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    coloring = None
    '''

    :type:  enum in [‘INTENSITY’, ‘CELLS’], default ‘INTENSITY’ 
    '''

    distance = None
    '''

    :type:  enum in [‘DISTANCE’, ‘MANHATTAN’, ‘CHEBYCHEV’, ‘MINKOWSKI’], default ‘DISTANCE’ 
    '''

    feature = None
    '''

    :type:  enum in [‘F1’, ‘F2’, ‘F3’, ‘F4’, ‘F2F1’], default ‘F1’ 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''


class ShaderNodeTexWave:
    color_mapping = None
    '''Color mapping settings 

    :type:  ColorMapping, (readonly, never None) 
    '''

    texture_mapping = None
    '''Texture coordinate mapping settings 

    :type:  TexMapping, (readonly, never None) 
    '''

    wave_profile = None
    '''

    :type:  enum in [‘SIN’, ‘SAW’], default ‘SIN’ 
    '''

    wave_type = None
    '''

    :type:  enum in [‘BANDS’, ‘RINGS’], default ‘BANDS’ 
    '''


class ShaderNodeTree:
    '''Node tree consisting of linked nodes used for materials (and other shading data-blocks) '''

    def get_output_node(self, target):
        '''Return active shader output node for the specified target 

        :param target: TargetALL All, Use shaders for all renderers and viewports, unless there exists a more specific output.EEVEE Eevee, Use shaders for Eevee renderer.CYCLES Cycles, Use shaders for Cycles renderer. 
        :type target: enum in ['ALL', 'EEVEE', 'CYCLES']
        :rtype: ShaderNode 
        :return:  Node 
        '''
        pass


class ShaderNodeUVAlongStroke:
    use_tips = None
    '''Lower half of the texture is for tips of the stroke 

    :type:  boolean, default False 
    '''


class ShaderNodeUVMap:
    from_instancer = None
    '''Use the parent of the dupli object if possible 

    :type:  boolean, default False 
    '''

    uv_map = None
    '''UV coordinates to be used for mapping 

    :type:  string, default “”, (never None) 
    '''


class ShaderNodeValToRGB:
    color_ramp = None
    '''

    :type:  ColorRamp, (readonly) 
    '''


class ShaderNodeValue:
    pass


class ShaderNodeVectorCurve:
    mapping = None
    '''

    :type:  CurveMapping, (readonly) 
    '''


class ShaderNodeVectorDisplacement:
    space = None
    '''Space of the input height 

    :type:  enum in [‘TANGENT’, ‘OBJECT’, ‘WORLD’], default ‘TANGENT’ 
    '''


class ShaderNodeVectorMath:
    operation = None
    '''

    :type:  enum in [‘ADD’, ‘SUBTRACT’, ‘AVERAGE’, ‘DOT_PRODUCT’, ‘CROSS_PRODUCT’, ‘NORMALIZE’], default ‘ADD’ 
    '''


class ShaderNodeVectorTransform:
    convert_from = None
    '''Space to convert from 

    :type:  enum in [‘WORLD’, ‘OBJECT’, ‘CAMERA’], default ‘WORLD’ 
    '''

    convert_to = None
    '''Space to convert to 

    :type:  enum in [‘WORLD’, ‘OBJECT’, ‘CAMERA’], default ‘WORLD’ 
    '''

    vector_type = None
    '''

    :type:  enum in [‘POINT’, ‘VECTOR’, ‘NORMAL’], default ‘VECTOR’ 
    '''


class ShaderNodeVolumeAbsorption:
    pass


class ShaderNodeVolumePrincipled:
    pass


class ShaderNodeVolumeScatter:
    pass


class ShaderNodeWavelength:
    pass


class ShaderNodeWireframe:
    use_pixel_size = None
    '''Use screen pixel size instead of world units 

    :type:  boolean, default False 
    '''


class ShapeKey:
    '''Shape key in a shape keys data-block '''

    data = None
    '''

    :type:  bpy_prop_collection of UnknownType, (readonly) 
    '''

    frame = None
    '''Frame for absolute keys 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    interpolation = None
    '''Interpolation type for absolute shape keys 

    :type:  enum in [‘KEY_LINEAR’, ‘KEY_CARDINAL’, ‘KEY_CATMULL_ROM’, ‘KEY_BSPLINE’], default ‘KEY_LINEAR’ 
    '''

    mute = None
    '''Toggle this shape key 

    :type:  boolean, default False 
    '''

    name = None
    '''Name of Shape Key 

    :type:  string, default “”, (never None) 
    '''

    relative_key = None
    '''Shape used as a relative key 

    :type:  ShapeKey, (never None) 
    '''

    slider_max = None
    '''Maximum for slider 

    :type:  float in [-10, 10], default 1.0 
    '''

    slider_min = None
    '''Minimum for slider 

    :type:  float in [-10, 10], default 0.0 
    '''

    value = None
    '''Value of shape key at the current frame 

    :type:  float in [0, 1], default 0.0 
    '''

    vertex_group = None
    '''Vertex weight group, to blend with basis shape 

    :type:  string, default “”, (never None) 
    '''

    def normals_vertex_get(self):
        '''Compute local space vertices’ normals for this shape key 

        :rtype: float in [-1, 1] 
        :return:  normals 
        '''
        pass

    def normals_polygon_get(self):
        '''Compute local space faces’ normals for this shape key 

        :rtype: float in [-1, 1] 
        :return:  normals 
        '''
        pass

    def normals_split_get(self):
        '''Compute local space face corners’ normals for this shape key 

        :rtype: float in [-1, 1] 
        :return:  normals 
        '''
        pass


class ShapeKeyBezierPoint:
    '''Point in a shape key for Bezier curves '''

    co = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    handle_left = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    handle_right = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    radius = None
    '''Radius for beveling 

    :type:  float in [0, inf], default 0.0 
    '''

    tilt = None
    '''Tilt in 3D View 

    :type:  float in [-376.991, 376.991], default 0.0 
    '''


class ShapeKeyCurvePoint:
    '''Point in a shape key for curves '''

    co = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    radius = None
    '''Radius for beveling 

    :type:  float in [0, inf], default 0.0 
    '''

    tilt = None
    '''Tilt in 3D View 

    :type:  float in [-376.991, 376.991], default 0.0 
    '''


class ShapeKeyPoint:
    '''Point in a shape key '''

    co = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''


class ShrinkwrapConstraint:
    '''Create constraint-based shrinkwrap relationship '''

    cull_face = None
    '''Stop vertices from projecting to a face on the target when facing towards/away 

    :type:  enum in [‘OFF’, ‘FRONT’, ‘BACK’], default ‘OFF’ 
    '''

    distance = None
    '''Distance to Target 

    :type:  float in [0, inf], default 0.0 
    '''

    project_axis = None
    '''Axis constrain to 

    :type:  enum in [‘POS_X’, ‘POS_Y’, ‘POS_Z’, ‘NEG_X’, ‘NEG_Y’, ‘NEG_Z’], default ‘POS_X’ 
    '''

    project_axis_space = None
    '''Space for the projection axis 

    :type:  enum in [‘WORLD’, ‘POSE’, ‘LOCAL_WITH_PARENT’, ‘LOCAL’], default ‘WORLD’ 
    '''

    project_limit = None
    '''Limit the distance used for projection (zero disables) 

    :type:  float in [0, inf], default 0.0 
    '''

    shrinkwrap_type = None
    '''Select type of shrinkwrap algorithm for target position 

    :type:  enum in [‘NEAREST_SURFACE’, ‘PROJECT’, ‘NEAREST_VERTEX’, ‘TARGET_PROJECT’], default ‘NEAREST_SURFACE’ 
    '''

    target = None
    '''Target Mesh object 

    :type:  Object 
    '''

    track_axis = None
    '''Axis that is aligned to the normal 

    :type:  enum in [‘TRACK_X’, ‘TRACK_Y’, ‘TRACK_Z’, ‘TRACK_NEGATIVE_X’, ‘TRACK_NEGATIVE_Y’, ‘TRACK_NEGATIVE_Z’], default ‘TRACK_X’ 
    '''

    use_invert_cull = None
    '''When projecting in the opposite direction invert the face cull mode 

    :type:  boolean, default False 
    '''

    use_project_opposite = None
    '''Project in both specified and opposite directions 

    :type:  boolean, default False 
    '''

    use_track_normal = None
    '''Align the specified axis to the surface normal 

    :type:  boolean, default False 
    '''

    wrap_mode = None
    '''Select how to constrain the object to the target surface 

    :type:  enum in [‘ON_SURFACE’, ‘INSIDE’, ‘OUTSIDE’, ‘OUTSIDE_SURFACE’, ‘ABOVE_SURFACE’], default ‘ON_SURFACE’ 
    '''


class ShrinkwrapModifier:
    '''Shrink wrapping modifier to shrink wrap and object to a target '''

    auxiliary_target = None
    '''Additional mesh target to shrink to 

    :type:  Object 
    '''

    cull_face = None
    '''Stop vertices from projecting to a face on the target when facing towards/away 

    :type:  enum in [‘OFF’, ‘FRONT’, ‘BACK’], default ‘OFF’ 
    '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    offset = None
    '''Distance to keep from the target 

    :type:  float in [-inf, inf], default 0.0 
    '''

    project_limit = None
    '''Limit the distance used for projection (zero disables) 

    :type:  float in [0, inf], default 0.0 
    '''

    subsurf_levels = None
    '''Number of subdivisions that must be performed before extracting vertices’ positions and normals 

    :type:  int in [0, 6], default 0 
    '''

    target = None
    '''Mesh target to shrink to 

    :type:  Object 
    '''

    use_invert_cull = None
    '''When projecting in the negative direction invert the face cull mode 

    :type:  boolean, default False 
    '''

    use_negative_direction = None
    '''Allow vertices to move in the negative direction of axis 

    :type:  boolean, default False 
    '''

    use_positive_direction = None
    '''Allow vertices to move in the positive direction of axis 

    :type:  boolean, default False 
    '''

    use_project_x = None
    '''

    :type:  boolean, default False 
    '''

    use_project_y = None
    '''

    :type:  boolean, default False 
    '''

    use_project_z = None
    '''

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''

    wrap_method = None
    '''

    :type:  enum in [‘NEAREST_SURFACEPOINT’, ‘PROJECT’, ‘NEAREST_VERTEX’, ‘TARGET_PROJECT’], default ‘NEAREST_SURFACEPOINT’ 
    '''

    wrap_mode = None
    '''Select how vertices are constrained to the target surface 

    :type:  enum in [‘ON_SURFACE’, ‘INSIDE’, ‘OUTSIDE’, ‘OUTSIDE_SURFACE’, ‘ABOVE_SURFACE’], default ‘ON_SURFACE’ 
    '''


class SimpleDeformModifier:
    '''Simple deformation modifier to apply effects such as twisting and bending '''

    angle = None
    '''Angle of deformation 

    :type:  float in [-inf, inf], default 0.785398 
    '''

    deform_axis = None
    '''Deform around local axis 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    deform_method = None
    '''

    :type:  enum in [‘TWIST’, ‘BEND’, ‘TAPER’, ‘STRETCH’], default ‘TWIST’ 
    '''

    factor = None
    '''Amount to deform object 

    :type:  float in [-inf, inf], default 0.0 
    '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    limits = None
    '''Lower/Upper limits for deform 

    :type:  float array of 2 items in [0, 1], default (0.0, 0.0) 
    '''

    lock_x = None
    '''Do not allow deformation along the X axis 

    :type:  boolean, default False 
    '''

    lock_y = None
    '''Do not allow deformation along the Y axis 

    :type:  boolean, default False 
    '''

    lock_z = None
    '''Do not allow deformation along the Z axis 

    :type:  boolean, default False 
    '''

    origin = None
    '''Offset the origin and orientation of the deformation 

    :type:  Object 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''


class SimplifyGpencilModifier:
    '''Simplify Stroke modifier '''

    factor = None
    '''Factor of Simplify 

    :type:  float in [0, 100], default 0.0 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    mode = None
    '''How simplify the stroke 

    :type:  enum in [‘FIXED’, ‘ADAPTIVE’], default ‘FIXED’ 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    step = None
    '''Number of times to apply simplify 

    :type:  int in [1, 50], default 0 
    '''


class SkinModifier:
    '''Generate Skin '''

    branch_smoothing = None
    '''Smooth complex geometry around branches 

    :type:  float in [0, 1], default 0.0 
    '''

    use_smooth_shade = None
    '''Output faces with smooth shading rather than flat shaded 

    :type:  boolean, default False 
    '''

    use_x_symmetry = None
    '''Avoid making unsymmetrical quads across the X axis 

    :type:  boolean, default False 
    '''

    use_y_symmetry = None
    '''Avoid making unsymmetrical quads across the Y axis 

    :type:  boolean, default False 
    '''

    use_z_symmetry = None
    '''Avoid making unsymmetrical quads across the Z axis 

    :type:  boolean, default False 
    '''


class SmokeCollSettings:
    '''Smoke collision settings '''

    collision_type = None
    '''Collision type 

    :type:  enum in [‘COLLSTATIC’, ‘COLLRIGID’, ‘COLLANIMATED’], default ‘COLLSTATIC’ 
    '''


class SmokeDomainSettings:
    '''Smoke domain settings '''

    adapt_margin = None
    '''Margin added around fluid to minimize boundary interference 

    :type:  int in [2, 24], default 0 
    '''

    adapt_threshold = None
    '''Maximum amount of fluid cell can contain before it is considered empty 

    :type:  float in [0.01, 0.5], default 0.0 
    '''

    additional_res = None
    '''Maximum number of additional cells 

    :type:  int in [0, 512], default 0 
    '''

    alpha = None
    '''How much density affects smoke motion (higher value results in faster rising smoke) 

    :type:  float in [-5, 5], default 0.0 
    '''

    amplify = None
    '''Enhance the resolution of smoke by this factor using noise 

    :type:  int in [1, 10], default 0 
    '''

    axis_slice_method = None
    '''

    :type:  enum in [‘FULL’, ‘SINGLE’], default ‘FULL’ 
    '''

    beta = None
    '''How much heat affects smoke motion (higher value results in faster rising smoke) 

    :type:  float in [-5, 5], default 0.0 
    '''

    burning_rate = None
    '''Speed of the burning reaction (use larger values for smaller flame) 

    :type:  float in [0.01, 4], default 0.0 
    '''

    cache_file_format = None
    '''Select the file format to be used for caching 

    :type:  enum in [‘POINTCACHE’, ‘OPENVDB’], default ‘POINTCACHE’ 
    '''

    cell_size = None
    '''Cell Size 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    clipping = None
    '''Value under which voxels are considered empty space to optimize caching and rendering 

    :type:  float in [0, 1], default 0.0 
    '''

    coba_field = None
    '''Simulation field to color map 

    :type:  enum in [‘COLOR_R’, ‘COLOR_G’, ‘COLOR_B’, ‘DENSITY’, ‘FLAME’, ‘FUEL’, ‘HEAT’, ‘VELOCITY_X’, ‘VELOCITY_Y’, ‘VELOCITY_Z’], default ‘DENSITY’ 
    '''

    collision_collection = None
    '''Limit collisions to this collection 

    :type:  Collection 
    '''

    collision_extents = None
    '''Select which domain border will be treated as collision object 

    :type:  enum in [‘BORDEROPEN’, ‘BORDERVERTICAL’, ‘BORDERCLOSED’], default ‘BORDEROPEN’ 
    '''

    color_grid = None
    '''Smoke color grid 

    :type:  float array of 32 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0), (readonly) 
    '''

    color_ramp = None
    '''

    :type:  ColorRamp, (readonly) 
    '''

    data_depth = None
    '''Bit depth for writing all scalar (including vector) lower values reduce file size 

    :type:  enum in [‘16’, ‘32’], default ‘32’ 
    '''

    density_grid = None
    '''Smoke density grid 

    :type:  float array of 32 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0), (readonly) 
    '''

    display_interpolation = None
    '''Interpolation method to use for smoke/fire volumes in solid mode 

    :type:  enum in [‘LINEAR’, ‘CUBIC’], default ‘LINEAR’ 
    '''

    display_thickness = None
    '''Thickness of smoke drawing in the viewport 

    :type:  float in [0.001, 1000], default 0.0 
    '''

    dissolve_speed = None
    '''Dissolve Speed 

    :type:  int in [1, 10000], default 0 
    '''

    domain_resolution = None
    '''Smoke Grid Resolution 

    :type:  int array of 3 items in [-inf, inf], default (0, 0, 0), (readonly) 
    '''

    effector_collection = None
    '''Limit effectors to this collection 

    :type:  Collection 
    '''

    effector_weights = None
    '''

    :type:  EffectorWeights, (readonly) 
    '''

    flame_grid = None
    '''Smoke flame grid 

    :type:  float array of 32 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0), (readonly) 
    '''

    flame_ignition = None
    '''Minimum temperature of flames 

    :type:  float in [0.5, 5], default 0.0 
    '''

    flame_max_temp = None
    '''Maximum temperature of flames 

    :type:  float in [1, 10], default 0.0 
    '''

    flame_smoke = None
    '''Amount of smoke created by burning fuel 

    :type:  float in [0, 8], default 0.0 
    '''

    flame_smoke_color = None
    '''Color of smoke emitted from burning fuel 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    flame_vorticity = None
    '''Additional vorticity for the flames 

    :type:  float in [0, 2], default 0.0 
    '''

    fluid_collection = None
    '''Limit fluid objects to this collection 

    :type:  Collection 
    '''

    heat_grid = None
    '''Smoke heat grid 

    :type:  float array of 32 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0), (readonly) 
    '''

    highres_sampling = None
    '''Method for sampling the high resolution flow 

    :type:  enum in [‘FULLSAMPLE’, ‘LINEAR’, ‘NEAREST’], default ‘NEAREST’ 
    '''

    noise_type = None
    '''Noise method which is used for creating the high resolution 

    :type:  enum in [‘NOISEWAVE’, ‘NOISEFFT’], default ‘NOISEWAVE’ 
    '''

    openvdb_cache_compress_type = None
    '''Compression method to be used 

    :type:  enum in [‘ZIP’, ‘BLOSC’, ‘NONE’], default ‘BLOSC’ 
    '''

    point_cache = None
    '''

    :type:  PointCache, (readonly, never None) 
    '''

    point_cache_compress_type = None
    '''Compression method to be used 

    :type:  enum in [‘CACHELIGHT’, ‘CACHEHEAVY’], default ‘CACHELIGHT’ 
    '''

    resolution_max = None
    '''Maximal resolution used in the fluid domain 

    :type:  int in [6, 512], default 0 
    '''

    show_high_resolution = None
    '''Show high resolution (using amplification) 

    :type:  boolean, default False 
    '''

    show_velocity = None
    '''Toggle visualization of the velocity field as needles 

    :type:  boolean, default False 
    '''

    slice_axis = None
    '''

    :type:  enum in [‘AUTO’, ‘X’, ‘Y’, ‘Z’], default ‘AUTO’ 
    '''

    slice_depth = None
    '''Position of the slice 

    :type:  float in [0, 1], default 0.0 
    '''

    slice_method = None
    '''How to slice the volume for viewport rendering 

    :type:  enum in [‘VIEW_ALIGNED’, ‘AXIS_ALIGNED’], default ‘VIEW_ALIGNED’ 
    '''

    slice_per_voxel = None
    '''How many slices per voxel should be generated 

    :type:  float in [0, 100], default 0.0 
    '''

    start_point = None
    '''Start point 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    strength = None
    '''Strength of noise 

    :type:  float in [0, 10], default 0.0 
    '''

    temperature_grid = None
    '''Smoke temperature grid, range 0..1 represents 0..1000K 

    :type:  float array of 32 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0), (readonly) 
    '''

    time_scale = None
    '''Adjust simulation speed 

    :type:  float in [0.2, 1.5], default 0.0 
    '''

    use_adaptive_domain = None
    '''Adapt simulation resolution and size to fluid 

    :type:  boolean, default False 
    '''

    use_color_ramp = None
    '''Render a simulation field while mapping its voxels values to the colors of a ramp 

    :type:  boolean, default False 
    '''

    use_dissolve_smoke = None
    '''Enable smoke to disappear over time 

    :type:  boolean, default False 
    '''

    use_dissolve_smoke_log = None
    '''Using 1/x 

    :type:  boolean, default False 
    '''

    use_high_resolution = None
    '''Enable high resolution (using amplification) 

    :type:  boolean, default False 
    '''

    vector_display_type = None
    '''

    :type:  enum in [‘NEEDLE’, ‘STREAMLINE’], default ‘NEEDLE’ 
    '''

    vector_scale = None
    '''Multiplier for scaling the vectors 

    :type:  float in [0, 1000], default 0.0 
    '''

    velocity_grid = None
    '''Smoke velocity grid 

    :type:  float array of 32 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0), (readonly) 
    '''

    vorticity = None
    '''Amount of turbulence/rotation in fluid 

    :type:  float in [0.01, 4], default 0.0 
    '''


class SmokeFlowSettings:
    '''Smoke flow settings '''

    density = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    density_vertex_group = None
    '''Name of vertex group which determines surface emission rate 

    :type:  string, default “”, (never None) 
    '''

    fuel_amount = None
    '''

    :type:  float in [0, 10], default 0.0 
    '''

    noise_texture = None
    '''Texture that controls emission strength 

    :type:  Texture 
    '''

    particle_size = None
    '''Particle size in simulation cells 

    :type:  float in [0.1, 20], default 0.0 
    '''

    particle_system = None
    '''Particle systems emitted from the object 

    :type:  ParticleSystem 
    '''

    smoke_color = None
    '''Color of smoke 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    smoke_flow_source = None
    '''Change how smoke is emitted 

    :type:  enum in [‘PARTICLES’, ‘MESH’], default ‘PARTICLES’ 
    '''

    smoke_flow_type = None
    '''Change how flow affects the simulation 

    :type:  enum in [‘OUTFLOW’, ‘SMOKE’, ‘BOTH’, ‘FIRE’], default ‘SMOKE’ 
    '''

    subframes = None
    '''Number of additional samples to take between frames to improve quality of fast moving flows 

    :type:  int in [0, 50], default 0 
    '''

    surface_distance = None
    '''Maximum distance from mesh surface to emit smoke 

    :type:  float in [0, 10], default 0.0 
    '''

    temperature = None
    '''Temperature difference to ambient temperature 

    :type:  float in [-10, 10], default 0.0 
    '''

    texture_map_type = None
    '''Texture mapping type 

    :type:  enum in [‘AUTO’, ‘UV’], default ‘AUTO’ 
    '''

    texture_offset = None
    '''Z-offset of texture mapping 

    :type:  float in [0, 200], default 0.0 
    '''

    texture_size = None
    '''Size of texture mapping 

    :type:  float in [0.01, 10], default 0.0 
    '''

    use_absolute = None
    '''Only allow given density value in emitter area 

    :type:  boolean, default False 
    '''

    use_initial_velocity = None
    '''Smoke has some initial velocity when it is emitted 

    :type:  boolean, default False 
    '''

    use_particle_size = None
    '''Set particle size in simulation cells or use nearest cell 

    :type:  boolean, default False 
    '''

    use_texture = None
    '''Use a texture to control emission strength 

    :type:  boolean, default False 
    '''

    uv_layer = None
    '''UV map name 

    :type:  string, default “”, (never None) 
    '''

    velocity_factor = None
    '''Multiplier of source velocity passed to smoke 

    :type:  float in [-100, 100], default 0.0 
    '''

    velocity_normal = None
    '''Amount of normal directional velocity 

    :type:  float in [-100, 100], default 0.0 
    '''

    velocity_random = None
    '''Amount of random velocity 

    :type:  float in [0, 10], default 0.0 
    '''

    volume_density = None
    '''Factor for smoke emitted from inside the mesh volume 

    :type:  float in [0, 1], default 0.0 
    '''


class SmokeModifier:
    '''Smoke simulation modifier '''

    coll_settings = None
    '''

    :type:  SmokeCollSettings, (readonly) 
    '''

    domain_settings = None
    '''

    :type:  SmokeDomainSettings, (readonly) 
    '''

    flow_settings = None
    '''

    :type:  SmokeFlowSettings, (readonly) 
    '''

    smoke_type = None
    '''

    :type:  enum in [‘NONE’, ‘DOMAIN’, ‘FLOW’, ‘COLLISION’], default ‘NONE’ 
    '''


class SmoothGpencilModifier:
    '''Smooth effect modifier '''

    factor = None
    '''Amount of smooth to apply 

    :type:  float in [0, 2], default 0.0 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_vertex = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    step = None
    '''Number of times to apply smooth (high numbers can reduce fps) 

    :type:  int in [1, 10], default 0 
    '''

    use_edit_position = None
    '''The modifier affects the position of the point 

    :type:  boolean, default False 
    '''

    use_edit_strength = None
    '''The modifier affects the color strength of the point 

    :type:  boolean, default False 
    '''

    use_edit_thickness = None
    '''The modifier affects the thickness of the point 

    :type:  boolean, default False 
    '''

    use_edit_uv = None
    '''The modifier affects the UV rotation factor of the point 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name for modulating the deform 

    :type:  string, default “”, (never None) 
    '''


class SmoothModifier:
    '''Smoothing effect modifier '''

    factor = None
    '''Strength of modifier effect 

    :type:  float in [-inf, inf], default 0.0 
    '''

    iterations = None
    '''

    :type:  int in [-32768, 32767], default 0 
    '''

    use_x = None
    '''Smooth object along X axis 

    :type:  boolean, default False 
    '''

    use_y = None
    '''Smooth object along Y axis 

    :type:  boolean, default False 
    '''

    use_z = None
    '''Smooth object along Z axis 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Name of Vertex Group which determines influence of modifier per point 

    :type:  string, default “”, (never None) 
    '''


class SoftBodyModifier:
    '''Soft body simulation modifier '''

    point_cache = None
    '''

    :type:  PointCache, (readonly, never None) 
    '''

    settings = None
    '''

    :type:  SoftBodySettings, (readonly, never None) 
    '''


class SoftBodySettings:
    '''Soft body simulation settings for an object '''

    aero = None
    '''Make edges ‘sail’ 

    :type:  int in [0, 30000], default 0 
    '''

    aerodynamics_type = None
    '''Method of calculating aerodynamic interaction 

    :type:  enum in [‘SIMPLE’, ‘LIFT_FORCE’], default ‘SIMPLE’ 
    '''

    ball_damp = None
    '''Blending to inelastic collision 

    :type:  float in [0.001, 1], default 0.0 
    '''

    ball_size = None
    '''Absolute ball size or factor if not manually adjusted 

    :type:  float in [-10, 10], default 0.0 
    '''

    ball_stiff = None
    '''Ball inflating pressure 

    :type:  float in [0.001, 100], default 0.0 
    '''

    bend = None
    '''Bending Stiffness 

    :type:  float in [0, 10], default 0.0 
    '''

    choke = None
    '''‘Viscosity’ inside collision target 

    :type:  int in [0, 100], default 0 
    '''

    collision_collection = None
    '''Limit colliders to this collection 

    :type:  Collection 
    '''

    collision_type = None
    '''Choose Collision Type 

    :type:  enum in [‘MANUAL’, ‘AVERAGE’, ‘MINIMAL’, ‘MAXIMAL’, ‘MINMAX’], default ‘MANUAL’ 
    '''

    damping = None
    '''Edge spring friction 

    :type:  float in [0, 50], default 0.0 
    '''

    effector_weights = None
    '''

    :type:  EffectorWeights, (readonly) 
    '''

    error_threshold = None
    '''The Runge-Kutta ODE solver error limit, low value gives more precision, high values speed 

    :type:  float in [0.001, 10], default 0.0 
    '''

    friction = None
    '''General media friction for point movements 

    :type:  float in [0, 50], default 0.0 
    '''

    fuzzy = None
    '''Fuzziness while on collision, high values make collision handling faster but less stable 

    :type:  int in [1, 100], default 0 
    '''

    goal_default = None
    '''Default Goal (vertex target position) value 

    :type:  float in [0, 1], default 0.0 
    '''

    goal_friction = None
    '''Goal (vertex target position) friction 

    :type:  float in [0, 50], default 0.0 
    '''

    goal_max = None
    '''Goal maximum, vertex weights are scaled to match this range 

    :type:  float in [0, 1], default 0.0 
    '''

    goal_min = None
    '''Goal minimum, vertex weights are scaled to match this range 

    :type:  float in [0, 1], default 0.0 
    '''

    goal_spring = None
    '''Goal (vertex target position) spring stiffness 

    :type:  float in [0, 0.999], default 0.0 
    '''

    gravity = None
    '''Apply gravitation to point movement 

    :type:  float in [-10, 10], default 0.0 
    '''

    location_mass_center = None
    '''Location of Center of mass 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    mass = None
    '''General Mass value 

    :type:  float in [0, 50000], default 0.0 
    '''

    plastic = None
    '''Permanent deform 

    :type:  int in [0, 100], default 0 
    '''

    pull = None
    '''Edge spring stiffness when longer than rest length 

    :type:  float in [0, 0.999], default 0.0 
    '''

    push = None
    '''Edge spring stiffness when shorter than rest length 

    :type:  float in [0, 0.999], default 0.0 
    '''

    rotation_estimate = None
    '''Estimated rotation matrix 

    :type:  float multi-dimensional array of 3 * 3 items in [-inf, inf], default ((0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0)) 
    '''

    scale_estimate = None
    '''Estimated scale matrix 

    :type:  float multi-dimensional array of 3 * 3 items in [-inf, inf], default ((0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0)) 
    '''

    shear = None
    '''Shear Stiffness 

    :type:  float in [0, 1], default 0.0 
    '''

    speed = None
    '''Tweak timing for physics to control frequency and speed 

    :type:  float in [0.01, 100], default 0.0 
    '''

    spring_length = None
    '''Alter spring length to shrink/blow up (unit %) 0 to disable 

    :type:  int in [0, 200], default 0 
    '''

    step_max = None
    '''Maximal # solver steps/frame 

    :type:  int in [0, 30000], default 0 
    '''

    step_min = None
    '''Minimal # solver steps/frame 

    :type:  int in [0, 30000], default 0 
    '''

    use_auto_step = None
    '''Use velocities for automagic step sizes 

    :type:  boolean, default False 
    '''

    use_diagnose = None
    '''Turn on SB diagnose console prints 

    :type:  boolean, default False 
    '''

    use_edge_collision = None
    '''Edges collide too 

    :type:  boolean, default False 
    '''

    use_edges = None
    '''Use Edges as springs 

    :type:  boolean, default False 
    '''

    use_estimate_matrix = None
    '''Estimate matrix… split to COM, ROT, SCALE 

    :type:  boolean, default False 
    '''

    use_face_collision = None
    '''Faces collide too, can be very slow 

    :type:  boolean, default False 
    '''

    use_goal = None
    '''Define forces for vertices to stick to animated position 

    :type:  boolean, default False 
    '''

    use_self_collision = None
    '''Enable naive vertex ball self collision 

    :type:  boolean, default False 
    '''

    use_stiff_quads = None
    '''Add diagonal springs on 4-gons 

    :type:  boolean, default False 
    '''

    vertex_group_goal = None
    '''Control point weight values 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_mass = None
    '''Control point mass values 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_spring = None
    '''Control point spring strength values 

    :type:  string, default “”, (never None) 
    '''


class SolidifyModifier:
    '''Create a solid skin by extruding, compensating for sharp angles '''

    edge_crease_inner = None
    '''Assign a crease to inner edges 

    :type:  float in [0, 1], default 0.0 
    '''

    edge_crease_outer = None
    '''Assign a crease to outer edges 

    :type:  float in [0, 1], default 0.0 
    '''

    edge_crease_rim = None
    '''Assign a crease to the edges making up the rim 

    :type:  float in [0, 1], default 0.0 
    '''

    invert_vertex_group = None
    '''Invert the vertex group influence 

    :type:  boolean, default False 
    '''

    material_offset = None
    '''Offset material index of generated faces 

    :type:  int in [-32768, 32767], default 0 
    '''

    material_offset_rim = None
    '''Offset material index of generated rim faces 

    :type:  int in [-32768, 32767], default 0 
    '''

    offset = None
    '''Offset the thickness from the center 

    :type:  float in [-inf, inf], default 0.0 
    '''

    thickness = None
    '''Thickness of the shell 

    :type:  float in [-inf, inf], default 0.0 
    '''

    thickness_clamp = None
    '''Offset clamp based on geometry scale 

    :type:  float in [0, 100], default 0.0 
    '''

    thickness_vertex_group = None
    '''Thickness factor to use for zero vertex group influence 

    :type:  float in [0, 1], default 0.0 
    '''

    use_even_offset = None
    '''Maintain thickness by adjusting for sharp corners (slow, disable when not needed) 

    :type:  boolean, default False 
    '''

    use_flip_normals = None
    '''Invert the face direction 

    :type:  boolean, default False 
    '''

    use_quality_normals = None
    '''Calculate normals which result in more even thickness (slow, disable when not needed) 

    :type:  boolean, default False 
    '''

    use_rim = None
    '''Create edge loops between the inner and outer surfaces on face edges (slow, disable when not needed) 

    :type:  boolean, default False 
    '''

    use_rim_only = None
    '''Only add the rim to the original data 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''


class Sound:
    '''Sound data-block referencing an external or packed sound file '''

    filepath = None
    '''Sound sample file used by this Sound data-block 

    :type:  string, default “”, (never None) 
    '''

    packed_file = None
    '''

    :type:  PackedFile, (readonly) 
    '''

    use_memory_cache = None
    '''The sound file is decoded and loaded into RAM 

    :type:  boolean, default False 
    '''

    use_mono = None
    '''If the file contains multiple audio channels they are rendered to a single one 

    :type:  boolean, default False 
    '''

    factory = None
    '''The aud.Factory object of the sound. (readonly) '''

    def pack(self):
        '''Pack the sound into the current blend file 

        '''
        pass

    def unpack(self, method='USE_LOCAL'):
        '''Unpack the sound to the samples filename 

        :param method: method, How to unpack 
        :type method: enum in ['USE_LOCAL', 'WRITE_LOCAL', 'USE_ORIGINAL', 'WRITE_ORIGINAL'], (optional)
        '''
        pass


class SoundSequence:
    '''Sequence strip defining a sound to be played over a period of time '''

    animation_offset_end = None
    '''Animation end offset (trim end) 

    :type:  int in [0, inf], default 0 
    '''

    animation_offset_start = None
    '''Animation start offset (trim start) 

    :type:  int in [0, inf], default 0 
    '''

    pan = None
    '''Playback panning of the sound (only for Mono sources) 

    :type:  float in [-2, 2], default 0.0 
    '''

    pitch = None
    '''Playback pitch of the sound 

    :type:  float in [0.1, 10], default 0.0 
    '''

    show_waveform = None
    '''Display the audio waveform inside the clip 

    :type:  boolean, default False 
    '''

    sound = None
    '''Sound data-block used by this sequence 

    :type:  Sound 
    '''

    volume = None
    '''Playback volume of the sound 

    :type:  float in [0, 100], default 0.0 
    '''


class Space:
    '''Space data for a screen area '''

    show_locked_time = None
    '''

    :type:  boolean, default False 
    '''

    type = None
    '''Space data type 

    :type:  enum in [‘EMPTY’, ‘VIEW_3D’, ‘IMAGE_EDITOR’, ‘NODE_EDITOR’, ‘SEQUENCE_EDITOR’, ‘CLIP_EDITOR’, ‘DOPESHEET_EDITOR’, ‘GRAPH_EDITOR’, ‘NLA_EDITOR’, ‘TEXT_EDITOR’, ‘CONSOLE’, ‘INFO’, ‘TOPBAR’, ‘STATUSBAR’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILE_BROWSER’, ‘PREFERENCES’], default ‘EMPTY’, (readonly) 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceClipEditor:
    '''Clip editor space data '''

    clip = None
    '''Movie clip displayed and edited in this space 

    :type:  MovieClip 
    '''

    clip_user = None
    '''Parameters defining which frame of the movie clip is displayed 

    :type:  MovieClipUser, (readonly, never None) 
    '''

    grease_pencil_source = None
    '''Where the grease pencil comes from 

    :type:  enum in [‘CLIP’, ‘TRACK’], default ‘CLIP’ 
    '''

    lock_selection = None
    '''Lock viewport to selected markers during playback 

    :type:  boolean, default False 
    '''

    lock_time_cursor = None
    '''Lock curves view to time cursor during playback and tracking 

    :type:  boolean, default False 
    '''

    mask = None
    '''Mask displayed and edited in this space 

    :type:  Mask 
    '''

    mask_display_type = None
    '''Display type for mask splines 

    :type:  enum in [‘OUTLINE’, ‘DASH’, ‘BLACK’, ‘WHITE’], default ‘OUTLINE’ 
    '''

    mask_overlay_mode = None
    '''Overlay mode of rasterized mask 

    :type:  enum in [‘ALPHACHANNEL’, ‘COMBINED’], default ‘ALPHACHANNEL’ 
    '''

    mode = None
    '''Editing context being displayed 

    :type:  enum in [‘TRACKING’, ‘MASK’], default ‘TRACKING’ 
    '''

    path_length = None
    '''Length of displaying path, in frames 

    :type:  int in [0, inf], default 0 
    '''

    pivot_point = None
    '''Pivot center for rotation/scaling 

    :type:  enum in [‘BOUNDING_BOX_CENTER’, ‘CURSOR’, ‘INDIVIDUAL_ORIGINS’, ‘MEDIAN_POINT’], default ‘BOUNDING_BOX_CENTER’ 
    '''

    scopes = None
    '''Scopes to visualize movie clip statistics 

    :type:  MovieClipScopes, (readonly) 
    '''

    show_annotation = None
    '''Show annotations for this view 

    :type:  boolean, default False 
    '''

    show_blue_channel = None
    '''Show blue channel in the frame 

    :type:  boolean, default False 
    '''

    show_bundles = None
    '''Show projection of 3D markers into footage 

    :type:  boolean, default False 
    '''

    show_disabled = None
    '''Show disabled tracks from the footage 

    :type:  boolean, default False 
    '''

    show_filters = None
    '''Show filters for graph editor 

    :type:  boolean, default False 
    '''

    show_graph_frames = None
    '''Show curve for per-frame average error (camera motion should be solved first) 

    :type:  boolean, default False 
    '''

    show_graph_hidden = None
    '''Include channels from objects/bone that aren’t visible 

    :type:  boolean, default False 
    '''

    show_graph_only_selected = None
    '''Only include channels relating to selected objects and data 

    :type:  boolean, default False 
    '''

    show_graph_tracks_error = None
    '''Display the reprojection error curve for selected tracks 

    :type:  boolean, default False 
    '''

    show_graph_tracks_motion = None
    '''Display the speed curves (in “x” direction red, in “y” direction green) for the selected tracks 

    :type:  boolean, default False 
    '''

    show_green_channel = None
    '''Show green channel in the frame 

    :type:  boolean, default False 
    '''

    show_grid = None
    '''Show grid showing lens distortion 

    :type:  boolean, default False 
    '''

    show_marker_pattern = None
    '''Show pattern boundbox for markers 

    :type:  boolean, default False 
    '''

    show_marker_search = None
    '''Show search boundbox for markers 

    :type:  boolean, default False 
    '''

    show_mask_overlay = None
    '''

    :type:  boolean, default False 
    '''

    show_mask_smooth = None
    '''

    :type:  boolean, default False 
    '''

    show_metadata = None
    '''Show metadata of clip 

    :type:  boolean, default False 
    '''

    show_names = None
    '''Show track names and status 

    :type:  boolean, default False 
    '''

    show_red_channel = None
    '''Show red channel in the frame 

    :type:  boolean, default False 
    '''

    show_seconds = None
    '''Show timing in seconds not frames 

    :type:  boolean, default False 
    '''

    show_stable = None
    '''Show stable footage in editor (if stabilization is enabled) 

    :type:  boolean, default False 
    '''

    show_tiny_markers = None
    '''Show markers in a more compact manner 

    :type:  boolean, default False 
    '''

    show_track_path = None
    '''Show path of how track moves 

    :type:  boolean, default False 
    '''

    use_grayscale_preview = None
    '''Display frame in grayscale mode 

    :type:  boolean, default False 
    '''

    use_manual_calibration = None
    '''Use manual calibration helpers 

    :type:  boolean, default False 
    '''

    use_mute_footage = None
    '''Mute footage and show black background instead 

    :type:  boolean, default False 
    '''

    view = None
    '''Type of the clip editor view 

    :type:  enum in [‘CLIP’, ‘GRAPH’, ‘DOPESHEET’], default ‘CLIP’ 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceConsole:
    '''Interactive python console '''

    font_size = None
    '''Font size to use for displaying the text 

    :type:  int in [8, 32], default 0 
    '''

    history = None
    '''Command history 

    :type:  bpy_prop_collection of ConsoleLine, (readonly) 
    '''

    language = None
    '''Command line prompt language 

    :type:  string, default “”, (never None) 
    '''

    prompt = None
    '''Command line prompt 

    :type:  string, default “”, (never None) 
    '''

    scrollback = None
    '''Command output 

    :type:  bpy_prop_collection of ConsoleLine, (readonly) 
    '''

    select_end = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    select_start = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceDopeSheetEditor:
    '''Dope Sheet space data '''

    action = None
    '''Action displayed and edited in this space 

    :type:  Action 
    '''

    auto_snap = None
    '''Automatic time snapping settings for transformations 

    :type:  enum in [‘NONE’, ‘STEP’, ‘TIME_STEP’, ‘FRAME’, ‘SECOND’, ‘MARKER’], default ‘NONE’ 
    '''

    cache_cloth = None
    '''Show the active object’s cloth point cache 

    :type:  boolean, default False 
    '''

    cache_dynamicpaint = None
    '''Show the active object’s Dynamic Paint cache 

    :type:  boolean, default False 
    '''

    cache_particles = None
    '''Show the active object’s particle point cache 

    :type:  boolean, default False 
    '''

    cache_rigidbody = None
    '''Show the active object’s Rigid Body cache 

    :type:  boolean, default False 
    '''

    cache_smoke = None
    '''Show the active object’s smoke cache 

    :type:  boolean, default False 
    '''

    cache_softbody = None
    '''Show the active object’s softbody point cache 

    :type:  boolean, default False 
    '''

    dopesheet = None
    '''Settings for filtering animation data 

    :type:  DopeSheet, (readonly) 
    '''

    mode = None
    '''Editing context being displayed 

    :type:  enum in [‘DOPESHEET’, ‘TIMELINE’, ‘ACTION’, ‘SHAPEKEY’, ‘GPENCIL’, ‘MASK’, ‘CACHEFILE’], default ‘ACTION’ 
    '''

    show_cache = None
    '''Show the status of cached frames in the timeline 

    :type:  boolean, default False 
    '''

    show_extremes = None
    '''Mark keyframes where the key value flow changes direction, based on comparison with adjacent keys 

    :type:  boolean, default False 
    '''

    show_frame_indicator = None
    '''Show frame number beside the current frame indicator line 

    :type:  boolean, default False 
    '''

    show_group_colors = None
    '''Display groups and channels with colors matching their corresponding groups (pose bones only currently) 

    :type:  boolean, default False 
    '''

    show_interpolation = None
    '''Display keyframe handle types and non-bezier interpolation modes 

    :type:  boolean, default False 
    '''

    show_marker_lines = None
    '''Show a vertical line for every marker 

    :type:  boolean, default False 
    '''

    show_pose_markers = None
    '''Show markers belonging to the active action instead of Scene markers (Action and Shape Key Editors only) 

    :type:  boolean, default False 
    '''

    show_seconds = None
    '''Show timing in seconds not frames 

    :type:  boolean, default False 
    '''

    show_sliders = None
    '''Show sliders beside F-Curve channels 

    :type:  boolean, default False 
    '''

    ui_mode = None
    '''Editing context being displayed 

    :type:  enum in [‘DOPESHEET’, ‘ACTION’, ‘SHAPEKEY’, ‘GPENCIL’, ‘MASK’, ‘CACHEFILE’], default ‘ACTION’ 
    '''

    use_auto_merge_keyframes = None
    '''Automatically merge nearby keyframes 

    :type:  boolean, default False 
    '''

    use_marker_sync = None
    '''Sync Markers with keyframe edits 

    :type:  boolean, default False 
    '''

    use_realtime_update = None
    '''When transforming keyframes, changes to the animation data are flushed to other views 

    :type:  boolean, default False 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceFileBrowser:
    '''File browser space data '''

    active_operator = None
    '''

    :type:  Operator, (readonly) 
    '''

    bookmarks = None
    '''User’s bookmarks 

    :type:  bpy_prop_collection of FileBrowserFSMenuEntry, (readonly) 
    '''

    bookmarks_active = None
    '''Index of active bookmark (-1 if none) 

    :type:  int in [-32768, 32767], default -1 
    '''

    operator = None
    '''

    :type:  Operator, (readonly) 
    '''

    params = None
    '''Parameters and Settings for the Filebrowser 

    :type:  FileSelectParams, (readonly) 
    '''

    recent_folders = None
    '''

    :type:  bpy_prop_collection of FileBrowserFSMenuEntry, (readonly) 
    '''

    recent_folders_active = None
    '''Index of active recent folder (-1 if none) 

    :type:  int in [-32768, 32767], default -1 
    '''

    system_bookmarks = None
    '''System’s bookmarks 

    :type:  bpy_prop_collection of FileBrowserFSMenuEntry, (readonly) 
    '''

    system_bookmarks_active = None
    '''Index of active system bookmark (-1 if none) 

    :type:  int in [-32768, 32767], default -1 
    '''

    system_folders = None
    '''System’s folders (usually root, available hard drives, etc) 

    :type:  bpy_prop_collection of FileBrowserFSMenuEntry, (readonly) 
    '''

    system_folders_active = None
    '''Index of active system folder (-1 if none) 

    :type:  int in [-32768, 32767], default -1 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceGraphEditor:
    '''Graph Editor space data '''

    auto_snap = None
    '''Automatic time snapping settings for transformations 

    :type:  enum in [‘NONE’, ‘STEP’, ‘TIME_STEP’, ‘FRAME’, ‘SECOND’, ‘MARKER’], default ‘NONE’ 
    '''

    cursor_position_x = None
    '''Graph Editor 2D-Value cursor - X-Value component 

    :type:  float in [-inf, inf], default 0.0 
    '''

    cursor_position_y = None
    '''Graph Editor 2D-Value cursor - Y-Value component 

    :type:  float in [-inf, inf], default 0.0 
    '''

    dopesheet = None
    '''Settings for filtering animation data 

    :type:  DopeSheet, (readonly) 
    '''

    has_ghost_curves = None
    '''Graph Editor instance has some ghost curves stored 

    :type:  boolean, default False, (readonly) 
    '''

    mode = None
    '''Editing context being displayed 

    :type:  enum in [‘FCURVES’, ‘DRIVERS’], default ‘FCURVES’ 
    '''

    pivot_point = None
    '''Pivot center for rotation/scaling 

    :type:  enum in [‘BOUNDING_BOX_CENTER’, ‘CURSOR’, ‘INDIVIDUAL_ORIGINS’], default ‘BOUNDING_BOX_CENTER’ 
    '''

    show_cursor = None
    '''Show 2D cursor 

    :type:  boolean, default False 
    '''

    show_frame_indicator = None
    '''Show frame number beside the current frame indicator line 

    :type:  boolean, default False 
    '''

    show_group_colors = None
    '''Display groups and channels with colors matching their corresponding groups 

    :type:  boolean, default False 
    '''

    show_handles = None
    '''Show handles of Bezier control points 

    :type:  boolean, default False 
    '''

    show_marker_lines = None
    '''Show a vertical line for every marker 

    :type:  boolean, default False 
    '''

    show_seconds = None
    '''Show timing in seconds not frames 

    :type:  boolean, default False 
    '''

    show_sliders = None
    '''Show sliders beside F-Curve channels 

    :type:  boolean, default False 
    '''

    use_auto_merge_keyframes = None
    '''Automatically merge nearby keyframes 

    :type:  boolean, default False 
    '''

    use_auto_normalization = None
    '''Automatically recalculate curve normalization on every curve edit 

    :type:  boolean, default False 
    '''

    use_beauty_drawing = None
    '''Display F-Curves using Anti-Aliasing and other fancy effects (disable for better performance) 

    :type:  boolean, default False 
    '''

    use_normalization = None
    '''Display curves in normalized to -1..1 range, for easier editing of multiple curves with different ranges 

    :type:  boolean, default False 
    '''

    use_only_selected_curves_handles = None
    '''Only keyframes of selected F-Curves are visible and editable 

    :type:  boolean, default False 
    '''

    use_only_selected_keyframe_handles = None
    '''Only show and edit handles of selected keyframes 

    :type:  boolean, default False 
    '''

    use_realtime_update = None
    '''When transforming keyframes, changes to the animation data are flushed to other views 

    :type:  boolean, default False 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceImageEditor:
    '''Image and UV editor space data '''

    cursor_location = None
    '''2D cursor location for this view 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    display_channels = None
    '''Channels of the image to draw 

    :type:  enum in [‘COLOR_ALPHA’, ‘COLOR’, ‘ALPHA’, ‘Z_BUFFER’, ‘RED’, ‘GREEN’, ‘BLUE’], default ‘COLOR’ 
    '''

    grease_pencil = None
    '''Grease pencil data for this space 

    :type:  GreasePencil 
    '''

    image = None
    '''Image displayed and edited in this space 

    :type:  Image 
    '''

    image_user = None
    '''Parameters defining which layer, pass and frame of the image is displayed 

    :type:  ImageUser, (readonly, never None) 
    '''

    mask = None
    '''Mask displayed and edited in this space 

    :type:  Mask 
    '''

    mask_display_type = None
    '''Display type for mask splines 

    :type:  enum in [‘OUTLINE’, ‘DASH’, ‘BLACK’, ‘WHITE’], default ‘OUTLINE’ 
    '''

    mask_overlay_mode = None
    '''Overlay mode of rasterized mask 

    :type:  enum in [‘ALPHACHANNEL’, ‘COMBINED’], default ‘ALPHACHANNEL’ 
    '''

    mode = None
    '''Editing context being displayed 

    :type:  enum in [‘VIEW’, ‘UV’, ‘PAINT’, ‘MASK’], default ‘VIEW’ 
    '''

    pivot_point = None
    '''Rotation/Scaling Pivot 

    :type:  enum in [‘BOUNDING_BOX_CENTER’, ‘CURSOR’, ‘INDIVIDUAL_ORIGINS’, ‘MEDIAN_POINT’, ‘ACTIVE_ELEMENT’], default ‘BOUNDING_BOX_CENTER’ 
    '''

    sample_histogram = None
    '''Sampled colors along line 

    :type:  Histogram, (readonly) 
    '''

    scopes = None
    '''Scopes to visualize image statistics 

    :type:  Scopes, (readonly) 
    '''

    show_annotation = None
    '''Show annotations for this view 

    :type:  boolean, default False 
    '''

    show_mask_overlay = None
    '''

    :type:  boolean, default False 
    '''

    show_mask_smooth = None
    '''

    :type:  boolean, default False 
    '''

    show_maskedit = None
    '''Show Mask editing related properties 

    :type:  boolean, default False, (readonly) 
    '''

    show_paint = None
    '''Show paint related properties 

    :type:  boolean, default False, (readonly) 
    '''

    show_render = None
    '''Show render related properties 

    :type:  boolean, default False, (readonly) 
    '''

    show_repeat = None
    '''Display the image repeated outside of the main view 

    :type:  boolean, default False 
    '''

    show_stereo_3d = None
    '''Display the image in Stereo 3D 

    :type:  boolean, default False 
    '''

    show_uvedit = None
    '''Show UV editing related properties 

    :type:  boolean, default False, (readonly) 
    '''

    ui_mode = None
    '''Editing context being displayed 

    :type:  enum in [‘VIEW’, ‘PAINT’, ‘MASK’], default ‘VIEW’ 
    '''

    use_image_pin = None
    '''Display current image regardless of object selection 

    :type:  boolean, default False 
    '''

    use_realtime_update = None
    '''Update other affected window spaces automatically to reflect changes during interactive operations such as transform 

    :type:  boolean, default False 
    '''

    uv_editor = None
    '''UV editor settings 

    :type:  SpaceUVEditor, (readonly, never None) 
    '''

    zoom = None
    '''Zoom factor 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0), (readonly) 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceInfo:
    '''Info space data '''

    show_report_debug = None
    '''Display debug reporting info 

    :type:  boolean, default False 
    '''

    show_report_error = None
    '''Display error text 

    :type:  boolean, default False 
    '''

    show_report_info = None
    '''Display general information 

    :type:  boolean, default False 
    '''

    show_report_operator = None
    '''Display the operator log 

    :type:  boolean, default False 
    '''

    show_report_warning = None
    '''Display warnings 

    :type:  boolean, default False 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceNLA:
    '''NLA editor space data '''

    auto_snap = None
    '''Automatic time snapping settings for transformations 

    :type:  enum in [‘NONE’, ‘STEP’, ‘TIME_STEP’, ‘FRAME’, ‘SECOND’, ‘MARKER’], default ‘NONE’ 
    '''

    dopesheet = None
    '''Settings for filtering animation data 

    :type:  DopeSheet, (readonly) 
    '''

    show_frame_indicator = None
    '''Show frame number beside the current frame indicator line 

    :type:  boolean, default False 
    '''

    show_local_markers = None
    '''Show action-local markers on the strips, useful when synchronizing timing across strips 

    :type:  boolean, default False 
    '''

    show_marker_lines = None
    '''Show a vertical line for every marker 

    :type:  boolean, default False 
    '''

    show_seconds = None
    '''Show timing in seconds not frames 

    :type:  boolean, default False 
    '''

    show_strip_curves = None
    '''Show influence F-Curves on strips 

    :type:  boolean, default False 
    '''

    use_realtime_update = None
    '''When transforming strips, changes to the animation data are flushed to other views 

    :type:  boolean, default False 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceNodeEditor:
    '''Node editor space data '''

    backdrop_channels = None
    '''Channels of the image to draw 

    :type:  enum in [‘COLOR_ALPHA’, ‘COLOR’, ‘ALPHA’, ‘RED’, ‘GREEN’, ‘BLUE’], default ‘COLOR’ 
    '''

    backdrop_offset = None
    '''Backdrop offset 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    backdrop_zoom = None
    '''Backdrop zoom factor 

    :type:  float in [0.01, inf], default 1.0 
    '''

    cursor_location = None
    '''Location for adding new nodes 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    edit_tree = None
    '''Node tree being displayed and edited 

    :type:  NodeTree, (readonly) 
    '''

    id = None
    '''Data-block whose nodes are being edited 

    :type:  ID, (readonly) 
    '''

    id_from = None
    '''Data-block from which the edited data-block is linked 

    :type:  ID, (readonly) 
    '''

    insert_offset_direction = None
    '''Direction to offset nodes on insertion 

    :type:  enum in [‘RIGHT’, ‘LEFT’], default ‘RIGHT’ 
    '''

    node_tree = None
    '''Base node tree from context 

    :type:  NodeTree 
    '''

    path = None
    '''Path from the data-block to the currently edited node tree 

    :type:  SpaceNodeEditorPath bpy_prop_collection of NodeTreePath, (readonly) 
    '''

    pin = None
    '''Use the pinned node tree 

    :type:  boolean, default False 
    '''

    shader_type = None
    '''Type of data to take shader from 

    :type:  enum in [‘OBJECT’, ‘WORLD’, ‘LINESTYLE’], default ‘OBJECT’ 
    '''

    show_annotation = None
    '''Show annotations for this view 

    :type:  boolean, default False 
    '''

    show_backdrop = None
    '''Use active Viewer Node output as backdrop for compositing nodes 

    :type:  boolean, default False 
    '''

    texture_type = None
    '''Type of data to take texture from 

    :type:  enum in [‘WORLD’, ‘BRUSH’, ‘LINESTYLE’], default ‘WORLD’ 
    '''

    tree_type = None
    '''Node tree type to display and edit 

    :type:  enum in [‘DUMMY’], default ‘DUMMY’ 
    '''

    use_auto_render = None
    '''Re-render and composite changed layers on 3D edits 

    :type:  boolean, default False 
    '''

    use_insert_offset = None
    '''Automatically offset the following or previous nodes in a chain when inserting a new node 

    :type:  boolean, default False 
    '''

    def cursor_location_from_region(self, x, y):
        '''Set the cursor location using region coordinates 

        :param x: x, Region x coordinate 
        :type x: int in [-inf, inf]
        :param y: y, Region y coordinate 
        :type y: int in [-inf, inf]
        '''
        pass

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceNodeEditorPath:
    '''Get the node tree path as a string '''

    to_string = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    def clear(self):
        '''Reset the node tree path 

        '''
        pass

    def start(self, node_tree):
        '''Set the root node tree 

        :param node_tree: Node Tree 
        :type node_tree: NodeTree
        '''
        pass

    def append(self, node_tree, node=None):
        '''Append a node group tree to the path 

        :param node_tree: Node Tree, Node tree to append to the node editor path 
        :type node_tree: NodeTree
        :param node: Node, Group node linking to this node tree 
        :type node: Node, (optional)
        '''
        pass

    def pop(self):
        '''Remove the last node tree from the path 

        '''
        pass


class SpaceOutliner:
    '''Outliner space data '''

    display_mode = None
    '''Type of information to display 

    :type:  enum in [‘SCENES’, ‘VIEW_LAYER’, ‘SEQUENCE’, ‘LIBRARIES’, ‘DATA_API’, ‘ORPHAN_DATA’], default ‘SCENES’ 
    '''

    filter_id_type = None
    '''Data-block type to show 

    :type:  enum in [‘ACTION’, ‘ARMATURE’, ‘BRUSH’, ‘CAMERA’, ‘CACHEFILE’, ‘CURVE’, ‘FONT’, ‘GREASEPENCIL’, ‘COLLECTION’, ‘IMAGE’, ‘KEY’, ‘LIGHT’, ‘LIBRARY’, ‘LINESTYLE’, ‘LATTICE’, ‘MASK’, ‘MATERIAL’, ‘META’, ‘MESH’, ‘MOVIECLIP’, ‘NODETREE’, ‘OBJECT’, ‘PAINTCURVE’, ‘PALETTE’, ‘PARTICLE’, ‘LIGHT_PROBE’, ‘SCENE’, ‘SOUND’, ‘SPEAKER’, ‘TEXT’, ‘TEXTURE’, ‘WINDOWMANAGER’, ‘WORLD’, ‘WORKSPACE’], default ‘ACTION’ 
    '''

    filter_state = None
    '''

    :type:  enum in [‘ALL’, ‘VISIBLE’, ‘SELECTED’, ‘ACTIVE’], default ‘ALL’ 
    '''

    filter_text = None
    '''Live search filtering string 

    :type:  string, default “”, (never None) 
    '''

    show_restrict_columns = None
    '''Show column 

    :type:  boolean, default False 
    '''

    use_filter_case_sensitive = None
    '''Only use case sensitive matches of search string 

    :type:  boolean, default False 
    '''

    use_filter_children = None
    '''Show children 

    :type:  boolean, default False 
    '''

    use_filter_collection = None
    '''Show collections 

    :type:  boolean, default False 
    '''

    use_filter_complete = None
    '''Only use complete matches of search string 

    :type:  boolean, default False 
    '''

    use_filter_id_type = None
    '''Show only data-blocks of one type 

    :type:  boolean, default False 
    '''

    use_filter_object = None
    '''Show objects 

    :type:  boolean, default False 
    '''

    use_filter_object_armature = None
    '''Show armature objects 

    :type:  boolean, default False 
    '''

    use_filter_object_camera = None
    '''Show camera objects 

    :type:  boolean, default False 
    '''

    use_filter_object_content = None
    '''Show what is inside the objects elements 

    :type:  boolean, default False 
    '''

    use_filter_object_empty = None
    '''Show empty objects 

    :type:  boolean, default False 
    '''

    use_filter_object_light = None
    '''Show light objects 

    :type:  boolean, default False 
    '''

    use_filter_object_mesh = None
    '''Show mesh objects 

    :type:  boolean, default False 
    '''

    use_filter_object_others = None
    '''Show curves, lattices, light probes, fonts, … 

    :type:  boolean, default False 
    '''

    use_sort_alpha = None
    '''

    :type:  boolean, default False 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpacePreferences:
    '''Blender preferences space data '''

    filter_text = None
    '''Search term for filtering in the UI 

    :type:  string, default “”, (never None) 
    '''

    filter_type = None
    '''Filter method 

    :type:  enum in [‘NAME’, ‘KEY’], default ‘NAME’ 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceProperties:
    '''Properties space data '''

    context = None
    '''

    :type:  enum in [‘TOOL’, ‘SCENE’, ‘RENDER’, ‘OUTPUT’, ‘VIEW_LAYER’, ‘WORLD’, ‘OBJECT’, ‘CONSTRAINT’, ‘MODIFIER’, ‘DATA’, ‘BONE’, ‘BONE_CONSTRAINT’, ‘MATERIAL’, ‘TEXTURE’, ‘PARTICLES’, ‘PHYSICS’, ‘SHADERFX’], default ‘RENDER’ 
    '''

    pin_id = None
    '''

    :type:  ID 
    '''

    use_pin_id = None
    '''Use the pinned context 

    :type:  boolean, default False 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceSequenceEditor:
    '''Sequence editor space data '''

    display_channel = None
    '''The channel number shown in the image preview. 0 is the result of all strips combined 

    :type:  int in [-5, 32], default 0 
    '''

    display_mode = None
    '''View mode to use for displaying sequencer output 

    :type:  enum in [‘IMAGE’, ‘WAVEFORM’, ‘VECTOR_SCOPE’, ‘HISTOGRAM’], default ‘IMAGE’ 
    '''

    grease_pencil = None
    '''Grease Pencil data for this Preview region 

    :type:  GreasePencil 
    '''

    overlay_type = None
    '''Overlay draw type 

    :type:  enum in [‘RECTANGLE’, ‘REFERENCE’, ‘CURRENT’], default ‘RECTANGLE’ 
    '''

    preview_channels = None
    '''Channels of the preview to draw 

    :type:  enum in [‘COLOR_ALPHA’, ‘COLOR’], default ‘COLOR’ 
    '''

    proxy_render_size = None
    '''Display preview using full resolution or different proxy resolutions 

    :type:  enum in [‘NONE’, ‘SCENE’, ‘PROXY_25’, ‘PROXY_50’, ‘PROXY_75’, ‘PROXY_100’, ‘FULL’], default ‘SCENE’ 
    '''

    show_annotation = None
    '''Show annotations for this view 

    :type:  boolean, default False 
    '''

    show_backdrop = None
    '''Display result under strips 

    :type:  boolean, default False 
    '''

    show_frame_indicator = None
    '''Show frame number beside the current frame indicator line 

    :type:  boolean, default False 
    '''

    show_frames = None
    '''Display frames rather than seconds 

    :type:  boolean, default False 
    '''

    show_marker_lines = None
    '''Show a vertical line for every marker 

    :type:  boolean, default False 
    '''

    show_metadata = None
    '''Show metadata of first visible strip 

    :type:  boolean, default False 
    '''

    show_overexposed = None
    '''Show overexposed areas with zebra stripes 

    :type:  int in [0, 110], default 0 
    '''

    show_safe_areas = None
    '''Show TV title safe and action safe areas in preview 

    :type:  boolean, default False 
    '''

    show_safe_center = None
    '''Show safe areas to fit content in a different aspect ratio 

    :type:  boolean, default False 
    '''

    show_seconds = None
    '''Show timing in seconds not frames 

    :type:  boolean, default False 
    '''

    show_separate_color = None
    '''Separate color channels in preview 

    :type:  boolean, default False 
    '''

    show_strip_offset = None
    '''Display strip in/out offsets 

    :type:  boolean, default False 
    '''

    use_marker_sync = None
    '''Transform markers as well as strips 

    :type:  boolean, default False 
    '''

    view_type = None
    '''Type of the Sequencer view (sequencer, preview or both) 

    :type:  enum in [‘SEQUENCER’, ‘PREVIEW’, ‘SEQUENCER_PREVIEW’], default ‘SEQUENCER’ 
    '''

    waveform_display_type = None
    '''How Waveforms are drawn 

    :type:  enum in [‘NO_WAVEFORMS’, ‘ALL_WAVEFORMS’, ‘DEFAULT_WAVEFORMS’], default ‘DEFAULT_WAVEFORMS’ 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceTextEditor:
    '''Text editor space data '''

    find_text = None
    '''Text to search for with the find tool 

    :type:  string, default “”, (never None) 
    '''

    font_size = None
    '''Font size to use for displaying the text 

    :type:  int in [8, 32], default 0 
    '''

    margin_column = None
    '''Column number to show right margin at 

    :type:  int in [0, 1024], default 0 
    '''

    replace_text = None
    '''Text to replace selected text with using the replace tool 

    :type:  string, default “”, (never None) 
    '''

    show_line_highlight = None
    '''Highlight the current line 

    :type:  boolean, default False 
    '''

    show_line_numbers = None
    '''Show line numbers next to the text 

    :type:  boolean, default False 
    '''

    show_margin = None
    '''Show right margin 

    :type:  boolean, default False 
    '''

    show_syntax_highlight = None
    '''Syntax highlight for scripting 

    :type:  boolean, default False 
    '''

    show_word_wrap = None
    '''Wrap words if there is not enough horizontal space 

    :type:  boolean, default False 
    '''

    tab_width = None
    '''Number of spaces to display tabs with 

    :type:  int in [2, 8], default 0 
    '''

    text = None
    '''Text displayed and edited in this space 

    :type:  Text 
    '''

    top = None
    '''Top line visible 

    :type:  int in [0, inf], default 0 
    '''

    use_find_all = None
    '''Search in all text data-blocks, instead of only the active one 

    :type:  boolean, default False 
    '''

    use_find_wrap = None
    '''Search again from the start of the file when reaching the end 

    :type:  boolean, default False 
    '''

    use_live_edit = None
    '''Run python while editing 

    :type:  boolean, default False 
    '''

    use_match_case = None
    '''Search string is sensitive to uppercase and lowercase letters 

    :type:  boolean, default False 
    '''

    use_overwrite = None
    '''Overwrite characters when typing rather than inserting them 

    :type:  boolean, default False 
    '''

    visible_lines = None
    '''Amount of lines that can be visible in current editor 

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    def region_location_from_cursor(self, line, column):
        '''Retrieve the region position from the given line and character position 

        :param line: Line, Line index 
        :type line: int in [-inf, inf]
        :param column: Column, Column index 
        :type column: int in [-inf, inf]
        :rtype: int array of 2 items in [-1, inf] 
        :return:  Region coordinates 
        '''
        pass

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class SpaceUVEditor:
    '''UV editor data for the image editor space '''

    display_stretch_type = None
    '''Type of stretch to draw 

    :type:  enum in [‘ANGLE’, ‘AREA’], default ‘ANGLE’ 
    '''

    edge_display_type = None
    '''Display type for drawing UV edges 

    :type:  enum in [‘OUTLINE’, ‘DASH’, ‘BLACK’, ‘WHITE’], default ‘OUTLINE’ 
    '''

    lock_bounds = None
    '''Constraint to stay within the image bounds while editing 

    :type:  boolean, default False 
    '''

    pixel_snap_mode = None
    '''Snap UVs to pixels while editing 

    :type:  enum in [‘DISABLED’, ‘CORNER’, ‘CENTER’], default ‘DISABLED’ 
    '''

    show_edges = None
    '''Display edges in vertex select mode 

    :type:  boolean, default False 
    '''

    show_faces = None
    '''Display faces over the image 

    :type:  boolean, default False 
    '''

    show_metadata = None
    '''Display metadata properties of the image 

    :type:  boolean, default False 
    '''

    show_modified_edges = None
    '''Display edges after modifiers are applied 

    :type:  boolean, default False 
    '''

    show_pixel_coords = None
    '''Display UV coordinates in pixels rather than from 0.0 to 1.0 

    :type:  boolean, default False 
    '''

    show_smooth_edges = None
    '''Display UV edges anti-aliased 

    :type:  boolean, default False 
    '''

    show_stretch = None
    '''Display faces colored according to the difference in shape between UVs and their 3D coordinates (blue for low distortion, red for high distortion) 

    :type:  boolean, default False 
    '''

    show_texpaint = None
    '''Display overlay of texture paint uv layer 

    :type:  boolean, default False 
    '''

    sticky_select_mode = None
    '''Automatically select also UVs sharing the same vertex as the ones being selected 

    :type:  enum in [‘DISABLED’, ‘SHARED_LOCATION’, ‘SHARED_VERTEX’], default ‘SHARED_LOCATION’ 
    '''

    use_live_unwrap = None
    '''Continuously unwrap the selected UV island while transforming pinned vertices 

    :type:  boolean, default False 
    '''


class SpaceView3D:
    '''3D View space data '''

    camera = None
    '''Active camera used in this view (when unlocked from the scene’s active camera) 

    :type:  Object 
    '''

    clip_end = None
    '''3D View far clipping distance 

    :type:  float in [1e-06, inf], default 1000.0 
    '''

    clip_start = None
    '''3D View near clipping distance (perspective view only) 

    :type:  float in [1e-06, inf], default 0.1 
    '''

    fx_settings = None
    '''Options used for real time compositing 

    :type:  GPUFXSettings, (readonly) 
    '''

    icon_from_show_object_viewport = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    lens = None
    '''Viewport lens angle 

    :type:  float in [1, 250], default 0.0 
    '''

    local_view = None
    '''Display an isolated sub-set of objects, apart from the scene visibility 

    :type:  SpaceView3D, (readonly) 
    '''

    lock_bone = None
    '''3D View center is locked to this bone’s position 

    :type:  string, default “”, (never None) 
    '''

    lock_camera = None
    '''Enable view navigation within the camera view 

    :type:  boolean, default False 
    '''

    lock_cursor = None
    '''3D View center is locked to the cursor’s position 

    :type:  boolean, default False 
    '''

    lock_object = None
    '''3D View center is locked to this object’s position 

    :type:  Object 
    '''

    overlay = None
    '''Settings for display of overlays in the 3D viewport 

    :type:  View3DOverlay, (readonly, never None) 
    '''

    region_3d = None
    '''3D region in this space, in case of quad view the camera region 

    :type:  RegionView3D, (readonly) 
    '''

    region_quadviews = None
    '''3D regions (the third one defines quad view settings, the fourth one is same as ‘region_3d’) 

    :type:  bpy_prop_collection of RegionView3D, (readonly) 
    '''

    render_border_max_x = None
    '''Maximum X value for the render region 

    :type:  float in [0, 1], default 0.0 
    '''

    render_border_max_y = None
    '''Maximum Y value for the render region 

    :type:  float in [0, 1], default 0.0 
    '''

    render_border_min_x = None
    '''Minimum X value for the render region 

    :type:  float in [0, 1], default 0.0 
    '''

    render_border_min_y = None
    '''Minimum Y value for the render region 

    :type:  float in [0, 1], default 0.0 
    '''

    shading = None
    '''Settings for shading in the 3D viewport 

    :type:  View3DShading, (readonly, never None) 
    '''

    show_bundle_names = None
    '''Show names for reconstructed tracks objects 

    :type:  boolean, default False 
    '''

    show_camera_path = None
    '''Show reconstructed camera path 

    :type:  boolean, default False 
    '''

    show_gizmo = None
    '''Show gizmos of all types 

    :type:  boolean, default False 
    '''

    show_gizmo_camera_dof_distance = None
    '''Gizmo to adjust camera focus distance (depends on limits display) 

    :type:  boolean, default False 
    '''

    show_gizmo_camera_lens = None
    '''Gizmo to adjust camera lens & ortho size 

    :type:  boolean, default False 
    '''

    show_gizmo_context = None
    '''Context sensitive gizmos for the active item 

    :type:  boolean, default False 
    '''

    show_gizmo_empty_force_field = None
    '''Gizmo to adjust the force field 

    :type:  boolean, default False 
    '''

    show_gizmo_empty_image = None
    '''Gizmo to adjust image size and position 

    :type:  boolean, default False 
    '''

    show_gizmo_light_look_at = None
    '''Gizmo to adjust spot and area size 

    :type:  boolean, default False 
    '''

    show_gizmo_light_size = None
    '''Gizmo to adjust spot and area size 

    :type:  boolean, default False 
    '''

    show_gizmo_navigate = None
    '''

    :type:  boolean, default False 
    '''

    show_gizmo_object_rotate = None
    '''Gizmo to adjust rotation 

    :type:  boolean, default False 
    '''

    show_gizmo_object_scale = None
    '''Gizmo to adjust scale 

    :type:  boolean, default False 
    '''

    show_gizmo_object_translate = None
    '''Gizmo to adjust location 

    :type:  boolean, default False 
    '''

    show_gizmo_tool = None
    '''Active tool gizmo 

    :type:  boolean, default False 
    '''

    show_object_select_armature = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_camera = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_curve = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_empty = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_font = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_grease_pencil = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_lattice = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_light = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_light_probe = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_mesh = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_meta = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_speaker = None
    '''

    :type:  boolean, default False 
    '''

    show_object_select_surf = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_armature = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_camera = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_curve = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_empty = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_font = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_grease_pencil = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_lattice = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_light = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_light_probe = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_mesh = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_meta = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_speaker = None
    '''

    :type:  boolean, default False 
    '''

    show_object_viewport_surf = None
    '''

    :type:  boolean, default False 
    '''

    show_reconstruction = None
    '''Display reconstruction data from active movie clip 

    :type:  boolean, default False 
    '''

    show_stereo_3d_cameras = None
    '''Show the left and right cameras 

    :type:  boolean, default False 
    '''

    show_stereo_3d_convergence_plane = None
    '''Show the stereo 3d convergence plane 

    :type:  boolean, default False 
    '''

    show_stereo_3d_volume = None
    '''Show the stereo 3d frustum volume 

    :type:  boolean, default False 
    '''

    stereo_3d_camera = None
    '''

    :type:  enum in [‘LEFT’, ‘RIGHT’, ‘S3D’], default ‘LEFT’ 
    '''

    stereo_3d_convergence_plane_alpha = None
    '''Opacity (alpha) of the convergence plane 

    :type:  float in [0, 1], default 0.0 
    '''

    stereo_3d_eye = None
    '''Current stereo eye being drawn 

    :type:  enum in [‘LEFT_EYE’, ‘RIGHT_EYE’], default ‘LEFT_EYE’, (readonly) 
    '''

    stereo_3d_volume_alpha = None
    '''Opacity (alpha) of the cameras’ frustum volume 

    :type:  float in [0, 1], default 0.0 
    '''

    tracks_display_size = None
    '''Display size of tracks from reconstructed data 

    :type:  float in [0, inf], default 0.0 
    '''

    tracks_display_type = None
    '''Viewport display style for tracks 

    :type:  enum in [‘PLAIN_AXES’, ‘ARROWS’, ‘SINGLE_ARROW’, ‘CIRCLE’, ‘CUBE’, ‘SPHERE’, ‘CONE’], default ‘PLAIN_AXES’ 
    '''

    use_local_camera = None
    '''Use a local camera in this view, rather than scene’s active camera camera 

    :type:  boolean, default False 
    '''

    use_render_border = None
    '''Use a region within the frame size for rendered viewport(when not viewing through the camera) 

    :type:  boolean, default False 
    '''

    def draw_handler_add(self, callback, args, region_type, draw_type):
        '''Add a new draw handler to this space type. It will be called every time the specified region in the space type will be drawn. Note: All arguments are positional only for now. 

        :param callback: A function that will be called when the region is drawn. It gets the specified arguments as input. 
        :type callback: function
        :param args: Arguments that will be passed to the callback. 
        :type args: tuple
        :param region_type: The region type the callback draws in; usually ‘WINDOW’. (bpy.types.Region.type) 
        :type region_type: str
        :param draw_type: Usually POST_PIXEL for 2D drawing and POST_VIEW for 3D drawing. In some cases PRE_VIEW can be used. 
        :type draw_type: str
        :rtype: object 
        :return:  Handler that can be removed later on. 
        '''
        pass

    def draw_handler_remove(self, handler, region_type):
        '''Remove a draw handler that was added previously. 

        :param handler: The draw handler that should be removed. 
        :type handler: object
        :param region_type: Region type the callback was added to. 
        :type region_type: str
        '''
        pass


class Speaker:
    '''Speaker data-block for 3D audio speaker objects '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    attenuation = None
    '''How strong the distance affects volume, depending on distance model 

    :type:  float in [0, inf], default 0.0 
    '''

    cone_angle_inner = None
    '''Angle of the inner cone, in degrees, inside the cone the volume is 100 % 

    :type:  float in [0, 360], default 0.0 
    '''

    cone_angle_outer = None
    '''Angle of the outer cone, in degrees, outside this cone the volume is the outer cone volume, between inner and outer cone the volume is interpolated 

    :type:  float in [0, 360], default 0.0 
    '''

    cone_volume_outer = None
    '''Volume outside the outer cone 

    :type:  float in [0, 1], default 0.0 
    '''

    distance_max = None
    '''Maximum distance for volume calculation, no matter how far away the object is 

    :type:  float in [0, inf], default 0.0 
    '''

    distance_reference = None
    '''Reference distance at which volume is 100 % 

    :type:  float in [0, inf], default 0.0 
    '''

    muted = None
    '''Mute the speaker 

    :type:  boolean, default False 
    '''

    pitch = None
    '''Playback pitch of the sound 

    :type:  float in [0.1, 10], default 0.0 
    '''

    sound = None
    '''Sound data-block used by this speaker 

    :type:  Sound 
    '''

    volume = None
    '''How loud the sound is 

    :type:  float in [0, 1], default 0.0 
    '''

    volume_max = None
    '''Maximum volume, no matter how near the object is 

    :type:  float in [0, 1], default 0.0 
    '''

    volume_min = None
    '''Minimum volume, no matter how far away the object is 

    :type:  float in [0, 1], default 0.0 
    '''


class SpeedControlSequence:
    '''Sequence strip to control the speed of other strips '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    multiply_speed = None
    '''Multiply the resulting speed after the speed factor 

    :type:  float in [0, inf], default 0.0 
    '''

    use_as_speed = None
    '''Interpret the value as speed instead of a frame number 

    :type:  boolean, default False 
    '''

    use_scale_to_length = None
    '''Scale values from 0.0 to 1.0 to target sequence length 

    :type:  boolean, default False 
    '''


class Spline:
    '''Element of a curve, either NURBS, Bezier or Polyline or a character with text objects '''

    bezier_points = None
    '''Collection of points for Bezier curves only 

    :type:  SplineBezierPoints bpy_prop_collection of BezierSplinePoint, (readonly) 
    '''

    character_index = None
    '''Location of this character in the text data (only for text curves) 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    hide = None
    '''Hide this curve in Edit mode 

    :type:  boolean, default False 
    '''

    material_index = None
    '''

    :type:  int in [0, 32767], default 0 
    '''

    order_u = None
    '''NURBS order in the U direction (for splines and surfaces, higher values let points influence a greater area) 

    :type:  int in [2, 6], default 0 
    '''

    order_v = None
    '''NURBS order in the V direction (for surfaces only, higher values let points influence a greater area) 

    :type:  int in [2, 6], default 0 
    '''

    point_count_u = None
    '''Total number points for the curve or surface in the U direction 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    point_count_v = None
    '''Total number points for the surface on the V direction 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    points = None
    '''Collection of points that make up this poly or nurbs spline 

    :type:  SplinePoints bpy_prop_collection of SplinePoint, (readonly) 
    '''

    radius_interpolation = None
    '''The type of radius interpolation for Bezier curves 

    :type:  enum in [‘LINEAR’, ‘CARDINAL’, ‘BSPLINE’, ‘EASE’], default ‘LINEAR’ 
    '''

    resolution_u = None
    '''Curve or Surface subdivisions per segment 

    :type:  int in [1, 1024], default 0 
    '''

    resolution_v = None
    '''Surface subdivisions per segment 

    :type:  int in [1, 1024], default 0 
    '''

    tilt_interpolation = None
    '''The type of tilt interpolation for 3D, Bezier curves 

    :type:  enum in [‘LINEAR’, ‘CARDINAL’, ‘BSPLINE’, ‘EASE’], default ‘LINEAR’ 
    '''

    type = None
    '''The interpolation type for this curve element 

    :type:  enum in [‘POLY’, ‘BEZIER’, ‘BSPLINE’, ‘CARDINAL’, ‘NURBS’], default ‘POLY’ 
    '''

    use_bezier_u = None
    '''Make this nurbs curve or surface act like a Bezier spline in the U direction (Order U must be 3 or 4, Cyclic U must be disabled) 

    :type:  boolean, default False 
    '''

    use_bezier_v = None
    '''Make this nurbs surface act like a Bezier spline in the V direction (Order V must be 3 or 4, Cyclic V must be disabled) 

    :type:  boolean, default False 
    '''

    use_cyclic_u = None
    '''Make this curve or surface a closed loop in the U direction 

    :type:  boolean, default False 
    '''

    use_cyclic_v = None
    '''Make this surface a closed loop in the V direction 

    :type:  boolean, default False 
    '''

    use_endpoint_u = None
    '''Make this nurbs curve or surface meet the endpoints in the U direction (Cyclic U must be disabled) 

    :type:  boolean, default False 
    '''

    use_endpoint_v = None
    '''Make this nurbs surface meet the endpoints in the V direction (Cyclic V must be disabled) 

    :type:  boolean, default False 
    '''

    use_smooth = None
    '''Smooth the normals of the surface or beveled curve 

    :type:  boolean, default False 
    '''

    def calc_length(self, resolution=0):
        '''Calculate spline length 

        :param resolution: Resolution, Spline resolution to be used, 0 defaults to the resolution_u 
        :type resolution: int in [0, 1024], (optional)
        :rtype: float in [0, inf] 
        :return:  Length, Length of the polygonaly approximated spline 
        '''
        pass


class SplineBezierPoints:
    '''Collection of spline Bezier points '''

    def add(self, count):
        '''Add a number of points to this spline 

        :param count: Number, Number of points to add to the spline 
        :type count: int in [0, inf]
        '''
        pass


class SplineIKConstraint:
    '''Align ‘n’ bones along a curve '''

    bulge = None
    '''Factor between volume variation and stretching 

    :type:  float in [0, 100], default 0.0 
    '''

    bulge_max = None
    '''Maximum volume stretching factor 

    :type:  float in [1, 100], default 0.0 
    '''

    bulge_min = None
    '''Minimum volume stretching factor 

    :type:  float in [0, 1], default 0.0 
    '''

    bulge_smooth = None
    '''Strength of volume stretching clamping 

    :type:  float in [0, 1], default 0.0 
    '''

    chain_count = None
    '''How many bones are included in the chain 

    :type:  int in [1, 255], default 0 
    '''

    joint_bindings = None
    '''(EXPERIENCED USERS ONLY) The relative positions of the joints along the chain, as percentages 

    :type:  float array of 32 items in [0, 1], default (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) 
    '''

    target = None
    '''Curve that controls this relationship 

    :type:  Object 
    '''

    use_bulge_max = None
    '''Use upper limit for volume variation 

    :type:  boolean, default False 
    '''

    use_bulge_min = None
    '''Use lower limit for volume variation 

    :type:  boolean, default False 
    '''

    use_chain_offset = None
    '''Offset the entire chain relative to the root joint 

    :type:  boolean, default False 
    '''

    use_curve_radius = None
    '''Average radius of the endpoints is used to tweak the X and Z Scaling of the bones, on top of XZ Scale mode 

    :type:  boolean, default False 
    '''

    use_even_divisions = None
    '''Ignore the relative lengths of the bones when fitting to the curve 

    :type:  boolean, default False 
    '''

    xz_scale_mode = None
    '''Method used for determining the scaling of the X and Z axes of the bones 

    :type:  enum in [‘NONE’, ‘BONE_ORIGINAL’, ‘INVERSE_PRESERVE’, ‘VOLUME_PRESERVE’], default ‘NONE’ 
    '''

    y_scale_mode = None
    '''Method used for determining the scaling of the Y axis of the bones, on top of the shape and scaling of the curve itself 

    :type:  enum in [‘NONE’, ‘FIT_CURVE’, ‘BONE_ORIGINAL’], default ‘NONE’ 
    '''


class SplinePoint:
    '''Spline point without handles '''

    co = None
    '''Point coordinates 

    :type:  float array of 4 items in [-inf, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    hide = None
    '''Visibility status 

    :type:  boolean, default False 
    '''

    radius = None
    '''Radius for beveling 

    :type:  float in [0, inf], default 0.0 
    '''

    select = None
    '''Selection status 

    :type:  boolean, default False 
    '''

    tilt = None
    '''Tilt in 3D View 

    :type:  float in [-376.991, 376.991], default 0.0 
    '''

    weight = None
    '''NURBS weight 

    :type:  float in [-inf, inf], default 0.0 
    '''

    weight_softbody = None
    '''Softbody goal weight 

    :type:  float in [0.01, 100], default 0.0 
    '''


class SplinePoints:
    '''Collection of spline points '''

    def add(self, count):
        '''Add a number of points to this spline 

        :param count: Number, Number of points to add to the spline 
        :type count: int in [0, inf]
        '''
        pass


class SpotLight:
    '''Directional cone Light '''

    constant_coefficient = None
    '''Constant distance attenuation coefficient 

    :type:  float in [0, inf], default 0.0 
    '''

    contact_shadow_bias = None
    '''Bias to avoid self shadowing 

    :type:  float in [0.001, 9999], default 0.03 
    '''

    contact_shadow_distance = None
    '''World space distance in which to search for screen space occluder 

    :type:  float in [0, 9999], default 0.2 
    '''

    contact_shadow_soft_size = None
    '''Control how soft the contact shadows will be 

    :type:  float in [0, 9999], default 0.2 
    '''

    contact_shadow_thickness = None
    '''Pixel thickness used to detect occlusion 

    :type:  float in [0, 9999], default 0.2 
    '''

    energy = None
    '''Amount of light emitted 

    :type:  float in [-inf, inf], default 10.0 
    '''

    falloff_curve = None
    '''Custom light falloff curve 

    :type:  CurveMapping, (readonly) 
    '''

    falloff_type = None
    '''Intensity Decay with distance 

    :type:  enum in [‘CONSTANT’, ‘INVERSE_LINEAR’, ‘INVERSE_SQUARE’, ‘INVERSE_COEFFICIENTS’, ‘CUSTOM_CURVE’, ‘LINEAR_QUADRATIC_WEIGHTED’], default ‘CONSTANT’ 
    '''

    linear_attenuation = None
    '''Linear distance attenuation 

    :type:  float in [0, 1], default 0.0 
    '''

    linear_coefficient = None
    '''Linear distance attenuation coefficient 

    :type:  float in [0, inf], default 0.0 
    '''

    quadratic_attenuation = None
    '''Quadratic distance attenuation 

    :type:  float in [0, 1], default 0.0 
    '''

    quadratic_coefficient = None
    '''Quadratic distance attenuation coefficient 

    :type:  float in [0, inf], default 0.0 
    '''

    shadow_buffer_bias = None
    '''Bias for reducing self shadowing 

    :type:  float in [0.001, 9999], default 1.0 
    '''

    shadow_buffer_bleed_bias = None
    '''Bias for reducing light-bleed on variance shadow maps 

    :type:  float in [0, 1], default 0.0 
    '''

    shadow_buffer_clip_end = None
    '''Shadow map clip end, beyond which objects will not generate shadows 

    :type:  float in [0, 9999], default 40.0 
    '''

    shadow_buffer_clip_start = None
    '''Shadow map clip start, below which objects will not generate shadows 

    :type:  float in [0, 9999], default 0.5 
    '''

    shadow_buffer_exp = None
    '''Bias for reducing light-bleed on exponential shadow maps 

    :type:  float in [1, 9999], default 2.5 
    '''

    shadow_buffer_samples = None
    '''Number of shadow buffer samples 

    :type:  int in [1, 16], default 0 
    '''

    shadow_buffer_size = None
    '''Resolution of the shadow buffer, higher values give crisper shadows but use more memory 

    :type:  int in [128, 10240], default 0 
    '''

    shadow_buffer_soft = None
    '''Size of shadow buffer sampling area 

    :type:  float in [0, 100], default 3.0 
    '''

    shadow_color = None
    '''Color of shadows cast by the light 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    shadow_soft_size = None
    '''Light size for ray shadow sampling (Raytraced shadows) 

    :type:  float in [0, inf], default 0.25 
    '''

    show_cone = None
    '''Draw transparent cone in 3D view to visualize which objects are contained in it 

    :type:  boolean, default False 
    '''

    spot_blend = None
    '''The softness of the spotlight edge 

    :type:  float in [0, 1], default 0.15 
    '''

    spot_size = None
    '''Angle of the spotlight beam 

    :type:  float in [0.0174533, 3.14159], default 0.785398 
    '''

    use_contact_shadow = None
    '''Use screen space raytracing to have correct shadowing near occluder, or for small features that does not appear in shadow maps 

    :type:  boolean, default False 
    '''

    use_shadow = None
    '''

    :type:  boolean, default False 
    '''

    use_square = None
    '''Cast a square spot light shape 

    :type:  boolean, default False 
    '''


class Stereo3dDisplay:
    '''Settings for stereo 3D display '''

    anaglyph_type = None
    '''

    :type:  enum in [‘RED_CYAN’, ‘GREEN_MAGENTA’, ‘YELLOW_BLUE’], default ‘RED_CYAN’ 
    '''

    display_mode = None
    '''

    :type:  enum in [‘ANAGLYPH’, ‘INTERLACE’, ‘TIMESEQUENTIAL’, ‘SIDEBYSIDE’, ‘TOPBOTTOM’], default ‘ANAGLYPH’ 
    '''

    interlace_type = None
    '''

    :type:  enum in [‘ROW_INTERLEAVED’, ‘COLUMN_INTERLEAVED’, ‘CHECKERBOARD_INTERLEAVED’], default ‘ROW_INTERLEAVED’ 
    '''

    use_interlace_swap = None
    '''Swap left and right stereo channels 

    :type:  boolean, default False 
    '''

    use_sidebyside_crosseyed = None
    '''Right eye should see left image and vice-versa 

    :type:  boolean, default False 
    '''


class Stereo3dFormat:
    '''Settings for stereo output '''

    anaglyph_type = None
    '''

    :type:  enum in [‘RED_CYAN’, ‘GREEN_MAGENTA’, ‘YELLOW_BLUE’], default ‘RED_CYAN’ 
    '''

    display_mode = None
    '''

    :type:  enum in [‘ANAGLYPH’, ‘INTERLACE’, ‘SIDEBYSIDE’, ‘TOPBOTTOM’], default ‘ANAGLYPH’ 
    '''

    interlace_type = None
    '''

    :type:  enum in [‘ROW_INTERLEAVED’, ‘COLUMN_INTERLEAVED’, ‘CHECKERBOARD_INTERLEAVED’], default ‘ROW_INTERLEAVED’ 
    '''

    use_interlace_swap = None
    '''Swap left and right stereo channels 

    :type:  boolean, default False 
    '''

    use_sidebyside_crosseyed = None
    '''Right eye should see left image and vice-versa 

    :type:  boolean, default False 
    '''

    use_squeezed_frame = None
    '''Combine both views in a squeezed image 

    :type:  boolean, default False 
    '''


class StretchToConstraint:
    '''Stretch to meet the target object '''

    bulge = None
    '''Factor between volume variation and stretching 

    :type:  float in [0, 100], default 0.0 
    '''

    bulge_max = None
    '''Maximum volume stretching factor 

    :type:  float in [1, 100], default 0.0 
    '''

    bulge_min = None
    '''Minimum volume stretching factor 

    :type:  float in [0, 1], default 0.0 
    '''

    bulge_smooth = None
    '''Strength of volume stretching clamping 

    :type:  float in [0, 1], default 0.0 
    '''

    head_tail = None
    '''Target along length of bone: Head=0, Tail=1 

    :type:  float in [0, 1], default 0.0 
    '''

    keep_axis = None
    '''Axis to maintain during stretch 

    :type:  enum in [‘PLANE_X’, ‘PLANE_Z’], default ‘PLANE_X’ 
    '''

    rest_length = None
    '''Length at rest position 

    :type:  float in [0, 1000], default 0.0 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    use_bbone_shape = None
    '''Follow shape of B-Bone segments when calculating Head/Tail position 

    :type:  boolean, default False 
    '''

    use_bulge_max = None
    '''Use upper limit for volume variation 

    :type:  boolean, default False 
    '''

    use_bulge_min = None
    '''Use lower limit for volume variation 

    :type:  boolean, default False 
    '''

    volume = None
    '''Maintain the object’s volume as it stretches 

    :type:  enum in [‘VOLUME_XZX’, ‘VOLUME_X’, ‘VOLUME_Z’, ‘NO_VOLUME’], default ‘VOLUME_XZX’ 
    '''


class StringProperty:
    '''RNA text string property definition '''

    default = None
    '''string default value 

    :type:  string, default “”, (readonly, never None) 
    '''

    length_max = None
    '''Maximum length of the string, 0 means unlimited 

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class Struct:
    '''RNA structure definition '''

    base = None
    '''Struct definition this is derived from 

    :type:  Struct, (readonly) 
    '''

    description = None
    '''Description of the Struct’s purpose 

    :type:  string, default “”, (readonly, never None) 
    '''

    functions = None
    '''

    :type:  bpy_prop_collection of Function, (readonly) 
    '''

    identifier = None
    '''Unique name used in the code and scripting 

    :type:  string, default “”, (readonly, never None) 
    '''

    name = None
    '''Human readable name 

    :type:  string, default “”, (readonly, never None) 
    '''

    name_property = None
    '''Property that gives the name of the struct 

    :type:  StringProperty, (readonly) 
    '''

    nested = None
    '''Struct in which this struct is always nested, and to which it logically belongs 

    :type:  Struct, (readonly) 
    '''

    properties = None
    '''Properties in the struct 

    :type:  bpy_prop_collection of Property, (readonly) 
    '''

    property_tags = None
    '''Tags that properties can use to influence behavior 

    :type:  bpy_prop_collection of EnumPropertyItem, (readonly) 
    '''

    translation_context = None
    '''Translation context of the struct’s name 

    :type:  string, default “”, (readonly, never None) 
    '''


class StucciTexture:
    '''Procedural noise texture '''

    noise_basis = None
    '''Noise basis used for turbulence 

    :type:  enum in [‘BLENDER_ORIGINAL’, ‘ORIGINAL_PERLIN’, ‘IMPROVED_PERLIN’, ‘VORONOI_F1’, ‘VORONOI_F2’, ‘VORONOI_F3’, ‘VORONOI_F4’, ‘VORONOI_F2_F1’, ‘VORONOI_CRACKLE’, ‘CELL_NOISE’], default ‘BLENDER_ORIGINAL’ 
    '''

    noise_scale = None
    '''Scaling for noise input 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    noise_type = None
    '''

    :type:  enum in [‘SOFT_NOISE’, ‘HARD_NOISE’], default ‘SOFT_NOISE’ 
    '''

    stucci_type = None
    '''

    :type:  enum in [‘PLASTIC’, ‘WALL_IN’, ‘WALL_OUT’], default ‘PLASTIC’ 
    '''

    turbulence = None
    '''Turbulence of the noise 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class StudioLight:
    '''Studio light '''

    index = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    is_user_defined = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    light_ambient = None
    '''Color of the ambient light that uniformly lit the scene 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0), (readonly) 
    '''

    name = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    path = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    path_irr_cache = None
    '''Path where the irradiance cache is stored 

    :type:  string, default “”, (readonly, never None) 
    '''

    path_sh_cache = None
    '''Path where the spherical harmonics cache is stored 

    :type:  string, default “”, (readonly, never None) 
    '''

    solid_lights = None
    '''Lights user to display objects in solid draw mode 

    :type:  bpy_prop_collection of UserSolidLight, (readonly) 
    '''

    spherical_harmonics_coefficients = None
    '''

    :type:  float multi-dimensional array of 4 * 3 items in [0, inf], default ((0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0)), (readonly) 
    '''

    type = None
    '''

    :type:  enum in [‘STUDIO’, ‘WORLD’, ‘MATCAP’], default ‘STUDIO’, (readonly) 
    '''


class StudioLights:
    '''Collection of studio lights '''

    def load(self, path, type):
        '''Load studiolight from file 

        :param path: File Path, File path where the studio light file can be found 
        :type path: string, (never None)
        :param type: Type, The type for the new studio light 
        :type type: enum in ['STUDIO', 'WORLD', 'MATCAP']
        :rtype: StudioLight 
        :return:  Newly created StudioLight 
        '''
        pass

    def new(self, path):
        '''Create studiolight from default lighting 

        :param path: Path, Path to the file that will contain the lighing info (without extension) 
        :type path: string, (never None)
        :rtype: StudioLight 
        :return:  Newly created StudioLight 
        '''
        pass

    def remove(self, studio_light):
        '''Remove a studio light 

        :param studio_light: The studio light to remove 
        :type studio_light: StudioLight, (never None)
        '''
        pass

    def refresh(self):
        '''Refresh Studio Lights from disk 

        '''
        pass


class SubdivGpencilModifier:
    '''Subdivide Stroke modifier '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    level = None
    '''Number of subdivisions 

    :type:  int in [0, 5], default 0 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    simple = None
    '''The modifier only add control points 

    :type:  boolean, default False 
    '''


class SubsurfModifier:
    '''Subdivision surface modifier '''

    levels = None
    '''Number of subdivisions to perform 

    :type:  int in [0, 11], default 0 
    '''

    quality = None
    '''Accuracy of vertex positions, lower value is faster but less precise 

    :type:  int in [1, 10], default 0 
    '''

    render_levels = None
    '''Number of subdivisions to perform when rendering 

    :type:  int in [0, 11], default 0 
    '''

    show_only_control_edges = None
    '''Skip drawing/rendering of interior subdivided edges 

    :type:  boolean, default False 
    '''

    subdivision_type = None
    '''Select type of subdivision algorithm 

    :type:  enum in [‘CATMULL_CLARK’, ‘SIMPLE’], default ‘CATMULL_CLARK’ 
    '''

    use_creases = None
    '''Use mesh edge crease information to sharpen edges 

    :type:  boolean, default False 
    '''

    uv_smooth = None
    '''Controls how smoothing is applied to UVs 

    :type:  enum in [‘NONE’, ‘PRESERVE_CORNERS’], default ‘NONE’ 
    '''


class SubtractSequence:
    '''Subtract Sequence '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''


class SunLight:
    '''Constant direction parallel ray Light '''

    contact_shadow_bias = None
    '''Bias to avoid self shadowing 

    :type:  float in [0.001, 9999], default 0.03 
    '''

    contact_shadow_distance = None
    '''World space distance in which to search for screen space occluder 

    :type:  float in [0, 9999], default 0.2 
    '''

    contact_shadow_soft_size = None
    '''Control how soft the contact shadows will be 

    :type:  float in [0, 9999], default 0.2 
    '''

    contact_shadow_thickness = None
    '''Pixel thickness used to detect occlusion 

    :type:  float in [0, 9999], default 0.2 
    '''

    energy = None
    '''Amount of light emitted 

    :type:  float in [-inf, inf], default 10.0 
    '''

    shadow_buffer_bias = None
    '''Bias for reducing self shadowing 

    :type:  float in [0.001, 9999], default 1.0 
    '''

    shadow_buffer_bleed_bias = None
    '''Bias for reducing light-bleed on variance shadow maps 

    :type:  float in [0, 1], default 0.0 
    '''

    shadow_buffer_clip_end = None
    '''Shadow map clip end, beyond which objects will not generate shadows 

    :type:  float in [0, 9999], default 40.0 
    '''

    shadow_buffer_clip_start = None
    '''Shadow map clip start, below which objects will not generate shadows 

    :type:  float in [0, 9999], default 0.5 
    '''

    shadow_buffer_exp = None
    '''Bias for reducing light-bleed on exponential shadow maps 

    :type:  float in [1, 9999], default 2.5 
    '''

    shadow_buffer_samples = None
    '''Number of shadow buffer samples 

    :type:  int in [1, 16], default 0 
    '''

    shadow_buffer_size = None
    '''Resolution of the shadow buffer, higher values give crisper shadows but use more memory 

    :type:  int in [128, 10240], default 0 
    '''

    shadow_buffer_soft = None
    '''Size of shadow buffer sampling area 

    :type:  float in [0, 100], default 3.0 
    '''

    shadow_cascade_count = None
    '''Number of texture used by the cascaded shadow map 

    :type:  int in [1, 4], default 4 
    '''

    shadow_cascade_exponent = None
    '''Higher value increase resolution towards the viewpoint 

    :type:  float in [0, 1], default 0.8 
    '''

    shadow_cascade_fade = None
    '''How smooth is the transition between each cascade 

    :type:  float in [0, 1], default 0.1 
    '''

    shadow_cascade_max_distance = None
    '''End distance of the cascaded shadow map (only in perspective view) 

    :type:  float in [0, inf], default 200.0 
    '''

    shadow_color = None
    '''Color of shadows cast by the light 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    shadow_soft_size = None
    '''Light size for ray shadow sampling (Raytraced shadows) 

    :type:  float in [0, inf], default 0.25 
    '''

    use_contact_shadow = None
    '''Use screen space raytracing to have correct shadowing near occluder, or for small features that does not appear in shadow maps 

    :type:  boolean, default False 
    '''

    use_shadow = None
    '''

    :type:  boolean, default False 
    '''


class SurfaceCurve:
    '''Curve data-block used for storing surfaces '''

    use_uv_as_generated = None
    '''Uses the UV values as Generated textured coordinates 

    :type:  boolean, default False 
    '''


class SurfaceDeformModifier:
    falloff = None
    '''Controls how much nearby polygons influence deformation 

    :type:  float in [2, 16], default 0.0 
    '''

    is_bound = None
    '''Whether geometry has been bound to target mesh 

    :type:  boolean, default False, (readonly) 
    '''

    target = None
    '''Mesh object to deform with 

    :type:  Object 
    '''


class SurfaceModifier:
    '''Surface modifier defining modifier stack position used for surface fields '''

    pass


class TEXTURE_UL_texpaintslots:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class TEXTURE_UL_texslots:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class TexMapping:
    '''Texture coordinate mapping settings '''

    mapping = None
    '''

    :type:  enum in [‘FLAT’, ‘CUBE’, ‘TUBE’, ‘SPHERE’], default ‘FLAT’ 
    '''

    mapping_x = None
    '''

    :type:  enum in [‘NONE’, ‘X’, ‘Y’, ‘Z’], default ‘NONE’ 
    '''

    mapping_y = None
    '''

    :type:  enum in [‘NONE’, ‘X’, ‘Y’, ‘Z’], default ‘NONE’ 
    '''

    mapping_z = None
    '''

    :type:  enum in [‘NONE’, ‘X’, ‘Y’, ‘Z’], default ‘NONE’ 
    '''

    max = None
    '''Maximum value for clipping 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    min = None
    '''Minimum value for clipping 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    rotation = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    scale = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    translation = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    use_max = None
    '''Whether to use maximum clipping value 

    :type:  boolean, default False 
    '''

    use_min = None
    '''Whether to use minimum clipping value 

    :type:  boolean, default False 
    '''

    vector_type = None
    '''Type of vector that the mapping transforms 

    :type:  enum in [‘TEXTURE’, ‘POINT’, ‘VECTOR’, ‘NORMAL’], default ‘POINT’ 
    '''


class TexPaintSlot:
    '''Slot that contains information about texture painting '''

    is_valid = None
    '''Slot has a valid image and UV map 

    :type:  boolean, default False, (readonly) 
    '''

    uv_layer = None
    '''Name of UV map 

    :type:  string, default “”, (never None) 
    '''


class Text:
    '''Text data-block referencing an external or packed text file '''

    current_character = None
    '''Index of current character in current line, and also start index of character in selection if one exists 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    current_line = None
    '''Current line, and start line of selection if one exists 

    :type:  TextLine, (readonly, never None) 
    '''

    current_line_index = None
    '''Index of current TextLine in TextLine collection 

    :type:  int in [-inf, inf], default 0 
    '''

    filepath = None
    '''Filename of the text file 

    :type:  string, default “”, (never None) 
    '''

    is_dirty = None
    '''Text file has been edited since last save 

    :type:  boolean, default False, (readonly) 
    '''

    is_in_memory = None
    '''Text file is in memory, without a corresponding file on disk 

    :type:  boolean, default False, (readonly) 
    '''

    is_modified = None
    '''Text file on disk is different than the one in memory 

    :type:  boolean, default False, (readonly) 
    '''

    lines = None
    '''Lines of text 

    :type:  bpy_prop_collection of TextLine, (readonly) 
    '''

    select_end_character = None
    '''Index of character after end of selection in the selection end line 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    select_end_line = None
    '''End line of selection 

    :type:  TextLine, (readonly, never None) 
    '''

    use_module = None
    '''Register this text as a module on loading, Text name must end with “.py” 

    :type:  boolean, default False 
    '''

    use_tabs_as_spaces = None
    '''Automatically converts all new tabs into spaces 

    :type:  boolean, default False 
    '''

    def clear(self):
        '''clear the text block 

        '''
        pass

    def write(self, text):
        '''write text at the cursor location and advance to the end of the text block 

        :param text: New text for this data-block 
        :type text: string, (never None)
        '''
        pass

    def as_string(self):
        '''Return the text as a string. 

        '''
        pass

    def from_string(self, string):
        '''Replace text with this string. 

        '''
        pass


class TextBox:
    '''Text bounding box for layout '''

    height = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    width = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    x = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    y = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''


class TextCharacterFormat:
    '''Text character formatting settings '''

    kerning = None
    '''Spacing between characters 

    :type:  int in [0, 32767], default 0 
    '''

    material_index = None
    '''

    :type:  int in [0, inf], default 0 
    '''

    use_bold = None
    '''

    :type:  boolean, default False 
    '''

    use_italic = None
    '''

    :type:  boolean, default False 
    '''

    use_small_caps = None
    '''

    :type:  boolean, default False 
    '''

    use_underline = None
    '''

    :type:  boolean, default False 
    '''


class TextCurve:
    '''Curve data-block used for storing text '''

    active_textbox = None
    '''

    :type:  int in [-inf, inf], default 0 
    '''

    align_x = None
    '''Text horizontal align from the object center 

    :type:  enum in [‘LEFT’, ‘CENTER’, ‘RIGHT’, ‘JUSTIFY’, ‘FLUSH’], default ‘LEFT’ 
    '''

    align_y = None
    '''Text vertical align from the object center 

    :type:  enum in [‘TOP_BASELINE’, ‘TOP’, ‘CENTER’, ‘BOTTOM’, ‘BOTTOM_BASELINE’], default ‘TOP_BASELINE’ 
    '''

    body = None
    '''Content of this text object 

    :type:  string, default “”, (never None) 
    '''

    body_format = None
    '''Stores the style of each character 

    :type:  bpy_prop_collection of TextCharacterFormat, (readonly) 
    '''

    edit_format = None
    '''Editing settings character formatting 

    :type:  TextCharacterFormat, (readonly) 
    '''

    family = None
    '''Use Objects as font characters (give font objects a common name followed by the character they represent, eg. ‘family-a’, ‘family-b’, etc, set this setting to ‘family-‘, and turn on Vertex Duplication) 

    :type:  string, default “”, (never None) 
    '''

    follow_curve = None
    '''Curve deforming text object 

    :type:  Object 
    '''

    font = None
    '''

    :type:  VectorFont 
    '''

    font_bold = None
    '''

    :type:  VectorFont 
    '''

    font_bold_italic = None
    '''

    :type:  VectorFont 
    '''

    font_italic = None
    '''

    :type:  VectorFont 
    '''

    offset_x = None
    '''Horizontal offset from the object origin 

    :type:  float in [-inf, inf], default 0.0 
    '''

    offset_y = None
    '''Vertical offset from the object origin 

    :type:  float in [-inf, inf], default 0.0 
    '''

    overflow = None
    '''Handle the text behavior when it doesn’t fit in the text boxes 

    :type:  enum in [‘NONE’, ‘SCALE’, ‘TRUNCATE’], default ‘NONE’ 
    '''

    shear = None
    '''Italic angle of the characters 

    :type:  float in [-1, 1], default 0.0 
    '''

    size = None
    '''

    :type:  float in [0.0001, 10000], default 0.0 
    '''

    small_caps_scale = None
    '''Scale of small capitals 

    :type:  float in [-inf, inf], default 0.0 
    '''

    space_character = None
    '''

    :type:  float in [0, 10], default 0.0 
    '''

    space_line = None
    '''

    :type:  float in [0, 10], default 0.0 
    '''

    space_word = None
    '''

    :type:  float in [0, 10], default 0.0 
    '''

    text_boxes = None
    '''

    :type:  bpy_prop_collection of TextBox, (readonly) 
    '''

    underline_height = None
    '''

    :type:  float in [0, 0.8], default 0.0 
    '''

    underline_position = None
    '''Vertical position of underline 

    :type:  float in [-0.2, 0.8], default 0.0 
    '''

    use_fast_edit = None
    '''Don’t fill polygons while editing 

    :type:  boolean, default False 
    '''

    use_uv_as_generated = None
    '''Uses the UV values as Generated textured coordinates 

    :type:  boolean, default False 
    '''


class TextLine:
    '''Line of text in a Text data-block '''

    body = None
    '''Text in the line 

    :type:  string, default “”, (never None) 
    '''


class TextSequence:
    '''Sequence strip creating text '''

    align_x = None
    '''Align the text along the X axis 

    :type:  enum in [‘LEFT’, ‘CENTER’, ‘RIGHT’], default ‘LEFT’ 
    '''

    align_y = None
    '''Align the image along the Y axis 

    :type:  enum in [‘TOP’, ‘CENTER’, ‘BOTTOM’], default ‘TOP’ 
    '''

    color = None
    '''Text color 

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    font = None
    '''Font of the text. Falls back to the UI font by default 

    :type:  VectorFont 
    '''

    font_size = None
    '''Size of the text 

    :type:  int in [0, 2000], default 0 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    location = None
    '''Location of the text 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    shadow_color = None
    '''

    :type:  float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0) 
    '''

    text = None
    '''Text that will be displayed 

    :type:  string, default “”, (never None) 
    '''

    use_shadow = None
    '''Draw text with shadow 

    :type:  boolean, default False 
    '''

    wrap_width = None
    '''Word wrap width as factor, zero disables 

    :type:  float in [0, inf], default 0.0 
    '''


class Texture:
    '''Texture data-block used by materials, lights, worlds and brushes '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    color_ramp = None
    '''

    :type:  ColorRamp, (readonly) 
    '''

    contrast = None
    '''Adjust the contrast of the texture 

    :type:  float in [0, 5], default 0.0 
    '''

    factor_blue = None
    '''

    :type:  float in [0, 2], default 0.0 
    '''

    factor_green = None
    '''

    :type:  float in [0, 2], default 0.0 
    '''

    factor_red = None
    '''

    :type:  float in [0, 2], default 0.0 
    '''

    intensity = None
    '''Adjust the brightness of the texture 

    :type:  float in [0, 2], default 0.0 
    '''

    node_tree = None
    '''Node tree for node-based textures 

    :type:  NodeTree, (readonly) 
    '''

    saturation = None
    '''Adjust the saturation of colors in the texture 

    :type:  float in [0, 2], default 0.0 
    '''

    type = None
    '''

    :type:  enum in [‘NONE’, ‘BLEND’, ‘CLOUDS’, ‘DISTORTED_NOISE’, ‘IMAGE’, ‘MAGIC’, ‘MARBLE’, ‘MUSGRAVE’, ‘NOISE’, ‘STUCCI’, ‘VORONOI’, ‘WOOD’], default ‘NONE’ 
    '''

    use_clamp = None
    '''Set negative texture RGB and intensity values to zero, for some uses like displacement this option can be disabled to get the full range 

    :type:  boolean, default False 
    '''

    use_color_ramp = None
    '''Toggle color ramp operations 

    :type:  boolean, default False 
    '''

    use_nodes = None
    '''Make this a node-based texture 

    :type:  boolean, default False 
    '''

    use_preview_alpha = None
    '''Show Alpha in Preview Render 

    :type:  boolean, default False 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''

    def evaluate(self, value):
        '''Evaluate the texture at the coordinates given 

        :rtype: float array of 4 items in [-inf, inf] 
        :return:  Result 
        '''
        pass


class TextureNode:
    pass


class TextureNodeAt:
    pass


class TextureNodeBricks:
    offset = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    offset_frequency = None
    '''Offset every N rows 

    :type:  int in [2, 99], default 0 
    '''

    squash = None
    '''

    :type:  float in [0, 99], default 0.0 
    '''

    squash_frequency = None
    '''Squash every N rows 

    :type:  int in [2, 99], default 0 
    '''


class TextureNodeChecker:
    pass


class TextureNodeCompose:
    pass


class TextureNodeCoordinates:
    pass


class TextureNodeCurveRGB:
    mapping = None
    '''

    :type:  CurveMapping, (readonly) 
    '''


class TextureNodeCurveTime:
    curve = None
    '''

    :type:  CurveMapping, (readonly) 
    '''

    frame_end = None
    '''

    :type:  int in [-32768, 32767], default 0 
    '''

    frame_start = None
    '''

    :type:  int in [-32768, 32767], default 0 
    '''


class TextureNodeDecompose:
    pass


class TextureNodeDistance:
    pass


class TextureNodeGroup:
    interface = None
    '''Interface socket data 

    :type:  PropertyGroup, (readonly) 
    '''

    node_tree = None
    '''

    :type:  NodeTree 
    '''


class TextureNodeHueSaturation:
    pass


class TextureNodeImage:
    image = None
    '''

    :type:  Image 
    '''

    image_user = None
    '''Parameters defining the image duration, offset and related settings 

    :type:  ImageUser, (readonly) 
    '''


class TextureNodeInvert:
    pass


class TextureNodeMath:
    operation = None
    '''

    :type:  enum in [‘ADD’, ‘SUBTRACT’, ‘MULTIPLY’, ‘DIVIDE’, ‘POWER’, ‘LOGARITHM’, ‘SQRT’, ‘ABSOLUTE’, ‘MINIMUM’, ‘MAXIMUM’, ‘LESS_THAN’, ‘GREATER_THAN’, ‘ROUND’, ‘FLOOR’, ‘CEIL’, ‘FRACT’, ‘MODULO’, ‘SINE’, ‘COSINE’, ‘TANGENT’, ‘ARCSINE’, ‘ARCCOSINE’, ‘ARCTANGENT’, ‘ARCTAN2’], default ‘ADD’ 
    '''

    use_clamp = None
    '''Clamp result of the node to 0..1 range 

    :type:  boolean, default False 
    '''


class TextureNodeMixRGB:
    blend_type = None
    '''

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘BURN’, ‘LIGHTEN’, ‘SCREEN’, ‘DODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    use_alpha = None
    '''Include alpha of second input in this operation 

    :type:  boolean, default False 
    '''

    use_clamp = None
    '''Clamp result of the node to 0..1 range 

    :type:  boolean, default False 
    '''


class TextureNodeOutput:
    filepath = None
    '''

    :type:  string, default “”, (never None) 
    '''


class TextureNodeRGBToBW:
    pass


class TextureNodeRotate:
    pass


class TextureNodeScale:
    pass


class TextureNodeTexBlend:
    pass


class TextureNodeTexClouds:
    pass


class TextureNodeTexDistNoise:
    pass


class TextureNodeTexMagic:
    pass


class TextureNodeTexMarble:
    pass


class TextureNodeTexMusgrave:
    pass


class TextureNodeTexNoise:
    pass


class TextureNodeTexStucci:
    pass


class TextureNodeTexVoronoi:
    pass


class TextureNodeTexWood:
    pass


class TextureNodeTexture:
    node_output = None
    '''For node-based textures, which output node to use 

    :type:  int in [-32768, 32767], default 0 
    '''

    texture = None
    '''

    :type:  Texture 
    '''


class TextureNodeTranslate:
    pass


class TextureNodeTree:
    '''Node tree consisting of linked nodes used for textures '''

    pass


class TextureNodeValToNor:
    pass


class TextureNodeValToRGB:
    color_ramp = None
    '''

    :type:  ColorRamp, (readonly) 
    '''


class TextureNodeViewer:
    pass


class TextureSlot:
    '''Texture slot defining the mapping and influence of a texture '''

    blend_type = None
    '''Mode used to apply the texture 

    :type:  enum in [‘MIX’, ‘DARKEN’, ‘MULTIPLY’, ‘LIGHTEN’, ‘SCREEN’, ‘ADD’, ‘OVERLAY’, ‘SOFT_LIGHT’, ‘LINEAR_LIGHT’, ‘DIFFERENCE’, ‘SUBTRACT’, ‘DIVIDE’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘VALUE’], default ‘MIX’ 
    '''

    color = None
    '''Default color for textures that don’t return RGB or when RGB to intensity is enabled 

    :type:  float array of 3 items in [0, inf], default (0.0, 0.0, 0.0) 
    '''

    default_value = None
    '''Value to use for Ref, Spec, Amb, Emit, Alpha, RayMir, TransLu and Hard 

    :type:  float in [-inf, inf], default 0.0 
    '''

    name = None
    '''Texture slot name 

    :type:  string, default “”, (readonly, never None) 
    '''

    offset = None
    '''Fine tune of the texture mapping X, Y and Z locations 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    output_node = None
    '''Which output node to use, for node-based textures 

    :type:  enum in [‘DUMMY’], default ‘DUMMY’ 
    '''

    scale = None
    '''Set scaling for the texture’s X, Y and Z sizes 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    texture = None
    '''Texture data-block used by this texture slot 

    :type:  Texture 
    '''


class Theme:
    '''Theme settings defining draw style and colors in the user interface '''

    bone_color_sets = None
    '''

    :type:  bpy_prop_collection of ThemeBoneColorSet, (readonly, never None) 
    '''

    clip_editor = None
    '''

    :type:  ThemeClipEditor, (readonly, never None) 
    '''

    console = None
    '''

    :type:  ThemeConsole, (readonly, never None) 
    '''

    dopesheet_editor = None
    '''

    :type:  ThemeDopeSheet, (readonly, never None) 
    '''

    file_browser = None
    '''

    :type:  ThemeFileBrowser, (readonly, never None) 
    '''

    graph_editor = None
    '''

    :type:  ThemeGraphEditor, (readonly, never None) 
    '''

    image_editor = None
    '''

    :type:  ThemeImageEditor, (readonly, never None) 
    '''

    info = None
    '''

    :type:  ThemeInfo, (readonly, never None) 
    '''

    name = None
    '''Name of the theme 

    :type:  string, default “”, (never None) 
    '''

    nla_editor = None
    '''

    :type:  ThemeNLAEditor, (readonly, never None) 
    '''

    node_editor = None
    '''

    :type:  ThemeNodeEditor, (readonly, never None) 
    '''

    outliner = None
    '''

    :type:  ThemeOutliner, (readonly, never None) 
    '''

    preferences = None
    '''

    :type:  ThemePreferences, (readonly, never None) 
    '''

    properties = None
    '''

    :type:  ThemeProperties, (readonly, never None) 
    '''

    sequence_editor = None
    '''

    :type:  ThemeSequenceEditor, (readonly, never None) 
    '''

    statusbar = None
    '''

    :type:  ThemeStatusBar, (readonly, never None) 
    '''

    text_editor = None
    '''

    :type:  ThemeTextEditor, (readonly, never None) 
    '''

    theme_area = None
    '''

    :type:  enum in [‘USER_INTERFACE’, ‘STYLE’, ‘BONE_COLOR_SETS’, ‘VIEW_3D’, ‘GRAPH_EDITOR’, ‘DOPESHEET_EDITOR’, ‘NLA_EDITOR’, ‘IMAGE_EDITOR’, ‘SEQUENCE_EDITOR’, ‘TEXT_EDITOR’, ‘NODE_EDITOR’, ‘PROPERTIES’, ‘OUTLINER’, ‘PREFERENCES’, ‘INFO’, ‘FILE_BROWSER’, ‘CONSOLE’, ‘CLIP_EDITOR’, ‘TOPBAR’, ‘STATUSBAR’], default ‘USER_INTERFACE’ 
    '''

    topbar = None
    '''

    :type:  ThemeTopBar, (readonly, never None) 
    '''

    user_interface = None
    '''

    :type:  ThemeUserInterface, (readonly, never None) 
    '''

    view_3d = None
    '''

    :type:  ThemeView3D, (readonly, never None) 
    '''


class ThemeBoneColorSet:
    '''Theme settings for bone color sets '''

    active = None
    '''Color used for active bones 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    normal = None
    '''Color used for the surface of bones 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    select = None
    '''Color used for selected bones 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    show_colored_constraints = None
    '''Allow the use of colors indicating constraints/keyed status 

    :type:  boolean, default False 
    '''


class ThemeClipEditor:
    '''Theme settings for the Movie Clip Editor '''

    active_marker = None
    '''Color of active marker 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    disabled_marker = None
    '''Color of disabled marker 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    frame_current = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_size = None
    '''

    :type:  int in [1, 10], default 0 
    '''

    handle_align = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_auto = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_auto_clamped = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_free = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_align = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_auto = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_auto_clamped = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_free = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vertex_size = None
    '''

    :type:  int in [1, 100], default 0 
    '''

    locked_marker = None
    '''Color of locked marker 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    marker = None
    '''Color of marker 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    marker_outline = None
    '''Color of marker’s outline 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    metadatabg = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    metadatatext = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    path_after = None
    '''Color of path after current frame 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    path_before = None
    '''Color of path before current frame 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    selected_marker = None
    '''Color of selected marker 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''

    space_list = None
    '''Settings for space list 

    :type:  ThemeSpaceListGeneric, (readonly, never None) 
    '''

    strips = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    strips_selected = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeConsole:
    '''Theme settings for the Console '''

    cursor = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    line_error = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    line_info = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    line_input = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    line_output = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    select = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''


class ThemeDopeSheet:
    '''Theme settings for the Dope Sheet '''

    active_channels_group = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    channel_group = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    channels = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    channels_selected = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    dopesheet_channel = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    dopesheet_subchannel = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    frame_current = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    grid = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    interpolation_line = None
    '''Color of lines showing non-bezier interpolation modes 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    keyframe = None
    '''Color of Keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_border = None
    '''Color of keyframe border 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    keyframe_border_selected = None
    '''Color of selected keyframe border 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    keyframe_breakdown = None
    '''Color of breakdown keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_breakdown_selected = None
    '''Color of selected breakdown keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_extreme = None
    '''Color of extreme keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_extreme_selected = None
    '''Color of selected extreme keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_jitter = None
    '''Color of jitter keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_jitter_selected = None
    '''Color of selected jitter keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_movehold = None
    '''Color of moving hold keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_movehold_selected = None
    '''Color of selected moving hold keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_scale_factor = None
    '''Scale factor for adjusting the height of keyframes 

    :type:  float in [0.8, 5], default 1.0 
    '''

    keyframe_selected = None
    '''Color of selected keyframe 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    long_key = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    long_key_selected = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    preview_range = None
    '''Color of preview range overlay 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''

    space_list = None
    '''Settings for space list 

    :type:  ThemeSpaceListGeneric, (readonly, never None) 
    '''

    summary = None
    '''Color of summary channel 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    value_sliders = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    view_sliders = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeFileBrowser:
    '''Theme settings for the File Browser '''

    selected_file = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''


class ThemeFontStyle:
    '''Theme settings for Font '''

    font_kerning_style = None
    '''Which style to use for font kerning 

    :type:  enum in [‘UNFITTED’, ‘FITTED’], default ‘UNFITTED’ 
    '''

    points = None
    '''

    :type:  int in [6, 48], default 0 
    '''

    shadow = None
    '''Shadow size (0, 3 and 5 supported) 

    :type:  int in [0, 5], default 0 
    '''

    shadow_alpha = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    shadow_offset_x = None
    '''Shadow offset in pixels 

    :type:  int in [-10, 10], default 0 
    '''

    shadow_offset_y = None
    '''Shadow offset in pixels 

    :type:  int in [-10, 10], default 0 
    '''

    shadow_value = None
    '''Shadow color in gray value 

    :type:  float in [0, 1], default 0.0 
    '''


class ThemeGradientColors:
    '''Theme settings for background colors and gradient '''

    gradient = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    high_gradient = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    show_grad = None
    '''Do a gradient for the background of the viewport working area 

    :type:  boolean, default False 
    '''


class ThemeGraphEditor:
    '''Theme settings for the graph editor '''

    active_channels_group = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    channel_group = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    channels_region = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    dopesheet_channel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    dopesheet_subchannel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    frame_current = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    grid = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_align = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_auto = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_auto_clamped = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_free = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_align = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_auto = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_auto_clamped = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_free = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_vect = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vect = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vertex_size = None
    '''

    :type:  int in [1, 100], default 0 
    '''

    lastsel_point = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    preview_range = None
    '''Color of preview range overlay 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''

    space_list = None
    '''Settings for space list 

    :type:  ThemeSpaceListGeneric, (readonly, never None) 
    '''

    vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_bevel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_size = None
    '''

    :type:  int in [1, 32], default 0 
    '''

    vertex_unreferenced = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    window_sliders = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeImageEditor:
    '''Theme settings for the Image Editor '''

    edge_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    editmesh_active = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    face = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    face_dot = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    face_select = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    facedot_size = None
    '''

    :type:  int in [1, 10], default 0 
    '''

    frame_current = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    freestyle_face_mark = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    gp_vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_size = None
    '''

    :type:  int in [1, 10], default 0 
    '''

    handle_align = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_auto = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_auto_clamped = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_free = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_align = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_auto = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_auto_clamped = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_free = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vertex_size = None
    '''

    :type:  int in [1, 100], default 0 
    '''

    metadatabg = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    metadatatext = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    paint_curve_handle = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    paint_curve_pivot = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    preview_stitch_active = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    preview_stitch_edge = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    preview_stitch_face = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    preview_stitch_stitchable = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    preview_stitch_unstitchable = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    preview_stitch_vert = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    scope_back = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''

    uv_others = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    uv_shadow = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_bevel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_size = None
    '''

    :type:  int in [1, 32], default 0 
    '''

    vertex_unreferenced = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    wire_edit = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeInfo:
    '''Theme settings for Info '''

    info_debug = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    info_debug_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    info_error = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    info_error_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    info_info = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    info_info_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    info_selected = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    info_selected_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    info_warning = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    info_warning_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''


class ThemeNLAEditor:
    '''Theme settings for the NLA Editor '''

    active_action = None
    '''Animation data-block has active action 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    active_action_unset = None
    '''Animation data-block doesn’t have active action 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    frame_current = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    grid = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe_border = None
    '''Color of keyframe border 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    keyframe_border_selected = None
    '''Color of selected keyframe border 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    meta_strips = None
    '''Meta Strip - Unselected (for grouping related strips) 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    meta_strips_selected = None
    '''Meta Strip - Selected (for grouping related strips) 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    preview_range = None
    '''Color of preview range overlay 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    sound_strips = None
    '''Sound Strip - Unselected (for timing speaker sounds) 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    sound_strips_selected = None
    '''Sound Strip - Selected (for timing speaker sounds) 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''

    space_list = None
    '''Settings for space list 

    :type:  ThemeSpaceListGeneric, (readonly, never None) 
    '''

    strips = None
    '''Action-Clip Strip - Unselected 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    strips_selected = None
    '''Action-Clip Strip - Selected 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    transition_strips = None
    '''Transition Strip - Unselected 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    transition_strips_selected = None
    '''Transition Strip - Selected 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    tweak = None
    '''Color for strip/action being ‘tweaked’ or edited 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    tweak_duplicate = None
    '''Warning/error indicator color for strips referencing the strip being tweaked 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    view_sliders = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeNodeEditor:
    '''Theme settings for the Node Editor '''

    color_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    converter_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    distor_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    filter_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    frame_node = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    gp_vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_size = None
    '''

    :type:  int in [1, 10], default 0 
    '''

    group_node = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    group_socket_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    input_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    layout_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    matte_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    node_active = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    node_backdrop = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    node_selected = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    noodle_curving = None
    '''Curving of the noodle 

    :type:  int in [0, 10], default 5 
    '''

    output_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    pattern_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    script_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    selected_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    shader_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''

    space_list = None
    '''Settings for space list 

    :type:  ThemeSpaceListGeneric, (readonly, never None) 
    '''

    texture_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vector_node = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    wire = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    wire_inner = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    wire_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeOutliner:
    '''Theme settings for the Outliner '''

    match = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    selected_highlight = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''


class ThemePanelColors:
    '''Theme settings for panel colors '''

    back = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    header = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    sub_back = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''


class ThemePreferences:
    '''Theme settings for the Blender Preferences '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''


class ThemeProperties:
    '''Theme settings for the Properties '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''


class ThemeSequenceEditor:
    '''Theme settings for the Sequence Editor '''

    audio_strip = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    draw_action = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    effect_strip = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    frame_current = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_size = None
    '''

    :type:  int in [1, 10], default 0 
    '''

    grid = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    image_strip = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    keyframe = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    meta_strip = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    metadatabg = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    metadatatext = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    movie_strip = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    movieclip_strip = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    preview_back = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    scene_strip = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''

    text_strip = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    transition_strip = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    window_sliders = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeSpaceGeneric:
    back = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    button = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    button_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    button_text_hi = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    button_title = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    execution_buts = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    header = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    header_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    header_text_hi = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    navigation_bar = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    panelcolors = None
    '''

    :type:  ThemePanelColors, (readonly, never None) 
    '''

    tab_active = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    tab_back = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    tab_inactive = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    tab_outline = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    text_hi = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    title = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeSpaceGradient:
    button = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    button_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    button_text_hi = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    button_title = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    execution_buts = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    gradients = None
    '''

    :type:  ThemeGradientColors, (readonly, never None) 
    '''

    header = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    header_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    header_text_hi = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    navigation_bar = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    panelcolors = None
    '''

    :type:  ThemePanelColors, (readonly, never None) 
    '''

    tab_active = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    tab_back = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    tab_inactive = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    tab_outline = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    text_hi = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    title = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeSpaceListGeneric:
    list = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    list_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    list_text_hi = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    list_title = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeStatusBar:
    '''Theme settings for the Status Bar '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''


class ThemeStyle:
    '''Theme settings for style sets '''

    panel_title = None
    '''

    :type:  ThemeFontStyle, (readonly, never None) 
    '''

    widget = None
    '''

    :type:  ThemeFontStyle, (readonly, never None) 
    '''

    widget_label = None
    '''

    :type:  ThemeFontStyle, (readonly, never None) 
    '''


class ThemeTextEditor:
    '''Theme settings for the Text Editor '''

    cursor = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    line_numbers_background = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    selected_text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''

    syntax_builtin = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    syntax_comment = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    syntax_numbers = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    syntax_preprocessor = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    syntax_reserved = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    syntax_special = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    syntax_string = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    syntax_symbols = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeTopBar:
    '''Theme settings for the Top Bar '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGeneric, (readonly, never None) 
    '''


class ThemeUserInterface:
    '''Theme settings for user interface elements '''

    axis_x = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    axis_y = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    axis_z = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    editor_outline = None
    '''Color of the outline of the editors and their round corners 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gizmo_a = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gizmo_b = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gizmo_hi = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gizmo_primary = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gizmo_secondary = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    icon_alpha = None
    '''Transparency of icons in the interface, to reduce contrast 

    :type:  float in [0, 1], default 0.0 
    '''

    icon_collection = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    icon_modifier = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    icon_object = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    icon_object_data = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    icon_saturation = None
    '''Saturation of icons in the interface 

    :type:  float in [0, 1], default 0.0 
    '''

    icon_shading = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    menu_shadow_fac = None
    '''Blending factor for menu shadows 

    :type:  float in [0.01, 1], default 0.0 
    '''

    menu_shadow_width = None
    '''Width of menu shadows, set to zero to disable 

    :type:  int in [0, 24], default 0 
    '''

    wcol_box = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_list_item = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_menu = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_menu_back = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_menu_item = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_num = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_numslider = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_option = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_pie_menu = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_progress = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_pulldown = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_radio = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_regular = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_scroll = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_state = None
    '''

    :type:  ThemeWidgetStateColors, (readonly, never None) 
    '''

    wcol_tab = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_text = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_toggle = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_tool = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_toolbar_item = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    wcol_tooltip = None
    '''

    :type:  ThemeWidgetColors, (readonly, never None) 
    '''

    widget_emboss = None
    '''Color of the 1px shadow line underlying widgets 

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''


class ThemeView3D:
    '''Theme settings for the 3D View '''

    act_spline = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    bone_pose = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    bone_pose_active = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    bone_solid = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    bundle_solid = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    camera = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    camera_path = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    clipping_border_3d = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    edge_bevel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    edge_crease = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    edge_facesel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    edge_seam = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    edge_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    edge_sharp = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    editmesh_active = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    empty = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    extra_edge_angle = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    extra_edge_len = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    extra_face_angle = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    extra_face_area = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    face = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    face_dot = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    face_select = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    facedot_size = None
    '''

    :type:  int in [1, 10], default 0 
    '''

    frame_current = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    freestyle_edge_mark = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    freestyle_face_mark = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    gp_vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    gp_vertex_size = None
    '''

    :type:  int in [1, 10], default 0 
    '''

    grid = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    handle_align = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_auto = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_free = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_align = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_auto = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_free = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_sel_vect = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    handle_vect = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    lastsel_point = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    light = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    normal = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    nurb_sel_uline = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    nurb_sel_vline = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    nurb_uline = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    nurb_vline = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    object_active = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    object_selected = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    outline_width = None
    '''

    :type:  int in [1, 5], default 0 
    '''

    paint_curve_handle = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    paint_curve_pivot = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    skin_root = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    space = None
    '''Settings for space 

    :type:  ThemeSpaceGradient, (readonly, never None) 
    '''

    speaker = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    split_normal = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    text_grease_pencil = None
    '''Color for indicating Grease Pencil keyframes 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    text_keyframe = None
    '''Color for indicating Object keyframes 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    transform = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_bevel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_normal = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_select = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    vertex_size = None
    '''

    :type:  int in [1, 32], default 0 
    '''

    vertex_unreferenced = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    view_overlay = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    wire = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    wire_edit = None
    '''Color for wireframe when in edit mode, but edge selection is active 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeWidgetColors:
    '''Theme settings for widget color sets '''

    inner = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    inner_sel = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    item = None
    '''

    :type:  float array of 4 items in [0, 1], default (0.0, 0.0, 0.0, 0.0) 
    '''

    outline = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    roundness = None
    '''Amount of edge rounding 

    :type:  float in [0, 1], default 0.0 
    '''

    shadedown = None
    '''

    :type:  int in [-100, 100], default 0 
    '''

    shadetop = None
    '''

    :type:  int in [-100, 100], default 0 
    '''

    show_shaded = None
    '''

    :type:  boolean, default False 
    '''

    text = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    text_sel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThemeWidgetStateColors:
    '''Theme settings for widget state colors '''

    blend = None
    '''

    :type:  float in [0, 1], default 0.0 
    '''

    inner_anim = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    inner_anim_sel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    inner_changed = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    inner_changed_sel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    inner_driven = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    inner_driven_sel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    inner_key = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    inner_key_sel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    inner_overridden = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    inner_overridden_sel = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class ThickGpencilModifier:
    '''Subdivide and Smooth Stroke modifier '''

    curve = None
    '''Custom Thickness Curve 

    :type:  CurveMapping, (readonly) 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_vertex = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    normalize_thickness = None
    '''Normalize the full stroke to modifier thickness 

    :type:  boolean, default False 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''

    thickness = None
    '''Factor of thickness change 

    :type:  int in [-100, 500], default 0 
    '''

    use_custom_curve = None
    '''Use a custom curve to define thickness changes 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name for modulating the deform 

    :type:  string, default “”, (never None) 
    '''


class TimeGpencilModifier:
    '''Time offset modifier '''

    frame_end = None
    '''Final frame of the range 

    :type:  int in [0, 1048574], default 250 
    '''

    frame_scale = None
    '''Evaluation time in seconds 

    :type:  float in [0.001, 100], default 0.0 
    '''

    frame_start = None
    '''First frame of the range 

    :type:  int in [0, 1048574], default 1 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    mode = None
    '''

    :type:  enum in [‘NORMAL’, ‘REVERSE’, ‘FIX’], default ‘NORMAL’ 
    '''

    offset = None
    '''Number of frames to offset original keyframe number or frame to fix 

    :type:  int in [-inf, inf], default 0 
    '''

    use_custom_frame_range = None
    '''Define a custom range of frames to use in modifier 

    :type:  boolean, default False 
    '''

    use_keep_loop = None
    '''Retiming end frames and move to start of animation to keep loop 

    :type:  boolean, default False 
    '''


class TimelineMarker:
    '''Marker for noting points in the timeline '''

    camera = None
    '''Camera that becomes active on this frame 

    :type:  Object 
    '''

    frame = None
    '''The frame on which the timeline marker appears 

    :type:  int in [-inf, inf], default 0 
    '''

    name = None
    '''

    :type:  string, default “”, (never None) 
    '''

    select = None
    '''Marker selection state 

    :type:  boolean, default False 
    '''


class TimelineMarkers:
    '''Collection of timeline markers '''

    def new(self, name, frame=1):
        '''Add a keyframe to the curve 

        :param name: New name for the marker (not unique) 
        :type name: string, (never None)
        :param frame: The frame for the new marker 
        :type frame: int in [-1048574, 1048574], (optional)
        :rtype: TimelineMarker 
        :return:  Newly created timeline marker 
        '''
        pass

    def remove(self, marker):
        '''Remove a timeline marker 

        :param marker: Timeline marker to remove 
        :type marker: TimelineMarker, (never None)
        '''
        pass

    def clear(self):
        '''Remove all timeline markers 

        '''
        pass


class Timer:
    '''Window event timer '''

    time_delta = None
    '''Time since last step in seconds 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    time_duration = None
    '''Time since last step in seconds 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    time_step = None
    '''

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''


class TintGpencilModifier:
    '''Tint Stroke Color modifier '''

    color = None
    '''Color used for tinting 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    create_materials = None
    '''When apply modifier, create new material 

    :type:  boolean, default False 
    '''

    factor = None
    '''Factor for mixing color 

    :type:  float in [-inf, inf], default 0.0 
    '''

    invert_layer_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_layers = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    invert_material_pass = None
    '''Inverse filter 

    :type:  boolean, default False 
    '''

    layer = None
    '''Layer name 

    :type:  string, default “”, (never None) 
    '''

    layer_pass = None
    '''Layer pass index 

    :type:  int in [0, 100], default 0 
    '''

    modify_color = None
    '''Set what colors of the stroke are affected 

    :type:  enum in [‘BOTH’, ‘STROKE’, ‘FILL’], default ‘BOTH’ 
    '''

    pass_index = None
    '''Pass index 

    :type:  int in [0, 100], default 0 
    '''


class ToolSettings:
    annotation_stroke_placement_image_editor = None
    '''

    :type:  enum in [‘CURSOR’, ‘VIEW’, ‘SURFACE’], default ‘VIEW’ 
    '''

    annotation_stroke_placement_sequencer_preview = None
    '''

    :type:  enum in [‘CURSOR’, ‘VIEW’, ‘SURFACE’], default ‘VIEW’ 
    '''

    annotation_stroke_placement_view2d = None
    '''

    :type:  enum in [‘CURSOR’, ‘VIEW’, ‘SURFACE’], default ‘VIEW’ 
    '''

    annotation_stroke_placement_view3d = None
    '''How annotation strokes are orientated in 3D space 

    :type:  enum in [‘CURSOR’, ‘VIEW’, ‘SURFACE’], default ‘CURSOR’ 
    '''

    annotation_thickness = None
    '''Thickness of annotation strokes 

    :type:  int in [1, 10], default 0 
    '''

    auto_keying_mode = None
    '''Mode of automatic keyframe insertion for Objects and Bones 

    :type:  enum in [‘ADD_REPLACE_KEYS’, ‘REPLACE_KEYS’], default ‘ADD_REPLACE_KEYS’ 
    '''

    curve_paint_settings = None
    '''

    :type:  CurvePaintSettings, (readonly, never None) 
    '''

    double_threshold = None
    '''Limit for removing duplicates and ‘Auto Merge’ 

    :type:  float in [0, 1], default 0.0 
    '''

    edge_path_mode = None
    '''The edge flag to tag when selecting the shortest path 

    :type:  enum in [‘SELECT’, ‘SEAM’, ‘SHARP’, ‘CREASE’, ‘BEVEL’, ‘FREESTYLE’], default ‘SELECT’ 
    '''

    face_strength = None
    '''Set strength of face to specified value 

    :type:  enum in [‘Weak’, ‘Medium’, ‘Strong’], default ‘Medium’ 
    '''

    gpencil_interpolate = None
    '''Settings for Grease Pencil Interpolation tools 

    :type:  GPencilInterpolateSettings, (readonly) 
    '''

    gpencil_paint = None
    '''

    :type:  GpPaint, (readonly) 
    '''

    gpencil_sculpt = None
    '''Settings for stroke sculpting tools and brushes 

    :type:  GPencilSculptSettings, (readonly) 
    '''

    gpencil_selectmode = None
    '''

    :type:  enum in [‘POINT’, ‘STROKE’, ‘SEGMENT’], default ‘POINT’ 
    '''

    gpencil_stroke_placement_view3d = None
    '''

    :type:  enum in [‘ORIGIN’, ‘CURSOR’, ‘SURFACE’, ‘STROKE’], default ‘ORIGIN’ 
    '''

    gpencil_stroke_snap_mode = None
    '''

    :type:  enum in [‘NONE’, ‘ENDS’, ‘FIRST’], default ‘NONE’ 
    '''

    image_paint = None
    '''

    :type:  ImagePaint, (readonly) 
    '''

    keyframe_type = None
    '''Type of keyframes to create when inserting keyframes 

    :type:  enum in [‘KEYFRAME’, ‘BREAKDOWN’, ‘MOVING_HOLD’, ‘EXTREME’, ‘JITTER’], default ‘KEYFRAME’ 
    '''

    lock_markers = None
    '''Prevent marker editing 

    :type:  boolean, default False 
    '''

    lock_object_mode = None
    '''Restrict select to the current mode 

    :type:  boolean, default False 
    '''

    mesh_select_mode = None
    '''Which mesh elements selection works on 

    :type:  boolean array of 3 items, default (False, False, False) 
    '''

    normal_vector = None
    '''Normal Vector used to copy, add or multiply 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    particle_edit = None
    '''

    :type:  ParticleEdit, (readonly) 
    '''

    proportional_edit = None
    '''Proportional Editing mode, allows transforms with distance fall-off 

    :type:  enum in [‘DISABLED’, ‘ENABLED’, ‘PROJECTED’, ‘CONNECTED’], default ‘DISABLED’ 
    '''

    proportional_edit_falloff = None
    '''Falloff type for proportional editing mode 

    :type:  enum in [‘SMOOTH’, ‘SPHERE’, ‘ROOT’, ‘INVERSE_SQUARE’, ‘SHARP’, ‘LINEAR’, ‘CONSTANT’, ‘RANDOM’], default ‘SMOOTH’ 
    '''

    proportional_size = None
    '''Display size for proportional editing circle 

    :type:  float in [1e-05, 5000], default 0.0 
    '''

    sculpt = None
    '''

    :type:  Sculpt, (readonly) 
    '''

    show_uv_local_view = None
    '''Display only faces with the currently displayed image assigned 

    :type:  boolean, default False 
    '''

    snap_elements = None
    '''Type of element to snap to 

    :type:  enum set in {‘INCREMENT’, ‘VERTEX’, ‘EDGE’, ‘FACE’, ‘VOLUME’}, default {‘INCREMENT’} 
    '''

    snap_node_element = None
    '''Type of element to snap to 

    :type:  enum in [‘GRID’, ‘NODE_X’, ‘NODE_Y’, ‘NODE_XY’], default ‘GRID’ 
    '''

    snap_target = None
    '''Which part to snap onto the target 

    :type:  enum in [‘CLOSEST’, ‘CENTER’, ‘MEDIAN’, ‘ACTIVE’], default ‘CLOSEST’ 
    '''

    snap_uv_element = None
    '''Type of element to snap to 

    :type:  enum in [‘INCREMENT’, ‘VERTEX’], default ‘INCREMENT’ 
    '''

    statvis = None
    '''

    :type:  MeshStatVis, (readonly, never None) 
    '''

    transform_pivot_point = None
    '''Pivot center for rotation/scaling 

    :type:  enum in [‘BOUNDING_BOX_CENTER’, ‘CURSOR’, ‘INDIVIDUAL_ORIGINS’, ‘MEDIAN_POINT’, ‘ACTIVE_ELEMENT’], default ‘BOUNDING_BOX_CENTER’ 
    '''

    unified_paint_settings = None
    '''

    :type:  UnifiedPaintSettings, (readonly, never None) 
    '''

    use_auto_normalize = None
    '''Ensure all bone-deforming vertex groups add up to 1.0 while weight painting 

    :type:  boolean, default False 
    '''

    use_edge_path_live_unwrap = None
    '''Changing edges seam re-calculates UV unwrap 

    :type:  boolean, default False 
    '''

    use_gpencil_draw_additive = None
    '''When creating new frames, the strokes from the previous/active frame are included as the basis for the new one 

    :type:  boolean, default False 
    '''

    use_gpencil_draw_onback = None
    '''When draw new strokes, the new stroke is drawn below of all strokes in the layer 

    :type:  boolean, default False 
    '''

    use_gpencil_stroke_endpoints = None
    '''Only use the first and last parts of the stroke for snapping 

    :type:  boolean, default False 
    '''

    use_gpencil_thumbnail_list = None
    '''Show compact list of color instead of thumbnails 

    :type:  boolean, default False 
    '''

    use_gpencil_weight_data_add = None
    '''When creating new strokes, the weight data is added according to the current vertex group and weight, if no vertex group selected, weight is not added 

    :type:  boolean, default False 
    '''

    use_keyframe_cycle_aware = None
    '''For channels with cyclic extrapolation, keyframe insertion is automatically remapped inside the cycle time range, and keeps ends in sync 

    :type:  boolean, default False 
    '''

    use_keyframe_insert_auto = None
    '''Automatic keyframe insertion for Objects and Bones 

    :type:  boolean, default False 
    '''

    use_keyframe_insert_keyingset = None
    '''Automatic keyframe insertion using active Keying Set only 

    :type:  boolean, default False 
    '''

    use_mesh_automerge = None
    '''Automatically merge vertices moved to the same location 

    :type:  boolean, default False 
    '''

    use_multipaint = None
    '''Paint across the weights of all selected bones, maintaining their relative influence 

    :type:  boolean, default False 
    '''

    use_proportional_action = None
    '''Proportional editing in action editor 

    :type:  boolean, default False 
    '''

    use_proportional_edit_mask = None
    '''Proportional editing mask mode 

    :type:  boolean, default False 
    '''

    use_proportional_edit_objects = None
    '''Proportional editing object mode 

    :type:  boolean, default False 
    '''

    use_proportional_fcurve = None
    '''Proportional editing in FCurve editor 

    :type:  boolean, default False 
    '''

    use_record_with_nla = None
    '''Add a new NLA Track + Strip for every loop/pass made over the animation to allow non-destructive tweaking 

    :type:  boolean, default False 
    '''

    use_snap = None
    '''Snap during transform 

    :type:  boolean, default False 
    '''

    use_snap_align_rotation = None
    '''Align rotation with the snapping target 

    :type:  boolean, default False 
    '''

    use_snap_grid_absolute = None
    '''Absolute grid alignment while translating (based on the pivot center) 

    :type:  boolean, default False 
    '''

    use_snap_peel_object = None
    '''Consider objects as whole when finding volume center 

    :type:  boolean, default False 
    '''

    use_snap_project = None
    '''Project individual elements on the surface of other objects 

    :type:  boolean, default False 
    '''

    use_snap_rotate = None
    '''Rotate is affected by the snapping settings 

    :type:  boolean, default False 
    '''

    use_snap_scale = None
    '''Scale is affected by snapping settings 

    :type:  boolean, default False 
    '''

    use_snap_self = None
    '''Snap onto itself (Edit Mode Only) 

    :type:  boolean, default False 
    '''

    use_snap_translate = None
    '''Move is affected by snapping settings 

    :type:  boolean, default False 
    '''

    use_transform_pivot_point_align = None
    '''Manipulate center points (object, pose and weight paint mode only) 

    :type:  boolean, default False 
    '''

    use_uv_sculpt = None
    '''Enable brush for UV sculpting 

    :type:  boolean, default False 
    '''

    use_uv_select_sync = None
    '''Keep UV and edit mode mesh selection in sync 

    :type:  boolean, default False 
    '''

    uv_relax_method = None
    '''Algorithm used for UV relaxation 

    :type:  enum in [‘LAPLACIAN’, ‘HC’], default ‘LAPLACIAN’ 
    '''

    uv_sculpt = None
    '''

    :type:  UvSculpt, (readonly) 
    '''

    uv_sculpt_all_islands = None
    '''Brush operates on all islands 

    :type:  boolean, default False 
    '''

    uv_sculpt_lock_borders = None
    '''Disable editing of boundary edges 

    :type:  boolean, default False 
    '''

    uv_sculpt_tool = None
    '''Select Tools for the UV sculpt brushes 

    :type:  enum in [‘PINCH’, ‘RELAX’, ‘GRAB’], default ‘PINCH’ 
    '''

    uv_select_mode = None
    '''UV selection and display mode 

    :type:  enum in [‘VERTEX’, ‘EDGE’, ‘FACE’, ‘ISLAND’], default ‘VERTEX’ 
    '''

    vertex_group_subset = None
    '''Filter Vertex groups for Display 

    :type:  enum in [‘ALL’, ‘BONE_DEFORM’, ‘OTHER_DEFORM’], default ‘ALL’ 
    '''

    vertex_group_user = None
    '''Display unweighted vertices 

    :type:  enum in [‘NONE’, ‘ACTIVE’, ‘ALL’], default ‘NONE’ 
    '''

    vertex_group_weight = None
    '''Weight to assign in vertex groups 

    :type:  float in [0, 1], default 0.0 
    '''

    vertex_paint = None
    '''

    :type:  VertexPaint, (readonly) 
    '''

    weight_paint = None
    '''

    :type:  VertexPaint, (readonly) 
    '''


class TrackToConstraint:
    '''Aim the constrained object toward the target '''

    head_tail = None
    '''Target along length of bone: Head=0, Tail=1 

    :type:  float in [0, 1], default 0.0 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    track_axis = None
    '''Axis that points to the target object 

    :type:  enum in [‘TRACK_X’, ‘TRACK_Y’, ‘TRACK_Z’, ‘TRACK_NEGATIVE_X’, ‘TRACK_NEGATIVE_Y’, ‘TRACK_NEGATIVE_Z’], default ‘TRACK_X’ 
    '''

    up_axis = None
    '''Axis that points upward 

    :type:  enum in [‘UP_X’, ‘UP_Y’, ‘UP_Z’], default ‘UP_X’ 
    '''

    use_bbone_shape = None
    '''Follow shape of B-Bone segments when calculating Head/Tail position 

    :type:  boolean, default False 
    '''

    use_target_z = None
    '''Target’s Z axis, not World Z axis, will constraint the Up direction 

    :type:  boolean, default False 
    '''


class TransformCacheConstraint:
    '''Look up transformation from an external file '''

    cache_file = None
    '''

    :type:  CacheFile 
    '''

    object_path = None
    '''Path to the object in the Alembic archive used to lookup the transform matrix 

    :type:  string, default “”, (never None) 
    '''


class TransformConstraint:
    '''Map transformations of the target to the object '''

    from_max_x = None
    '''Top range of X axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_max_x_rot = None
    '''Top range of X axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_max_x_scale = None
    '''Top range of X axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_max_y = None
    '''Top range of Y axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_max_y_rot = None
    '''Top range of Y axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_max_y_scale = None
    '''Top range of Y axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_max_z = None
    '''Top range of Z axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_max_z_rot = None
    '''Top range of Z axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_max_z_scale = None
    '''Top range of Z axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_min_x = None
    '''Bottom range of X axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_min_x_rot = None
    '''Bottom range of X axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_min_x_scale = None
    '''Bottom range of X axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_min_y = None
    '''Bottom range of Y axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_min_y_rot = None
    '''Bottom range of Y axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_min_y_scale = None
    '''Bottom range of Y axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_min_z = None
    '''Bottom range of Z axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_min_z_rot = None
    '''Bottom range of Z axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    from_min_z_scale = None
    '''Bottom range of Z axis source motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    map_from = None
    '''The transformation type to use from the target 

    :type:  enum in [‘LOCATION’, ‘ROTATION’, ‘SCALE’], default ‘LOCATION’ 
    '''

    map_to = None
    '''The transformation type to affect of the constrained object 

    :type:  enum in [‘LOCATION’, ‘ROTATION’, ‘SCALE’], default ‘LOCATION’ 
    '''

    map_to_x_from = None
    '''The source axis constrained object’s X axis uses 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    map_to_y_from = None
    '''The source axis constrained object’s Y axis uses 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    map_to_z_from = None
    '''The source axis constrained object’s Z axis uses 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    subtarget = None
    '''Armature bone, mesh or lattice vertex group, … 

    :type:  string, default “”, (never None) 
    '''

    target = None
    '''Target object 

    :type:  Object 
    '''

    to_max_x = None
    '''Top range of X axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_max_x_rot = None
    '''Top range of X axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_max_x_scale = None
    '''Top range of X axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_max_y = None
    '''Top range of Y axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_max_y_rot = None
    '''Top range of Y axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_max_y_scale = None
    '''Top range of Y axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_max_z = None
    '''Top range of Z axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_max_z_rot = None
    '''Top range of Z axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_max_z_scale = None
    '''Top range of Z axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_min_x = None
    '''Bottom range of X axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_min_x_rot = None
    '''Bottom range of X axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_min_x_scale = None
    '''Bottom range of X axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_min_y = None
    '''Bottom range of Y axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_min_y_rot = None
    '''Bottom range of Y axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_min_y_scale = None
    '''Bottom range of Y axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_min_z = None
    '''Bottom range of Z axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_min_z_rot = None
    '''Bottom range of Z axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    to_min_z_scale = None
    '''Bottom range of Z axis destination motion 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_motion_extrapolate = None
    '''Extrapolate ranges 

    :type:  boolean, default False 
    '''


class TransformOrientation:
    matrix = None
    '''

    :type:  float multi-dimensional array of 3 * 3 items in [-inf, inf], default ((0.0, 0.0, 0.0), (0.0, 0.0, 0.0), (0.0, 0.0, 0.0)) 
    '''

    name = None
    '''Name of the custom transform orientation 

    :type:  string, default “”, (never None) 
    '''


class TransformOrientationSlot:
    custom_orientation = None
    '''

    :type:  TransformOrientation, (readonly) 
    '''

    type = None
    '''Transformation orientation 

    :type:  enum in [‘GLOBAL’, ‘LOCAL’, ‘NORMAL’, ‘GIMBAL’, ‘VIEW’, ‘CURSOR’], default ‘GLOBAL’ 
    '''

    use = None
    '''Use scene orientation instead of a custom setting 

    :type:  boolean, default False 
    '''


class TransformSequence:
    '''Sequence strip applying affine transformations to other strips '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    interpolation = None
    '''Method to determine how missing pixels are created 

    :type:  enum in [‘NONE’, ‘BILINEAR’, ‘BICUBIC’], default ‘NONE’ 
    '''

    rotation_start = None
    '''Degrees to rotate the input 

    :type:  float in [-inf, inf], default 0.0 
    '''

    scale_start_x = None
    '''Amount to scale the input in the X axis 

    :type:  float in [0, inf], default 0.0 
    '''

    scale_start_y = None
    '''Amount to scale the input in the Y axis 

    :type:  float in [0, inf], default 0.0 
    '''

    translate_start_x = None
    '''Amount to move the input on the X axis 

    :type:  float in [-inf, inf], default 0.0 
    '''

    translate_start_y = None
    '''Amount to move the input on the Y axis 

    :type:  float in [-inf, inf], default 0.0 
    '''

    translation_unit = None
    '''Unit of measure to translate the input 

    :type:  enum in [‘PIXELS’, ‘PERCENT’], default ‘PIXELS’ 
    '''

    use_uniform_scale = None
    '''Scale uniformly, preserving aspect ratio 

    :type:  boolean, default False 
    '''


class TriangulateModifier:
    '''Triangulate Mesh '''

    keep_custom_normals = None
    '''Try to preserve custom normals (WARNING: depending on chosen triangulation method, shading may not be fully preserved, ‘Fixed’ method usually gives the best result here) 

    :type:  boolean, default False 
    '''

    min_vertices = None
    '''Triangulate only polygons with vertex count greater than or equal to this number 

    :type:  int in [4, inf], default 0 
    '''

    ngon_method = None
    '''Method for splitting the polygons into triangles 

    :type:  enum in [‘BEAUTY’, ‘CLIP’], default ‘BEAUTY’ 
    '''

    quad_method = None
    '''Method for splitting the quads into triangles 

    :type:  enum in [‘BEAUTY’, ‘FIXED’, ‘FIXED_ALTERNATE’, ‘SHORTEST_DIAGONAL’], default ‘BEAUTY’ 
    '''


class UILayout:
    '''User interface layout in a panel or header '''

    activate_init = None
    '''When true, buttons defined in popups will be activated on first display (use so you can type into a field without having to click on it first) 

    :type:  boolean, default False 
    '''

    active = None
    '''

    :type:  boolean, default False 
    '''

    active_default = None
    '''When true, an operator button defined after this will be activated when pressing return(use with popup dialogs) 

    :type:  boolean, default False 
    '''

    alert = None
    '''

    :type:  boolean, default False 
    '''

    alignment = None
    '''

    :type:  enum in [‘EXPAND’, ‘LEFT’, ‘CENTER’, ‘RIGHT’], default ‘EXPAND’ 
    '''

    direction = None
    '''

    :type:  enum in [‘HORIZONTAL’, ‘VERTICAL’], default ‘HORIZONTAL’, (readonly) 
    '''

    emboss = None
    '''

    :type:  enum in [‘NORMAL’, ‘NONE’, ‘PULLDOWN_MENU’, ‘RADIAL_MENU’], default ‘NORMAL’ 
    '''

    enabled = None
    '''When false, this (sub)layout is grayed out 

    :type:  boolean, default False 
    '''

    operator_context = None
    '''

    :type:  enum in [‘INVOKE_DEFAULT’, ‘INVOKE_REGION_WIN’, ‘INVOKE_REGION_CHANNELS’, ‘INVOKE_REGION_PREVIEW’, ‘INVOKE_AREA’, ‘INVOKE_SCREEN’, ‘EXEC_DEFAULT’, ‘EXEC_REGION_WIN’, ‘EXEC_REGION_CHANNELS’, ‘EXEC_REGION_PREVIEW’, ‘EXEC_AREA’, ‘EXEC_SCREEN’], default ‘INVOKE_DEFAULT’ 
    '''

    scale_x = None
    '''Scale factor along the X for items in this (sub)layout 

    :type:  float in [0, inf], default 0.0 
    '''

    scale_y = None
    '''Scale factor along the Y for items in this (sub)layout 

    :type:  float in [0, inf], default 0.0 
    '''

    ui_units_x = None
    '''Fixed Size along the X for items in this (sub)layout 

    :type:  float in [0, inf], default 0.0 
    '''

    ui_units_y = None
    '''Fixed Size along the Y for items in this (sub)layout 

    :type:  float in [0, inf], default 0.0 
    '''

    use_property_decorate = None
    '''

    :type:  boolean, default False 
    '''

    use_property_split = None
    '''

    :type:  boolean, default False 
    '''

    def row(self, align=False):
        '''Sub-layout. Items placed in this sublayout are placed next to each other in a row 

        :param align: Align buttons to each other 
        :type align: boolean, (optional)
        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def column(self, align=False):
        '''Sub-layout. Items placed in this sublayout are placed under each other in a column 

        :param align: Align buttons to each other 
        :type align: boolean, (optional)
        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def column_flow(self, columns=0, align=False):
        '''column_flow 

        :param columns: Number of columns, 0 is automatic 
        :type columns: int in [0, inf], (optional)
        :param align: Align buttons to each other 
        :type align: boolean, (optional)
        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def grid_flow(self,
                  row_major=False,
                  columns=0,
                  even_columns=False,
                  even_rows=False,
                  align=False):
        '''grid_flow 

        :param row_major: Fill row by row, instead of column by column 
        :type row_major: boolean, (optional)
        :param columns: Number of columns, positive are absolute fixed numbers, 0 is automatic, negative are automatic multiple numbers along major axis (e.g. -2 will only produce 2, 4, 6 etc. columns for row major layout, and 2, 4, 6 etc. rows for column major layout) 
        :type columns: int in [-inf, inf], (optional)
        :param even_columns: All columns will have the same width 
        :type even_columns: boolean, (optional)
        :param even_rows: All rows will have the same height 
        :type even_rows: boolean, (optional)
        :param align: Align buttons to each other 
        :type align: boolean, (optional)
        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def box(self):
        '''Sublayout (items placed in this sublayout are placed under each other in a column and are surrounded by a box) 

        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def split(self, factor=0.0, align=False):
        '''split 

        :param factor: Percentage, Percentage of width to split at (leave unset for automatic calculation) 
        :type factor: float in [0, 1], (optional)
        :param align: Align buttons to each other 
        :type align: boolean, (optional)
        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def menu_pie(self):
        '''Sublayout. Items placed in this sublayout are placed in a radial fashion around the menu center) 

        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def prop(self,
             data,
             property,
             text="",
             text_ctxt="",
             translate=True,
             icon='NONE',
             expand=False,
             slider=False,
             toggle=False,
             icon_only=False,
             event=False,
             full_event=False,
             emboss=True,
             index=-1,
             icon_value=0):
        '''Item. Exposes an RNA item and places it into the layout 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        :param expand: Expand button to show more detail 
        :type expand: boolean, (optional)
        :param slider: Use slider widget for numeric values 
        :type slider: boolean, (optional)
        :param toggle: Use toggle widget for boolean values 
        :type toggle: boolean, (optional)
        :param icon_only: Draw only icons in buttons, no text 
        :type icon_only: boolean, (optional)
        :param event: Use button to input key events 
        :type event: boolean, (optional)
        :param full_event: Use button to input full events including modifiers 
        :type full_event: boolean, (optional)
        :param emboss: Draw the button itself, not just the icon/text 
        :type emboss: boolean, (optional)
        :param index: The index of this button, when set a single member of an array can be accessed, when set to -1 all array members are used 
        :type index: int in [-2, inf], (optional)
        :param icon_value: Icon Value, Override automatic icon of the item 
        :type icon_value: int in [0, inf], (optional)
        '''
        pass

    def props_enum(self, data, property):
        '''props_enum 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def prop_menu_enum(self,
                       data,
                       property,
                       text="",
                       text_ctxt="",
                       translate=True,
                       icon='NONE'):
        '''prop_menu_enum 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        '''
        pass

    def prop_with_popover(self,
                          data,
                          property,
                          text="",
                          text_ctxt="",
                          translate=True,
                          icon='NONE',
                          icon_only=False,
                          panel):
        '''prop_with_popover 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        :param icon_only: Draw only icons in tabs, no text 
        :type icon_only: boolean, (optional)
        :param panel: Identifier of the panel 
        :type panel: string, (never None)
        '''
        pass

    def prop_with_menu(self,
                       data,
                       property,
                       text="",
                       text_ctxt="",
                       translate=True,
                       icon='NONE',
                       icon_only=False,
                       menu):
        '''prop_with_menu 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        :param icon_only: Draw only icons in tabs, no text 
        :type icon_only: boolean, (optional)
        :param menu: Identifier of the menu 
        :type menu: string, (never None)
        '''
        pass

    def prop_tabs_enum(self, data, property, icon_only=False):
        '''prop_tabs_enum 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param icon_only: Draw only icons in tabs, no text 
        :type icon_only: boolean, (optional)
        '''
        pass

    def prop_enum(self,
                  data,
                  property,
                  value,
                  text="",
                  text_ctxt="",
                  translate=True,
                  icon='NONE'):
        '''prop_enum 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param value: Enum property value 
        :type value: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        '''
        pass

    def prop_search(self,
                    data,
                    property,
                    search_data,
                    search_property,
                    text="",
                    text_ctxt="",
                    translate=True,
                    icon='NONE'):
        '''prop_search 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param search_data: Data from which to take collection to search in 
        :type search_data: AnyType, (never None)
        :param search_property: Identifier of search collection property 
        :type search_property: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        '''
        pass

    def operator(self,
                 operator,
                 text="",
                 text_ctxt="",
                 translate=True,
                 icon='NONE',
                 emboss=True,
                 depress=False,
                 icon_value=0):
        '''Item. Places a button into the layout to call an Operator 

        :param operator: Identifier of the operator 
        :type operator: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        :param emboss: Draw the button itself, not just the icon/text 
        :type emboss: boolean, (optional)
        :param depress: Draw pressed in 
        :type depress: boolean, (optional)
        :param icon_value: Icon Value, Override automatic icon of the item 
        :type icon_value: int in [0, inf], (optional)
        :rtype: OperatorProperties 
        :return:  Operator properties to fill in 
        '''
        pass

    def operator_menu_hold(self,
                           operator,
                           text="",
                           text_ctxt="",
                           translate=True,
                           icon='NONE',
                           emboss=True,
                           depress=False,
                           icon_value=0,
                           menu):
        '''Item. Places a button into the layout to call an Operator 

        :param operator: Identifier of the operator 
        :type operator: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        :param emboss: Draw the button itself, not just the icon/text 
        :type emboss: boolean, (optional)
        :param depress: Draw pressed in 
        :type depress: boolean, (optional)
        :param icon_value: Icon Value, Override automatic icon of the item 
        :type icon_value: int in [0, inf], (optional)
        :param menu: Identifier of the menu 
        :type menu: string, (never None)
        :rtype: OperatorProperties 
        :return:  Operator properties to fill in 
        '''
        pass

    def operator_enum(self, operator, property):
        '''operator_enum 

        :param operator: Identifier of the operator 
        :type operator: string, (never None)
        :param property: Identifier of property in operator 
        :type property: string, (never None)
        '''
        pass

    def operator_menu_enum(self,
                           operator,
                           property,
                           text="",
                           text_ctxt="",
                           translate=True,
                           icon='NONE'):
        '''operator_menu_enum 

        :param operator: Identifier of the operator 
        :type operator: string, (never None)
        :param property: Identifier of property in operator 
        :type property: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        '''
        pass

    def label(self,
              text="",
              text_ctxt="",
              translate=True,
              icon='NONE',
              icon_value=0):
        '''Item. Displays text and/or icon in the layout 

        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        :param icon_value: Icon Value, Override automatic icon of the item 
        :type icon_value: int in [0, inf], (optional)
        '''
        pass

    def menu(self,
             menu,
             text="",
             text_ctxt="",
             translate=True,
             icon='NONE',
             icon_value=0):
        '''menu 

        :param menu: Identifier of the menu 
        :type menu: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        :param icon_value: Icon Value, Override automatic icon of the item 
        :type icon_value: int in [0, inf], (optional)
        '''
        pass

    def menu_contents(self, menu):
        '''menu_contents 

        :param menu: Identifier of the menu 
        :type menu: string, (never None)
        '''
        pass

    def popover(self,
                panel,
                text="",
                text_ctxt="",
                translate=True,
                icon='NONE',
                icon_value=0):
        '''popover 

        :param panel: Identifier of the panel 
        :type panel: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        :param icon: Icon, Override automatic icon of the item 
        :type icon: enum in ['NONE', 'QUESTION', 'ERROR', 'CANCEL', 'TRIA_RIGHT', 'TRIA_DOWN', 'TRIA_LEFT', 'TRIA_UP', 'ARROW_LEFTRIGHT', 'PLUS', 'DISCLOSURE_TRI_RIGHT', 'DISCLOSURE_TRI_DOWN', 'RADIOBUT_OFF', 'RADIOBUT_ON', 'MENU_PANEL', 'BLENDER', 'GRIP', 'DOT', 'COLLAPSEMENU', 'X', 'DUPLICATE', 'TRASH', 'NODE', 'NODE_SEL', 'WINDOW', 'WORKSPACE', 'RIGHTARROW_THIN', 'BORDERMOVE', 'VIEWZOOM', 'ADD', 'REMOVE', 'PANEL_CLOSE', 'COPY_ID', 'EYEDROPPER', 'AUTO', 'CHECKBOX_DEHLT', 'CHECKBOX_HLT', 'UNLOCKED', 'LOCKED', 'UNPINNED', 'PINNED', 'SCREEN_BACK', 'RIGHTARROW', 'DOWNARROW_HLT', 'PLUGIN', 'HELP', 'GHOST_ENABLED', 'COLOR', 'UNLINKED', 'LINKED', 'HAND', 'ZOOM_ALL', 'ZOOM_SELECTED', 'ZOOM_PREVIOUS', 'ZOOM_IN', 'ZOOM_OUT', 'DRIVER_DISTANCE', 'DRIVER_ROTATIONAL_DIFFERENCE', 'DRIVER_TRANSFORM', 'FREEZE', 'STYLUS_PRESSURE', 'GHOST_DISABLED', 'FILE_NEW', 'FILE_TICK', 'QUIT', 'URL', 'RECOVER_LAST', 'THREE_DOTS', 'FULLSCREEN_ENTER', 'FULLSCREEN_EXIT', 'LIGHT', 'MATERIAL', 'TEXTURE', 'ANIM', 'WORLD', 'SCENE', 'OUTPUT', 'SCRIPT', 'PARTICLES', 'PHYSICS', 'SPEAKER', 'TOOL_SETTINGS', 'SHADERFX', 'MODIFIER', 'BLANK1', 'FAKE_USER_OFF', 'FAKE_USER_ON', 'VIEW3D', 'GRAPH', 'OUTLINER', 'PROPERTIES', 'FILEBROWSER', 'IMAGE', 'INFO', 'SEQUENCE', 'TEXT', 'SOUND', 'ACTION', 'NLA', 'PREFERENCES', 'TIME', 'NODETREE', 'CONSOLE', 'TRACKER', 'ASSET_MANAGER', 'NODE_COMPOSITING', 'NODE_TEXTURE', 'NODE_MATERIAL', 'UV', 'OBJECT_DATAMODE', 'EDITMODE_HLT', 'UV_DATA', 'VPAINT_HLT', 'TPAINT_HLT', 'WPAINT_HLT', 'SCULPTMODE_HLT', 'POSE_HLT', 'PARTICLEMODE', 'TRACKING', 'TRACKING_BACKWARDS', 'TRACKING_FORWARDS', 'TRACKING_BACKWARDS_SINGLE', 'TRACKING_FORWARDS_SINGLE', 'TRACKING_CLEAR_BACKWARDS', 'TRACKING_CLEAR_FORWARDS', 'TRACKING_REFINE_BACKWARDS', 'TRACKING_REFINE_FORWARDS', 'SCENE_DATA', 'RENDERLAYERS', 'WORLD_DATA', 'OBJECT_DATA', 'MESH_DATA', 'CURVE_DATA', 'META_DATA', 'LATTICE_DATA', 'LIGHT_DATA', 'MATERIAL_DATA', 'TEXTURE_DATA', 'ANIM_DATA', 'CAMERA_DATA', 'PARTICLE_DATA', 'LIBRARY_DATA_DIRECT', 'GROUP', 'ARMATURE_DATA', 'COMMUNITY', 'BONE_DATA', 'CONSTRAINT', 'SHAPEKEY_DATA', 'CONSTRAINT_BONE', 'CAMERA_STEREO', 'PACKAGE', 'UGLYPACKAGE', 'EXPERIMENTAL', 'BRUSH_DATA', 'IMAGE_DATA', 'FILE', 'FCURVE', 'FONT_DATA', 'RENDER_RESULT', 'SURFACE_DATA', 'EMPTY_DATA', 'PRESET', 'RENDER_ANIMATION', 'RENDER_STILL', 'LIBRARY_DATA_BROKEN', 'BOIDS', 'STRANDS', 'LIBRARY_DATA_INDIRECT', 'GREASEPENCIL', 'LINE_DATA', 'LIBRARY_DATA_OVERRIDE', 'GROUP_BONE', 'GROUP_VERTEX', 'GROUP_VCOL', 'GROUP_UVS', 'FACE_MAPS', 'RNA', 'RNA_ADD', 'MOUSE_LMB', 'MOUSE_MMB', 'MOUSE_RMB', 'MOUSE_MOVE', 'MOUSE_LMB_DRAG', 'MOUSE_MMB_DRAG', 'MOUSE_RMB_DRAG', 'PRESET_NEW', 'DECORATE', 'DECORATE_KEYFRAME', 'DECORATE_ANIMATE', 'DECORATE_DRIVER', 'DECORATE_LINKED', 'DECORATE_LIBRARY_OVERRIDE', 'DECORATE_UNLOCKED', 'DECORATE_LOCKED', 'DECORATE_OVERRIDE', 'TRACKER_DATA', 'HEART', 'ORPHAN_DATA', 'USER', 'SYSTEM', 'SETTINGS', 'OUTLINER_OB_EMPTY', 'OUTLINER_OB_MESH', 'OUTLINER_OB_CURVE', 'OUTLINER_OB_LATTICE', 'OUTLINER_OB_META', 'OUTLINER_OB_LIGHT', 'OUTLINER_OB_CAMERA', 'OUTLINER_OB_ARMATURE', 'OUTLINER_OB_FONT', 'OUTLINER_OB_SURFACE', 'OUTLINER_OB_SPEAKER', 'OUTLINER_OB_FORCE_FIELD', 'OUTLINER_OB_GROUP_INSTANCE', 'OUTLINER_OB_GREASEPENCIL', 'OUTLINER_OB_LIGHTPROBE', 'OUTLINER_OB_IMAGE', 'RESTRICT_COLOR_OFF', 'RESTRICT_COLOR_ON', 'HIDE_ON', 'HIDE_OFF', 'RESTRICT_SELECT_ON', 'RESTRICT_SELECT_OFF', 'RESTRICT_RENDER_ON', 'RESTRICT_RENDER_OFF', 'OUTLINER_DATA_EMPTY', 'OUTLINER_DATA_MESH', 'OUTLINER_DATA_CURVE', 'OUTLINER_DATA_LATTICE', 'OUTLINER_DATA_META', 'OUTLINER_DATA_LIGHT', 'OUTLINER_DATA_CAMERA', 'OUTLINER_DATA_ARMATURE', 'OUTLINER_DATA_FONT', 'OUTLINER_DATA_SURFACE', 'OUTLINER_DATA_SPEAKER', 'OUTLINER_DATA_GREASEPENCIL', 'GP_SELECT_POINTS', 'GP_SELECT_STROKES', 'GP_MULTIFRAME_EDITING', 'GP_ONLY_SELECTED', 'GP_SELECT_BETWEEN_STROKES', 'MODIFIER_OFF', 'MODIFIER_ON', 'ONIONSKIN_OFF', 'ONIONSKIN_ON', 'RESTRICT_VIEW_ON', 'RESTRICT_VIEW_OFF', 'MESH_PLANE', 'MESH_CUBE', 'MESH_CIRCLE', 'MESH_UVSPHERE', 'MESH_ICOSPHERE', 'MESH_GRID', 'MESH_MONKEY', 'MESH_CYLINDER', 'MESH_TORUS', 'MESH_CONE', 'MESH_CAPSULE', 'EMPTY_SINGLE_ARROW', 'LIGHT_POINT', 'LIGHT_SUN', 'LIGHT_SPOT', 'LIGHT_HEMI', 'LIGHT_AREA', 'CUBE', 'SPHERE', 'CONE', 'META_PLANE', 'META_CUBE', 'META_BALL', 'META_ELLIPSOID', 'META_CAPSULE', 'SURFACE_NCURVE', 'SURFACE_NCIRCLE', 'SURFACE_NSURFACE', 'SURFACE_NCYLINDER', 'SURFACE_NSPHERE', 'SURFACE_NTORUS', 'EMPTY_AXIS', 'STROKE', 'EMPTY_ARROWS', 'CURVE_BEZCURVE', 'CURVE_BEZCIRCLE', 'CURVE_NCURVE', 'CURVE_NCIRCLE', 'CURVE_PATH', 'LIGHTPROBE_CUBEMAP', 'LIGHTPROBE_PLANAR', 'LIGHTPROBE_GRID', 'COLOR_RED', 'COLOR_GREEN', 'COLOR_BLUE', 'TRIA_RIGHT_BAR', 'TRIA_DOWN_BAR', 'TRIA_LEFT_BAR', 'TRIA_UP_BAR', 'FORCE_FORCE', 'FORCE_WIND', 'FORCE_VORTEX', 'FORCE_MAGNETIC', 'FORCE_HARMONIC', 'FORCE_CHARGE', 'FORCE_LENNARDJONES', 'FORCE_TEXTURE', 'FORCE_CURVE', 'FORCE_BOID', 'FORCE_TURBULENCE', 'FORCE_DRAG', 'FORCE_SMOKEFLOW', 'IMAGE_PLANE', 'IMAGE_BACKGROUND', 'IMAGE_REFERENCE', 'NODE_INSERT_ON', 'NODE_INSERT_OFF', 'NODE_TOP', 'NODE_SIDE', 'NODE_CORNER', 'ALIGN_LEFT', 'ALIGN_CENTER', 'ALIGN_RIGHT', 'ALIGN_JUSTIFY', 'ALIGN_FLUSH', 'ALIGN_TOP', 'ALIGN_MIDDLE', 'ALIGN_BOTTOM', 'BOLD', 'ITALIC', 'UNDERLINE', 'SMALL_CAPS', 'MODIFIER_DATA', 'MOD_WAVE', 'MOD_BUILD', 'MOD_DECIM', 'MOD_MIRROR', 'MOD_SOFT', 'MOD_SUBSURF', 'HOOK', 'MOD_PHYSICS', 'MOD_PARTICLES', 'MOD_BOOLEAN', 'MOD_EDGESPLIT', 'MOD_ARRAY', 'MOD_UVPROJECT', 'MOD_DISPLACE', 'MOD_CURVE', 'MOD_LATTICE', 'MOD_TINT', 'MOD_ARMATURE', 'MOD_SHRINKWRAP', 'MOD_CAST', 'MOD_MESHDEFORM', 'MOD_BEVEL', 'MOD_SMOOTH', 'MOD_SIMPLEDEFORM', 'MOD_MASK', 'MOD_CLOTH', 'MOD_EXPLODE', 'MOD_FLUIDSIM', 'MOD_MULTIRES', 'MOD_SMOKE', 'MOD_SOLIDIFY', 'MOD_SCREW', 'MOD_VERTEX_WEIGHT', 'MOD_DYNAMICPAINT', 'MOD_REMESH', 'MOD_OCEAN', 'MOD_WARP', 'MOD_SKIN', 'MOD_TRIANGULATE', 'MOD_WIREFRAME', 'MOD_DATA_TRANSFER', 'MOD_NORMALEDIT', 'MOD_PARTICLE_INSTANCE', 'MOD_HUE_SATURATION', 'MOD_NOISE', 'MOD_OFFSET', 'MOD_SIMPLIFY', 'MOD_THICKNESS', 'MOD_INSTANCE', 'MOD_TIME', 'MOD_OPACITY', 'REC', 'PLAY', 'FF', 'REW', 'PAUSE', 'PREV_KEYFRAME', 'NEXT_KEYFRAME', 'PLAY_SOUND', 'PLAY_REVERSE', 'PREVIEW_RANGE', 'ACTION_TWEAK', 'PMARKER_ACT', 'PMARKER_SEL', 'PMARKER', 'MARKER_HLT', 'MARKER', 'KEYFRAME_HLT', 'KEYFRAME', 'KEYINGSET', 'KEY_DEHLT', 'KEY_HLT', 'MUTE_IPO_OFF', 'MUTE_IPO_ON', 'VISIBLE_IPO_OFF', 'VISIBLE_IPO_ON', 'DRIVER', 'SOLO_OFF', 'SOLO_ON', 'FRAME_PREV', 'FRAME_NEXT', 'NLA_PUSHDOWN', 'IPO_CONSTANT', 'IPO_LINEAR', 'IPO_BEZIER', 'IPO_SINE', 'IPO_QUAD', 'IPO_CUBIC', 'IPO_QUART', 'IPO_QUINT', 'IPO_EXPO', 'IPO_CIRC', 'IPO_BOUNCE', 'IPO_ELASTIC', 'IPO_BACK', 'IPO_EASE_IN', 'IPO_EASE_OUT', 'IPO_EASE_IN_OUT', 'NORMALIZE_FCURVES', 'VERTEXSEL', 'EDGESEL', 'FACESEL', 'PIVOT_BOUNDBOX', 'PIVOT_CURSOR', 'PIVOT_INDIVIDUAL', 'PIVOT_MEDIAN', 'PIVOT_ACTIVE', 'CENTER_ONLY', 'ROOTCURVE', 'SMOOTHCURVE', 'SPHERECURVE', 'INVERSESQUARECURVE', 'SHARPCURVE', 'LINCURVE', 'NOCURVE', 'RNDCURVE', 'PROP_OFF', 'PROP_ON', 'PROP_CON', 'PROP_PROJECTED', 'PARTICLE_POINT', 'PARTICLE_TIP', 'PARTICLE_PATH', 'SNAP_OFF', 'SNAP_ON', 'SNAP_NORMAL', 'SNAP_GRID', 'SNAP_VERTEX', 'SNAP_EDGE', 'SNAP_FACE', 'SNAP_VOLUME', 'SNAP_INCREMENT', 'STICKY_UVS_LOC', 'STICKY_UVS_DISABLE', 'STICKY_UVS_VERT', 'CLIPUV_DEHLT', 'CLIPUV_HLT', 'SNAP_PEEL_OBJECT', 'GRID', 'OBJECT_ORIGIN', 'ORIENTATION_GLOBAL', 'ORIENTATION_GIMBAL', 'ORIENTATION_LOCAL', 'ORIENTATION_NORMAL', 'ORIENTATION_VIEW', 'COPYDOWN', 'PASTEDOWN', 'PASTEFLIPUP', 'PASTEFLIPDOWN', 'VIS_SEL_11', 'VIS_SEL_10', 'VIS_SEL_01', 'VIS_SEL_00', 'AUTOMERGE_ON', 'AUTOMERGE_OFF', 'UV_VERTEXSEL', 'UV_EDGESEL', 'UV_FACESEL', 'UV_ISLANDSEL', 'UV_SYNC_SELECT', 'ORIENTATION_CURSOR', 'NORMALS_VERTEX', 'NORMALS_FACE', 'NORMALS_VERTEX_FACE', 'SHADING_BBOX', 'SHADING_WIRE', 'SHADING_SOLID', 'SHADING_RENDERED', 'SHADING_TEXTURE', 'OVERLAY', 'XRAY', 'LOCKVIEW_OFF', 'LOCKVIEW_ON', 'AXIS_SIDE', 'AXIS_FRONT', 'AXIS_TOP', 'NDOF_DOM', 'NDOF_TURN', 'NDOF_FLY', 'NDOF_TRANS', 'LAYER_USED', 'LAYER_ACTIVE', 'SORTALPHA', 'SORTBYEXT', 'SORTTIME', 'SORTSIZE', 'SHORTDISPLAY', 'LONGDISPLAY', 'IMGDISPLAY', 'BOOKMARKS', 'FONTPREVIEW', 'FILTER', 'NEWFOLDER', 'FILE_PARENT', 'FILE_REFRESH', 'FILE_FOLDER', 'FILE_BLANK', 'FILE_BLEND', 'FILE_IMAGE', 'FILE_MOVIE', 'FILE_SCRIPT', 'FILE_SOUND', 'FILE_FONT', 'FILE_TEXT', 'SORT_DESC', 'SORT_ASC', 'LINK_BLEND', 'APPEND_BLEND', 'IMPORT', 'EXPORT', 'LOOP_BACK', 'LOOP_FORWARDS', 'BACK', 'FORWARD', 'FILE_VOLUME', 'ALEMBIC', 'VOLUME', 'FILE_HIDDEN', 'FILE_BACKUP', 'DISK_DRIVE', 'MATPLANE', 'MATSPHERE', 'MATCUBE', 'MONKEY', 'HAIR', 'ALIASED', 'ANTIALIASED', 'MAT_SPHERE_SKY', 'MATSHADERBALL', 'MATCLOTH', 'MATFLUID', 'WORDWRAP_OFF', 'WORDWRAP_ON', 'SYNTAX_OFF', 'SYNTAX_ON', 'LINENUMBERS_OFF', 'LINENUMBERS_ON', 'SCRIPTPLUGINS', 'SEQ_SEQUENCER', 'SEQ_PREVIEW', 'SEQ_LUMA_WAVEFORM', 'SEQ_CHROMA_SCOPE', 'SEQ_HISTOGRAM', 'SEQ_SPLITVIEW', 'IMAGE_RGB', 'IMAGE_RGB_ALPHA', 'IMAGE_ALPHA', 'IMAGE_ZDEPTH', 'VIEW_PERSPECTIVE', 'VIEW_ORTHO', 'VIEW_CAMERA', 'VIEW_PAN', 'VIEW_ZOOM', 'BRUSH_BLOB', 'BRUSH_BLUR', 'BRUSH_CLAY', 'BRUSH_CLAY_STRIPS', 'BRUSH_CLONE', 'BRUSH_CREASE', 'BRUSH_FILL', 'BRUSH_FLATTEN', 'BRUSH_GRAB', 'BRUSH_INFLATE', 'BRUSH_LAYER', 'BRUSH_MASK', 'BRUSH_MIX', 'BRUSH_NUDGE', 'BRUSH_PINCH', 'BRUSH_SCRAPE', 'BRUSH_SCULPT_DRAW', 'BRUSH_SMEAR', 'BRUSH_SMOOTH', 'BRUSH_SNAKE_HOOK', 'BRUSH_SOFTEN', 'BRUSH_TEXDRAW', 'BRUSH_TEXFILL', 'BRUSH_TEXMASK', 'BRUSH_THUMB', 'BRUSH_ROTATE', 'GPBRUSH_SMOOTH', 'GPBRUSH_THICKNESS', 'GPBRUSH_STRENGTH', 'GPBRUSH_GRAB', 'GPBRUSH_PUSH', 'GPBRUSH_TWIST', 'GPBRUSH_PINCH', 'GPBRUSH_RANDOMIZE', 'GPBRUSH_CLONE', 'GPBRUSH_WEIGHT', 'GPBRUSH_PENCIL', 'GPBRUSH_PEN', 'GPBRUSH_INK', 'GPBRUSH_INKNOISE', 'GPBRUSH_BLOCK', 'GPBRUSH_MARKER', 'GPBRUSH_FILL', 'GPBRUSH_ERASE_SOFT', 'GPBRUSH_ERASE_HARD', 'GPBRUSH_ERASE_STROKE', 'SMALL_TRI_RIGHT_VEC', 'KEYTYPE_KEYFRAME_VEC', 'KEYTYPE_BREAKDOWN_VEC', 'KEYTYPE_EXTREME_VEC', 'KEYTYPE_JITTER_VEC', 'KEYTYPE_MOVING_HOLD_VEC', 'HANDLETYPE_FREE_VEC', 'HANDLETYPE_ALIGNED_VEC', 'HANDLETYPE_VECTOR_VEC', 'HANDLETYPE_AUTO_VEC', 'HANDLETYPE_AUTO_CLAMP_VEC', 'COLORSET_01_VEC', 'COLORSET_02_VEC', 'COLORSET_03_VEC', 'COLORSET_04_VEC', 'COLORSET_05_VEC', 'COLORSET_06_VEC', 'COLORSET_07_VEC', 'COLORSET_08_VEC', 'COLORSET_09_VEC', 'COLORSET_10_VEC', 'COLORSET_11_VEC', 'COLORSET_12_VEC', 'COLORSET_13_VEC', 'COLORSET_14_VEC', 'COLORSET_15_VEC', 'COLORSET_16_VEC', 'COLORSET_17_VEC', 'COLORSET_18_VEC', 'COLORSET_19_VEC', 'COLORSET_20_VEC', 'EVENT_A', 'EVENT_B', 'EVENT_C', 'EVENT_D', 'EVENT_E', 'EVENT_F', 'EVENT_G', 'EVENT_H', 'EVENT_I', 'EVENT_J', 'EVENT_K', 'EVENT_L', 'EVENT_M', 'EVENT_N', 'EVENT_O', 'EVENT_P', 'EVENT_Q', 'EVENT_R', 'EVENT_S', 'EVENT_T', 'EVENT_U', 'EVENT_V', 'EVENT_W', 'EVENT_X', 'EVENT_Y', 'EVENT_Z', 'EVENT_SHIFT', 'EVENT_CTRL', 'EVENT_ALT', 'EVENT_OS', 'EVENT_F1', 'EVENT_F2', 'EVENT_F3', 'EVENT_F4', 'EVENT_F5', 'EVENT_F6', 'EVENT_F7', 'EVENT_F8', 'EVENT_F9', 'EVENT_F10', 'EVENT_F11', 'EVENT_F12', 'EVENT_ESC', 'EVENT_TAB', 'EVENT_PAGEUP', 'EVENT_PAGEDOWN', 'EVENT_RETURN'], (optional)
        :param icon_value: Icon Value, Override automatic icon of the item 
        :type icon_value: int in [0, inf], (optional)
        '''
        pass

    def popover_group(self, space_type, region_type, context, category):
        '''popover_group 

        :param space_type: Space TypeEMPTY Empty.VIEW_3D 3D Viewport, Manipulate objects in a 3D environment.IMAGE_EDITOR UV/Image Editor, View and edit images and UV Maps.NODE_EDITOR Node Editor, Editor for node-based shading and compositing tools.SEQUENCE_EDITOR Video Sequencer, Video editing tools.CLIP_EDITOR Movie Clip Editor, Motion tracking tools.DOPESHEET_EDITOR Dope Sheet, Adjust timing of keyframes.GRAPH_EDITOR Graph Editor, Edit drivers and keyframe interpolation.NLA_EDITOR Nonlinear Animation, Combine and layer Actions.TEXT_EDITOR Text Editor, Edit scripts and in-file documentation.CONSOLE Python Console, Interactive programmatic console for advanced editing and script development.INFO Info, Main menu bar and list of error messages (drag down to expand and display).TOPBAR Top Bar, Global bar at the top of the screen for global per-window settings.STATUSBAR Status Bar, Global bar at the bottom of the screen for general status information.OUTLINER Outliner, Overview of scene graph and all available data-blocks.PROPERTIES Properties, Edit properties of active object and related data-blocks.FILE_BROWSER File Browser, Browse for files and assets.PREFERENCES Preferences, Edit persistent configuration settings. 
        :type space_type: enum in ['EMPTY', 'VIEW_3D', 'IMAGE_EDITOR', 'NODE_EDITOR', 'SEQUENCE_EDITOR', 'CLIP_EDITOR', 'DOPESHEET_EDITOR', 'GRAPH_EDITOR', 'NLA_EDITOR', 'TEXT_EDITOR', 'CONSOLE', 'INFO', 'TOPBAR', 'STATUSBAR', 'OUTLINER', 'PROPERTIES', 'FILE_BROWSER', 'PREFERENCES']
        :param region_type: Region Type 
        :type region_type: enum in ['WINDOW', 'HEADER', 'CHANNELS', 'TEMPORARY', 'UI', 'TOOLS', 'TOOL_PROPS', 'PREVIEW', 'HUD', 'NAVIGATION_BAR', 'EXECUTE', 'FOOTER']
        :param context: panel type context 
        :type context: string, (never None)
        :param category: panel type category 
        :type category: string, (never None)
        '''
        pass

    def separator(self, factor=1.0):
        '''Item. Inserts empty space into the layout between items 

        :param factor: Percentage, Percentage of width to space (leave unset for default space) 
        :type factor: float in [0, inf], (optional)
        '''
        pass

    def separator_spacer(self):
        '''Item. Inserts horizontal spacing empty space into the layout between items 

        '''
        pass

    def context_pointer_set(self, name, data):
        '''context_pointer_set 

        :param name: Name, Name of entry in the context 
        :type name: string, (never None)
        :param data: Pointer to put in context 
        :type data: AnyType
        '''
        pass

    def template_header(self):
        '''Inserts common Space header UI (editor type selector) 

        '''
        pass

    def template_ID(self,
                    data,
                    property,
                    new="",
                    open="",
                    unlink="",
                    filter='ALL',
                    live_icon=False):
        '''template_ID 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param new: Operator identifier to create a new ID block 
        :type new: string, (optional, never None)
        :param open: Operator identifier to open a file for creating a new ID block 
        :type open: string, (optional, never None)
        :param unlink: Operator identifier to unlink the ID block 
        :type unlink: string, (optional, never None)
        :param filter: Optionally limit the items which can be selected 
        :type filter: enum in ['ALL', 'AVAILABLE'], (optional)
        :param live_icon: Show preview instead of fixed icon 
        :type live_icon: boolean, (optional)
        '''
        pass

    def template_ID_preview(self,
                            data,
                            property,
                            new="",
                            open="",
                            unlink="",
                            rows=0,
                            cols=0,
                            filter='ALL',
                            hide_buttons=False):
        '''template_ID_preview 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param new: Operator identifier to create a new ID block 
        :type new: string, (optional, never None)
        :param open: Operator identifier to open a file for creating a new ID block 
        :type open: string, (optional, never None)
        :param unlink: Operator identifier to unlink the ID block 
        :type unlink: string, (optional, never None)
        :param rows: Number of thumbnail preview rows to display 
        :type rows: int in [0, inf], (optional)
        :param cols: Number of thumbnail preview columns to display 
        :type cols: int in [0, inf], (optional)
        :param filter: Optionally limit the items which can be selected 
        :type filter: enum in ['ALL', 'AVAILABLE'], (optional)
        :param hide_buttons: Show only list, no buttons 
        :type hide_buttons: boolean, (optional)
        '''
        pass

    def template_any_ID(self,
                        data,
                        property,
                        type_property,
                        text="",
                        text_ctxt="",
                        translate=True):
        '''template_any_ID 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param type_property: Identifier of property in data giving the type of the ID-blocks to use 
        :type type_property: string, (never None)
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        '''
        pass

    def template_ID_tabs(self, data, property, new="", menu="", filter='ALL'):
        '''template_ID_tabs 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param new: Operator identifier to create a new ID block 
        :type new: string, (optional, never None)
        :param menu: Context menu identifier 
        :type menu: string, (optional, never None)
        :param filter: Optionally limit the items which can be selected 
        :type filter: enum in ['ALL', 'AVAILABLE'], (optional)
        '''
        pass

    def template_search(self,
                        data,
                        property,
                        search_data,
                        search_property,
                        new="",
                        unlink=""):
        '''template_search 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param search_data: Data from which to take collection to search in 
        :type search_data: AnyType, (never None)
        :param search_property: Identifier of search collection property 
        :type search_property: string, (never None)
        :param new: Operator identifier to create a new item for the collection 
        :type new: string, (optional, never None)
        :param unlink: Operator identifier to unlink or delete the active item from the collection 
        :type unlink: string, (optional, never None)
        '''
        pass

    def template_search_preview(self,
                                data,
                                property,
                                search_data,
                                search_property,
                                new="",
                                unlink="",
                                rows=0,
                                cols=0):
        '''template_search_preview 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param search_data: Data from which to take collection to search in 
        :type search_data: AnyType, (never None)
        :param search_property: Identifier of search collection property 
        :type search_property: string, (never None)
        :param new: Operator identifier to create a new item for the collection 
        :type new: string, (optional, never None)
        :param unlink: Operator identifier to unlink or delete the active item from the collection 
        :type unlink: string, (optional, never None)
        :param rows: Number of thumbnail preview rows to display 
        :type rows: int in [0, inf], (optional)
        :param cols: Number of thumbnail preview columns to display 
        :type cols: int in [0, inf], (optional)
        '''
        pass

    def template_path_builder(self,
                              data,
                              property,
                              root,
                              text="",
                              text_ctxt="",
                              translate=True):
        '''template_path_builder 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param root: ID-block from which path is evaluated from 
        :type root: ID
        :param text: Override automatic text of the item 
        :type text: string, (optional)
        :param text_ctxt: Override automatic translation context of the given text 
        :type text_ctxt: string, (optional)
        :param translate: Translate the given text, when UI translation is enabled 
        :type translate: boolean, (optional)
        '''
        pass

    def template_modifier(self, data):
        '''Generates the UI layout for modifiers 

        :param data: Modifier data 
        :type data: Modifier, (never None)
        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def template_greasepencil_modifier(self, data):
        '''Generates the UI layout for grease pencil modifiers 

        :param data: Modifier data 
        :type data: GpencilModifier, (never None)
        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def template_shaderfx(self, data):
        '''Generates the UI layout for shader effect 

        :param data: Shader data 
        :type data: ShaderFx, (never None)
        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def template_greasepencil_color(self,
                                    data,
                                    property,
                                    rows=0,
                                    cols=0,
                                    scale=1.0,
                                    filter='ALL'):
        '''template_greasepencil_color 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param rows: Number of thumbnail preview rows to display 
        :type rows: int in [0, inf], (optional)
        :param cols: Number of thumbnail preview columns to display 
        :type cols: int in [0, inf], (optional)
        :param scale: Scale of the image thumbnails 
        :type scale: float in [0.1, 1.5], (optional)
        :param filter: Optionally limit the items which can be selected 
        :type filter: enum in ['ALL', 'AVAILABLE'], (optional)
        '''
        pass

    def template_constraint(self, data):
        '''Generates the UI layout for constraints 

        :param data: Constraint data 
        :type data: Constraint, (never None)
        :rtype: UILayout 
        :return:  Sub-layout to put items in 
        '''
        pass

    def template_preview(self,
                         id,
                         show_buttons=True,
                         parent=None,
                         slot=None,
                         preview_id=""):
        '''Item. A preview window for materials, textures, lights or worlds 

        :param id: ID data-block 
        :type id: ID
        :param show_buttons: Show preview buttons? 
        :type show_buttons: boolean, (optional)
        :param parent: ID data-block 
        :type parent: ID, (optional)
        :param slot: Texture slot 
        :type slot: TextureSlot, (optional)
        :param preview_id: Identifier of this preview widget, if not set the ID type will be used (i.e. all previews of materials without explicit ID will have the same size…) 
        :type preview_id: string, (optional, never None)
        '''
        pass

    def template_curve_mapping(self,
                               data,
                               property,
                               type='NONE',
                               levels=False,
                               brush=False,
                               use_negative_slope=False,
                               show_tone=False):
        '''Item. A curve mapping widget used for e.g falloff curves for lights 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param type: Type, Type of curves to display 
        :type type: enum in ['NONE', 'VECTOR', 'COLOR', 'HUE'], (optional)
        :param levels: Show black/white levels 
        :type levels: boolean, (optional)
        :param brush: Show brush options 
        :type brush: boolean, (optional)
        :param use_negative_slope: Use a negative slope by default 
        :type use_negative_slope: boolean, (optional)
        :param show_tone: Show tone options 
        :type show_tone: boolean, (optional)
        '''
        pass

    def template_color_ramp(self, data, property, expand=False):
        '''Item. A color ramp widget 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param expand: Expand button to show more detail 
        :type expand: boolean, (optional)
        '''
        pass

    def template_icon(self, icon_value, scale=1.0):
        '''Display a large icon 

        :param icon_value: Icon to display 
        :type icon_value: int in [0, inf]
        :param scale: Scale, Scale the icon size (by the button size) 
        :type scale: float in [1, 100], (optional)
        '''
        pass

    def template_icon_view(self,
                           data,
                           property,
                           show_labels=False,
                           scale=6.0,
                           scale_popup=5.0):
        '''Enum. Large widget showing Icon previews 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param show_labels: Show enum label in preview buttons 
        :type show_labels: boolean, (optional)
        :param scale: UI Units, Scale the button icon size (by the button size) 
        :type scale: float in [1, 100], (optional)
        :param scale_popup: Scale, Scale the popup icon size (by the button size) 
        :type scale_popup: float in [1, 100], (optional)
        '''
        pass

    def template_histogram(self, data, property):
        '''Item. A histogramm widget to analyze imaga data 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def template_waveform(self, data, property):
        '''Item. A waveform widget to analyze imaga data 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def template_vectorscope(self, data, property):
        '''Item. A vectorscope widget to analyze imaga data 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def template_layers(self, data, property, used_layers_data,
                        used_layers_property, active_layer):
        '''template_layers 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param used_layers_data: Data from which to take property 
        :type used_layers_data: AnyType
        :param used_layers_property: Identifier of property in data 
        :type used_layers_property: string, (never None)
        :param active_layer: Active Layer 
        :type active_layer: int in [0, inf]
        '''
        pass

    def template_color_picker(self,
                              data,
                              property,
                              value_slider=False,
                              lock=False,
                              lock_luminosity=False,
                              cubic=False):
        '''Item. A color wheel widget to pick colors 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param value_slider: Display the value slider to the right of the color wheel 
        :type value_slider: boolean, (optional)
        :param lock: Lock the color wheel display to value 1.0 regardless of actual color 
        :type lock: boolean, (optional)
        :param lock_luminosity: Keep the color at its original vector length 
        :type lock_luminosity: boolean, (optional)
        :param cubic: Cubic saturation for picking values close to white 
        :type cubic: boolean, (optional)
        '''
        pass

    def template_palette(self, data, property, color=False):
        '''Item. A palette used to pick colors 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param color: Display the colors as colors or values 
        :type color: boolean, (optional)
        '''
        pass

    def template_image_layers(self, image, image_user):
        '''template_image_layers 

        '''
        pass

    def template_image(self,
                       data,
                       property,
                       image_user,
                       compact=False,
                       multiview=False):
        '''Item(s). User interface for selecting images and their source paths 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param compact: Use more compact layout 
        :type compact: boolean, (optional)
        :param multiview: Expose Multi-View options 
        :type multiview: boolean, (optional)
        '''
        pass

    def template_image_settings(self, image_settings, color_management=False):
        '''User interface for setting image format options 

        :param color_management: Show color management settings 
        :type color_management: boolean, (optional)
        '''
        pass

    def template_image_stereo_3d(self, stereo_3d_format):
        '''User interface for setting image stereo 3d options 

        '''
        pass

    def template_image_views(self, image_settings):
        '''User interface for setting image views output options 

        '''
        pass

    def template_movieclip(self, data, property, compact=False):
        '''Item(s). User interface for selecting movie clips and their source paths 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param compact: Use more compact layout 
        :type compact: boolean, (optional)
        '''
        pass

    def template_track(self, data, property):
        '''Item. A movie-track widget to preview tracking image. 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def template_marker(self, data, property, clip_user, track, compact=False):
        '''Item. A widget to control single marker settings. 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        :param compact: Use more compact layout 
        :type compact: boolean, (optional)
        '''
        pass

    def template_movieclip_information(self, data, property, clip_user):
        '''Item. Movie clip information data. 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def template_list(self,
                      listtype_name,
                      list_id,
                      dataptr="",
                      propname="",
                      active_dataptr="",
                      active_propname=0,
                      item_dyntip_propname="",
                      rows=5,
                      maxrows=5,
                      type='DEFAULT',
                      columns=9,
                      sort_reverse=False,
                      sort_lock=False):
        '''Item. A list widget to display data, e.g. vertexgroups. 

        :param listtype_name: Identifier of the list type to use 
        :type listtype_name: string, (never None)
        :param list_id: Identifier of this list widget (mandatory when using default “UI_UL_list” class). If this not an empty string, the uilist gets a custom ID, otherwise it takes the name of the class used to define the uilist (for example, if the class name is “OBJECT_UL_vgroups”, and list_id is not set by the script, then bl_idname = “OBJECT_UL_vgroups”) 
        :type list_id: string, (never None)
        :param dataptr: Data from which to take the Collection property 
        :type dataptr: AnyType
        :param propname: Identifier of the Collection property in data 
        :type propname: string, (never None)
        :param active_dataptr: Data from which to take the integer property, index of the active item 
        :type active_dataptr: AnyType, (never None)
        :param active_propname: Identifier of the integer property in active_data, index of the active item 
        :type active_propname: string, (never None)
        :param item_dyntip_propname: Identifier of a string property in items, to use as tooltip content 
        :type item_dyntip_propname: string, (optional, never None)
        :param rows: Default and minimum number of rows to display 
        :type rows: int in [0, inf], (optional)
        :param maxrows: Default maximum number of rows to display 
        :type maxrows: int in [0, inf], (optional)
        :param type: Type, Type of layout to useDEFAULT Default Layout, Use the default, multi-rows layout.COMPACT Compact Layout, Use the compact, single-row layout.GRID Grid Layout, Use the grid-based layout. 
        :type type: enum in ['DEFAULT', 'COMPACT', 'GRID'], (optional)
        :param columns: Number of items to display per row, for GRID layout 
        :type columns: int in [0, inf], (optional)
        :param sort_reverse: Display items in reverse order by default 
        :type sort_reverse: boolean, (optional)
        :param sort_lock: Lock display order to default value 
        :type sort_lock: boolean, (optional)
        '''
        pass

    def template_running_jobs(self):
        '''template_running_jobs 

        '''
        pass

    def template_operator_search(self):
        '''template_operator_search 

        '''
        pass

    def template_header_3D_mode(self):
        '''

        '''
        pass

    def template_edit_mode_selection(self):
        '''Inserts common 3DView Edit modes header UI (selector for selection mode) 

        '''
        pass

    def template_reports_banner(self):
        '''template_reports_banner 

        '''
        pass

    def template_input_status(self):
        '''template_input_status 

        '''
        pass

    def template_node_link(self, ntree, node, socket):
        '''template_node_link 

        '''
        pass

    def template_node_view(self, ntree, node, socket):
        '''template_node_view 

        '''
        pass

    def template_texture_user(self):
        '''template_texture_user 

        '''
        pass

    def template_keymap_item_properties(self, item):
        '''template_keymap_item_properties 

        '''
        pass

    def template_component_menu(self, data, property, name=""):
        '''Item. Display expanded property in a popup menu 

        :param data: Data from which to take property 
        :type data: AnyType
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def template_colorspace_settings(self, data, property):
        '''Item. A widget to control input color space settings. 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def template_colormanaged_view_settings(self, data, property):
        '''Item. A widget to control color managed view settings settings. 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def template_node_socket(self, color=(0.0, 0.0, 0.0, 1.0)):
        '''Node Socket Icon 

        :param color: Color 
        :type color: float array of 4 items in [0, 1], (optional)
        '''
        pass

    def template_cache_file(self, data, property):
        '''Item(s). User interface for selecting cache files and their source paths 

        :param data: Data from which to take property 
        :type data: AnyType, (never None)
        :param property: Identifier of property in data 
        :type property: string, (never None)
        '''
        pass

    def template_recent_files(self, rows=5):
        '''Show list of recently saved .blend files 

        :param rows: Maximum number of items to show 
        :type rows: int in [1, inf], (optional)
        :rtype: int in [0, inf] 
        :return:  Number of items drawn 
        '''
        pass


class UIList:
    '''UI list containing the elements of a collection '''

    bitflag_filter_item = None
    '''The value of the reserved bitflag ‘FILTER_ITEM’ (in filter_flags values) 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    bl_idname = None
    '''If this is set, the uilist gets a custom ID, otherwise it takes the name of the class used to define the uilist (for example, if the class name is “OBJECT_UL_vgroups”, and bl_idname is not set by the script, then bl_idname = “OBJECT_UL_vgroups”) 

    :type:  string, default “”, (never None) 
    '''

    filter_name = None
    '''Only show items matching this name (use ‘*’ as wildcard) 

    :type:  string, default “”, (never None) 
    '''

    layout_type = None
    '''

    :type:  enum in [‘DEFAULT’, ‘COMPACT’, ‘GRID’], default ‘DEFAULT’, (readonly) 
    '''

    use_filter_invert = None
    '''Invert filtering (show hidden items, and vice-versa) 

    :type:  boolean, default False 
    '''

    use_filter_show = None
    '''Show filtering options 

    :type:  boolean, default False 
    '''

    use_filter_sort_alpha = None
    '''Sort items by their name 

    :type:  boolean, default False 
    '''

    use_filter_sort_lock = None
    '''Lock the order of shown items (user cannot change it) 

    :type:  boolean, default False 
    '''

    use_filter_sort_reverse = None
    '''Reverse the order of shown items 

    :type:  boolean, default False 
    '''

    def draw_item(self,
                  context,
                  layout,
                  data,
                  item,
                  icon,
                  active_data,
                  active_property,
                  index=0,
                  flt_flag=0):
        '''Draw an item in the list (NOTE: when you define your own draw_item function, you may want to check given ‘item’ is of the right type…) 

        :param layout: Layout to draw the item 
        :type layout: UILayout, (never None)
        :param data: Data from which to take Collection property 
        :type data: AnyType
        :param item: Item of the collection property 
        :type item: AnyType
        :param icon: Icon of the item in the collection 
        :type icon: int in [0, inf]
        :param active_data: Data from which to take property for the active element 
        :type active_data: AnyType, (never None)
        :param active_property: Identifier of property in active_data, for the active element 
        :type active_property: string, (optional argument, never None)
        :param index: Index of the item in the collection 
        :type index: int in [0, inf], (optional)
        :param flt_flag: The filter-flag result for this item 
        :type flt_flag: int in [0, inf], (optional)
        '''
        pass

    def draw_filter(self, context, layout):
        '''Draw filtering options 

        :param layout: Layout to draw the item 
        :type layout: UILayout, (never None)
        '''
        pass

    def filter_items(self, context, data, property):
        '''Filter and/or re-order items of the collection (output filter results in filter_flags, and reorder results in filter_neworder arrays) 

        :param data: Data from which to take Collection property 
        :type data: AnyType
        :param property: Identifier of property in data, for the collection 
        :type property: string, (never None)
        '''
        pass


class UIPieMenu:
    layout = None
    '''

    :type:  UILayout, (readonly) 
    '''


class UIPopover:
    layout = None
    '''

    :type:  UILayout, (readonly) 
    '''


class UIPopupMenu:
    layout = None
    '''

    :type:  UILayout, (readonly) 
    '''


class UI_UL_list:
    pass


class UVLoopLayers:
    '''Collection of uv loop layers '''

    active = None
    '''Active UV loop layer 

    :type:  MeshUVLoopLayer 
    '''

    active_index = None
    '''Active UV loop layer index 

    :type:  int in [0, inf], default 0 
    '''

    def new(self, name="UVMap", do_init=True):
        '''Add a UV map layer to Mesh 

        :param name: UV map name 
        :type name: string, (optional, never None)
        :param do_init: Whether new layer’s data should be initialized by copying current active one, or if none is active, with a default UVmap 
        :type do_init: boolean, (optional)
        :rtype: MeshUVLoopLayer 
        :return:  The newly created layer 
        '''
        pass

    def remove(self, layer):
        '''Remove a vertex color layer 

        :param layer: The layer to remove 
        :type layer: MeshUVLoopLayer, (never None)
        '''
        pass


class UVProjectModifier:
    '''UV projection modifier to set UVs from a projector '''

    aspect_x = None
    '''

    :type:  float in [1, inf], default 0.0 
    '''

    aspect_y = None
    '''

    :type:  float in [1, inf], default 0.0 
    '''

    projector_count = None
    '''Number of projectors to use 

    :type:  int in [1, 10], default 0 
    '''

    projectors = None
    '''

    :type:  bpy_prop_collection of UVProjector, (readonly) 
    '''

    scale_x = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    scale_y = None
    '''

    :type:  float in [0, inf], default 0.0 
    '''

    uv_layer = None
    '''UV map name 

    :type:  string, default “”, (never None) 
    '''


class UVProjector:
    '''UV projector used by the UV project modifier '''

    object = None
    '''Object to use as projector transform 

    :type:  Object 
    '''


class UVWarpModifier:
    '''Add target position to uv coordinates '''

    axis_u = None
    '''Pole axis for rotation 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    axis_v = None
    '''Pole axis for rotation 

    :type:  enum in [‘X’, ‘Y’, ‘Z’], default ‘X’ 
    '''

    bone_from = None
    '''Bone defining offset 

    :type:  string, default “”, (never None) 
    '''

    bone_to = None
    '''Bone defining offset 

    :type:  string, default “”, (never None) 
    '''

    center = None
    '''Center point for rotate/scale 

    :type:  float array of 2 items in [-inf, inf], default (0.0, 0.0) 
    '''

    object_from = None
    '''Object defining offset 

    :type:  Object 
    '''

    object_to = None
    '''Object defining offset 

    :type:  Object 
    '''

    uv_layer = None
    '''UV Layer name 

    :type:  string, default “”, (never None) 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''


class UnifiedPaintSettings:
    '''Overrides for some of the active brush’s settings '''

    color = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    secondary_color = None
    '''

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    size = None
    '''Radius of the brush 

    :type:  int in [1, 5000], default 0 
    '''

    strength = None
    '''How powerful the effect of the brush is when applied 

    :type:  float in [0, 10], default 0.5 
    '''

    unprojected_radius = None
    '''Radius of brush in Blender units 

    :type:  float in [0.001, inf], default 0.0 
    '''

    use_locked_size = None
    '''Measure brush size relative to the view or the scene 

    :type:  enum in [‘VIEW’, ‘SCENE’], default ‘VIEW’ 
    '''

    use_pressure_size = None
    '''Enable tablet pressure sensitivity for size 

    :type:  boolean, default False 
    '''

    use_pressure_strength = None
    '''Enable tablet pressure sensitivity for strength 

    :type:  boolean, default False 
    '''

    use_unified_color = None
    '''Instead of per-brush color, the color is shared across brushes 

    :type:  boolean, default False 
    '''

    use_unified_size = None
    '''Instead of per-brush radius, the radius is shared across brushes 

    :type:  boolean, default False 
    '''

    use_unified_strength = None
    '''Instead of per-brush strength, the strength is shared across brushes 

    :type:  boolean, default False 
    '''

    use_unified_weight = None
    '''Instead of per-brush weight, the weight is shared across brushes 

    :type:  boolean, default False 
    '''

    weight = None
    '''Weight to assign in vertex groups 

    :type:  float in [0, 1], default 0.5 
    '''


class UnitSettings:
    length_unit = None
    '''Unit that will be used to display length values 

    :type:  enum in [‘DEFAULT’], default ‘DEFAULT’ 
    '''

    mass_unit = None
    '''Unit that will be used to display mass values 

    :type:  enum in [‘DEFAULT’], default ‘DEFAULT’ 
    '''

    scale_length = None
    '''Scale to use when converting between blender units and dimensions. When working at microscopic or astronomical scale, a small or large unit scale respectively can be used to avoid numerical precision problems 

    :type:  float in [1e-05, 100000], default 0.0 
    '''

    system = None
    '''The unit system to use for button display 

    :type:  enum in [‘NONE’, ‘METRIC’, ‘IMPERIAL’], default ‘NONE’ 
    '''

    system_rotation = None
    '''Unit to use for displaying/editing rotation values 

    :type:  enum in [‘DEGREES’, ‘RADIANS’], default ‘DEGREES’ 
    '''

    time_unit = None
    '''Unit that will be used to display time values 

    :type:  enum in [‘DEFAULT’], default ‘DEFAULT’ 
    '''

    use_separate = None
    '''Display units in pairs (e.g. 1m 0cm) 

    :type:  boolean, default False 
    '''


class UnknownType:
    '''Stub RNA type used for pointers to unknown or internal data '''

    pass


class UserSolidLight:
    '''Light used for Studio lighting in solid draw mode '''

    diffuse_color = None
    '''Color of the light’s diffuse highlight 

    :type:  float array of 3 items in [0, inf], default (0.8, 0.8, 0.8) 
    '''

    direction = None
    '''Direction that the light is shining 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 1.0) 
    '''

    smooth = None
    '''Smooth the lighting from this light 

    :type:  float in [0, 1], default 0.5 
    '''

    specular_color = None
    '''Color of the light’s specular highlight 

    :type:  float array of 3 items in [0, inf], default (0.8, 0.8, 0.8) 
    '''

    use = None
    '''Enable this light in solid draw mode 

    :type:  boolean, default True 
    '''


class UvSculpt:
    pass


class VIEWLAYER_UL_linesets:
    def draw_item(self, context, layout, data, item, icon, active_data,
                  active_propname, index):
        '''

        '''
        pass


class VectorFont:
    '''Vector font for Text objects '''

    filepath = None
    '''

    :type:  string, default “”, (never None) 
    '''

    packed_file = None
    '''

    :type:  PackedFile, (readonly) 
    '''

    def pack(self):
        '''Pack the font into the current blend file 

        '''
        pass

    def unpack(self, method='USE_LOCAL'):
        '''Unpack the font to the samples filename 

        :param method: method, How to unpack 
        :type method: enum in ['USE_LOCAL', 'WRITE_LOCAL', 'USE_ORIGINAL', 'WRITE_ORIGINAL'], (optional)
        '''
        pass


class VertexFloatProperties:
    '''Collection of float properties '''

    def new(self, name="Float Prop"):
        '''Add a float property layer to Mesh 

        :param name: Float property name 
        :type name: string, (optional, never None)
        :rtype: MeshVertexFloatPropertyLayer 
        :return:  The newly created layer 
        '''
        pass


class VertexGroup:
    '''Group of vertices, used for armature deform and other purposes '''

    index = None
    '''Index number of the vertex group 

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    lock_weight = None
    '''Maintain the relative weights for the group 

    :type:  boolean, default False 
    '''

    name = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''

    def add(self, index, weight, type):
        '''Add vertices to the group 

        :param index: Index List 
        :type index: int array of 1 items in [-inf, inf]
        :param weight: Vertex weight 
        :type weight: float in [0, 1]
        :param type: Vertex assign modeREPLACE Replace, Replace.ADD Add, Add.SUBTRACT Subtract, Subtract. 
        :type type: enum in ['REPLACE', 'ADD', 'SUBTRACT']
        '''
        pass

    def remove(self, index):
        '''Remove a vertex from the group 

        :param index: Index List 
        :type index: int array of 1 items in [-inf, inf]
        '''
        pass

    def weight(self, index):
        '''Get a vertex weight from the group 

        :param index: Index, The index of the vertex 
        :type index: int in [0, inf]
        :rtype: float in [0, 1] 
        :return:  Vertex weight 
        '''
        pass


class VertexGroupElement:
    '''Weight value of a vertex in a vertex group '''

    group = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    weight = None
    '''Vertex Weight 

    :type:  float in [0, 1], default 0.0 
    '''


class VertexGroups:
    '''Collection of vertex groups '''

    active = None
    '''Vertex groups of the object 

    :type:  VertexGroup, (readonly) 
    '''

    active_index = None
    '''Active index in vertex group array 

    :type:  int in [0, 32767], default 0 
    '''

    def new(self, name="Group"):
        '''Add vertex group to object 

        :param name: Vertex group name 
        :type name: string, (optional, never None)
        :rtype: VertexGroup 
        :return:  New vertex group 
        '''
        pass

    def remove(self, group):
        '''Delete vertex group from object 

        :param group: Vertex group to remove 
        :type group: VertexGroup, (never None)
        '''
        pass

    def clear(self):
        '''Delete all vertex groups from object 

        '''
        pass


class VertexIntProperties:
    '''Collection of int properties '''

    def new(self, name="Int Prop"):
        '''Add a integer property layer to Mesh 

        :param name: Int property name 
        :type name: string, (optional, never None)
        :rtype: MeshVertexIntPropertyLayer 
        :return:  The newly created layer 
        '''
        pass


class VertexPaint:
    '''Properties of vertex and weight paint mode '''

    radial_symmetry = None
    '''Number of times to copy strokes across the surface 

    :type:  int array of 3 items in [1, 64], default (1, 1, 1) 
    '''

    use_group_restrict = None
    '''Restrict painting to vertices in the group 

    :type:  boolean, default False 
    '''


class VertexStringProperties:
    '''Collection of string properties '''

    def new(self, name="String Prop"):
        '''Add a string property layer to Mesh 

        :param name: String property name 
        :type name: string, (optional, never None)
        :rtype: MeshVertexStringPropertyLayer 
        :return:  The newly created layer 
        '''
        pass


class VertexWeightEditModifier:
    '''Edit the weights of vertices in a group '''

    add_threshold = None
    '''Lower bound for a vertex’s weight to be added to the vgroup 

    :type:  float in [0, 1], default 0.0 
    '''

    default_weight = None
    '''Default weight a vertex will have if it is not in the vgroup 

    :type:  float in [0, 1], default 0.0 
    '''

    falloff_type = None
    '''How weights are mapped to their new values 

    :type:  enum in [‘LINEAR’, ‘CURVE’, ‘SHARP’, ‘SMOOTH’, ‘ROOT’, ‘ICON_SPHERECURVE’, ‘RANDOM’, ‘STEP’], default ‘LINEAR’ 
    '''

    map_curve = None
    '''Custom mapping curve 

    :type:  CurveMapping, (readonly) 
    '''

    mask_constant = None
    '''Global influence of current modifications on vgroup 

    :type:  float in [-inf, inf], default 0.0 
    '''

    mask_tex_map_object = None
    '''Which object to take texture coordinates from 

    :type:  Object 
    '''

    mask_tex_mapping = None
    '''Which texture coordinates to use for mapping 

    :type:  enum in [‘LOCAL’, ‘GLOBAL’, ‘OBJECT’, ‘UV’], default ‘LOCAL’ 
    '''

    mask_tex_use_channel = None
    '''Which texture channel to use for masking 

    :type:  enum in [‘INT’, ‘RED’, ‘GREEN’, ‘BLUE’, ‘HUE’, ‘SAT’, ‘VAL’, ‘ALPHA’], default ‘INT’ 
    '''

    mask_tex_uv_layer = None
    '''UV map name 

    :type:  string, default “”, (never None) 
    '''

    mask_texture = None
    '''Masking texture 

    :type:  Texture 
    '''

    mask_vertex_group = None
    '''Masking vertex group name 

    :type:  string, default “”, (never None) 
    '''

    remove_threshold = None
    '''Upper bound for a vertex’s weight to be removed from the vgroup 

    :type:  float in [0, 1], default 0.0 
    '''

    use_add = None
    '''Add vertices with weight over threshold to vgroup 

    :type:  boolean, default False 
    '''

    use_remove = None
    '''Remove vertices with weight below threshold from vgroup 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''


class VertexWeightMixModifier:
    '''Mix the weights of two vertex groups '''

    default_weight_a = None
    '''Default weight a vertex will have if it is not in the first A vgroup 

    :type:  float in [0, 1], default 0.0 
    '''

    default_weight_b = None
    '''Default weight a vertex will have if it is not in the second B vgroup 

    :type:  float in [0, 1], default 0.0 
    '''

    mask_constant = None
    '''Global influence of current modifications on vgroup 

    :type:  float in [-inf, inf], default 0.0 
    '''

    mask_tex_map_object = None
    '''Which object to take texture coordinates from 

    :type:  Object 
    '''

    mask_tex_mapping = None
    '''Which texture coordinates to use for mapping 

    :type:  enum in [‘LOCAL’, ‘GLOBAL’, ‘OBJECT’, ‘UV’], default ‘LOCAL’ 
    '''

    mask_tex_use_channel = None
    '''Which texture channel to use for masking 

    :type:  enum in [‘INT’, ‘RED’, ‘GREEN’, ‘BLUE’, ‘HUE’, ‘SAT’, ‘VAL’, ‘ALPHA’], default ‘INT’ 
    '''

    mask_tex_uv_layer = None
    '''UV map name 

    :type:  string, default “”, (never None) 
    '''

    mask_texture = None
    '''Masking texture 

    :type:  Texture 
    '''

    mask_vertex_group = None
    '''Masking vertex group name 

    :type:  string, default “”, (never None) 
    '''

    mix_mode = None
    '''How weights from vgroup B affect weights of vgroup A 

    :type:  enum in [‘SET’, ‘ADD’, ‘SUB’, ‘MUL’, ‘DIV’, ‘DIF’, ‘AVG’], default ‘SET’ 
    '''

    mix_set = None
    '''Which vertices should be affected 

    :type:  enum in [‘ALL’, ‘A’, ‘B’, ‘OR’, ‘AND’], default ‘ALL’ 
    '''

    vertex_group_a = None
    '''First vertex group name 

    :type:  string, default “”, (never None) 
    '''

    vertex_group_b = None
    '''Second vertex group name 

    :type:  string, default “”, (never None) 
    '''


class VertexWeightProximityModifier:
    '''Set the weights of vertices in a group from a target object’s distance '''

    falloff_type = None
    '''How weights are mapped to their new values 

    :type:  enum in [‘LINEAR’, ‘SHARP’, ‘SMOOTH’, ‘ROOT’, ‘ICON_SPHERECURVE’, ‘RANDOM’, ‘STEP’], default ‘LINEAR’ 
    '''

    mask_constant = None
    '''Global influence of current modifications on vgroup 

    :type:  float in [-inf, inf], default 0.0 
    '''

    mask_tex_map_object = None
    '''Which object to take texture coordinates from 

    :type:  Object 
    '''

    mask_tex_mapping = None
    '''Which texture coordinates to use for mapping 

    :type:  enum in [‘LOCAL’, ‘GLOBAL’, ‘OBJECT’, ‘UV’], default ‘LOCAL’ 
    '''

    mask_tex_use_channel = None
    '''Which texture channel to use for masking 

    :type:  enum in [‘INT’, ‘RED’, ‘GREEN’, ‘BLUE’, ‘HUE’, ‘SAT’, ‘VAL’, ‘ALPHA’], default ‘INT’ 
    '''

    mask_tex_uv_layer = None
    '''UV map name 

    :type:  string, default “”, (never None) 
    '''

    mask_texture = None
    '''Masking texture 

    :type:  Texture 
    '''

    mask_vertex_group = None
    '''Masking vertex group name 

    :type:  string, default “”, (never None) 
    '''

    max_dist = None
    '''Distance mapping to weight 1.0 

    :type:  float in [0, inf], default 0.0 
    '''

    min_dist = None
    '''Distance mapping to weight 0.0 

    :type:  float in [0, inf], default 0.0 
    '''

    proximity_geometry = None
    '''Use the shortest computed distance to target object’s geometry as weight 

    :type:  enum set in {‘VERTEX’, ‘EDGE’, ‘FACE’}, default {‘FACE’} 
    '''

    proximity_mode = None
    '''Which distances to target object to use 

    :type:  enum in [‘OBJECT’, ‘GEOMETRY’], default ‘GEOMETRY’ 
    '''

    target = None
    '''Object to calculate vertices distances from 

    :type:  Object 
    '''

    vertex_group = None
    '''Vertex group name 

    :type:  string, default “”, (never None) 
    '''


class View2D:
    '''Scroll and zoom for a 2D region '''

    def region_to_view(self, x, y):
        '''Transform region coordinates to 2D view 

        :param x: x, Region x coordinate 
        :type x: int in [-inf, inf]
        :param y: y, Region y coordinate 
        :type y: int in [-inf, inf]
        :rtype: float array of 2 items in [-inf, inf] 
        :return:  Result, View coordinates 
        '''
        pass

    def view_to_region(self, x, y, clip=True):
        '''Transform 2D view coordinates to region 

        :param x: x, 2D View x coordinate 
        :type x: float in [-inf, inf]
        :param y: y, 2D View y coordinate 
        :type y: float in [-inf, inf]
        :param clip: Clip, Clip coordinates to the visible region 
        :type clip: boolean, (optional)
        :rtype: int array of 2 items in [-inf, inf] 
        :return:  Result, Region coordinates 
        '''
        pass


class View3DCursor:
    location = None
    '''

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    rotation_axis_angle = None
    '''Angle of Rotation for Axis-Angle rotation representation 

    :type:  float array of 4 items in [-inf, inf], default (0.0, 0.0, 1.0, 0.0) 
    '''

    rotation_euler = None
    '''3D rotation 

    :type:  float array of 3 items in [-inf, inf], default (0.0, 0.0, 0.0) 
    '''

    rotation_mode = None
    '''

    :type:  enum in [‘QUATERNION’, ‘XYZ’, ‘XZY’, ‘YXZ’, ‘YZX’, ‘ZXY’, ‘ZYX’, ‘AXIS_ANGLE’], default ‘QUATERNION’ 
    '''

    rotation_quaternion = None
    '''Rotation in quaternions (keep normalized) 

    :type:  float array of 4 items in [-inf, inf], default (1.0, 0.0, 0.0, 0.0) 
    '''


class View3DOverlay:
    '''Settings for display of overlays in the 3D viewport '''

    backwire_opacity = None
    '''Opacity when rendering transparent wires 

    :type:  float in [0, 1], default 0.0 
    '''

    gpencil_fade_layer = None
    '''Fade layer opacity for Grease Pencil layers except the active one 

    :type:  float in [0, 1], default 0.5 
    '''

    gpencil_grid_opacity = None
    '''Canvas grid opacity 

    :type:  float in [0.1, 1], default 0.9 
    '''

    gpencil_paper_opacity = None
    '''Paper opacity 

    :type:  float in [0, 1], default 0.5 
    '''

    grid_lines = None
    '''Number of grid lines to display in perspective view 

    :type:  int in [0, 1024], default 16 
    '''

    grid_scale = None
    '''Distance between 3D View grid lines 

    :type:  float in [0, inf], default 1.0 
    '''

    grid_scale_unit = None
    '''Grid cell size scaled by scene unit system settings 

    :type:  float in [-inf, inf], default 0.0, (readonly) 
    '''

    grid_subdivisions = None
    '''Number of subdivisions between grid lines 

    :type:  int in [1, 1024], default 10 
    '''

    normals_length = None
    '''Display size for normals in the 3D view 

    :type:  float in [1e-05, 100000], default 0.02 
    '''

    show_annotation = None
    '''Show annotations for this view 

    :type:  boolean, default False 
    '''

    show_axis_x = None
    '''Show the X axis line in perspective view 

    :type:  boolean, default False 
    '''

    show_axis_y = None
    '''Show the Y axis line in perspective view 

    :type:  boolean, default False 
    '''

    show_axis_z = None
    '''Show the Z axis line in perspective view 

    :type:  boolean, default False 
    '''

    show_bones = None
    '''Display bones (disable to show motion paths only) 

    :type:  boolean, default False 
    '''

    show_cursor = None
    '''Display 3D Cursor Overlay 

    :type:  boolean, default False 
    '''

    show_curve_handles = None
    '''Display Bezier handles in editmode 

    :type:  boolean, default False 
    '''

    show_curve_normals = None
    '''Display 3D curve normals in editmode 

    :type:  boolean, default False 
    '''

    show_edge_bevel_weight = None
    '''Display weights created for the Bevel modifier 

    :type:  boolean, default False 
    '''

    show_edge_crease = None
    '''Display creases created for Subdivision Surface modifier 

    :type:  boolean, default False 
    '''

    show_edge_seams = None
    '''Display UV unwrapping seams 

    :type:  boolean, default False 
    '''

    show_edge_sharp = None
    '''Display sharp edges, used with the Edge Split modifier 

    :type:  boolean, default False 
    '''

    show_edges = None
    '''Display selected edges using highlights in the 3D view and UV editor 

    :type:  boolean, default False 
    '''

    show_extra_edge_angle = None
    '''Display selected edge angle, using global values when set in the transform panel 

    :type:  boolean, default False 
    '''

    show_extra_edge_length = None
    '''Display selected edge lengths, using global values when set in the transform panel 

    :type:  boolean, default False 
    '''

    show_extra_face_angle = None
    '''Display the angles in the selected edges, using global values when set in the transform panel 

    :type:  boolean, default False 
    '''

    show_extra_face_area = None
    '''Display the area of selected faces, using global values when set in the transform panel 

    :type:  boolean, default False 
    '''

    show_extra_indices = None
    '''Display the index numbers of selected vertices, edges, and faces 

    :type:  boolean, default False 
    '''

    show_extras = None
    '''Object details, including empty wire, cameras and other visual guides 

    :type:  boolean, default False 
    '''

    show_face_center = None
    '''Display face center (when disabled, edges display wider in edge mode) 

    :type:  boolean, default False 
    '''

    show_face_normals = None
    '''Display face normals as lines 

    :type:  boolean, default False 
    '''

    show_face_orientation = None
    '''Show the Face Orientation Overlay 

    :type:  boolean, default False 
    '''

    show_faces = None
    '''Display all faces as shades in the 3D view and UV editor 

    :type:  boolean, default False 
    '''

    show_floor = None
    '''Show the ground plane grid in perspective view 

    :type:  boolean, default False 
    '''

    show_freestyle_edge_marks = None
    '''Display Freestyle edge marks, used with the Freestyle renderer 

    :type:  boolean, default False 
    '''

    show_freestyle_face_marks = None
    '''Display Freestyle face marks, used with the Freestyle renderer 

    :type:  boolean, default False 
    '''

    show_look_dev = None
    '''Show look development balls and palette 

    :type:  boolean, default False 
    '''

    show_motion_paths = None
    '''Show the Motion Paths Overlay 

    :type:  boolean, default False 
    '''

    show_object_origins = None
    '''Show object center dots 

    :type:  boolean, default False 
    '''

    show_object_origins_all = None
    '''Show the object origin center dot for all (selected and unselected) objects 

    :type:  boolean, default False 
    '''

    show_occlude_wire = None
    '''Use hidden wireframe display 

    :type:  boolean, default False 
    '''

    show_onion_skins = None
    '''Show the Onion Skinning Overlay 

    :type:  boolean, default False 
    '''

    show_ortho_grid = None
    '''Show grid in othographic side view 

    :type:  boolean, default False 
    '''

    show_outline_selected = None
    '''Show an outline highlight around selected objects in non-wireframe views 

    :type:  boolean, default False 
    '''

    show_overlays = None
    '''Display overlays like gizmos and outlines 

    :type:  boolean, default False 
    '''

    show_paint_wire = None
    '''Use wireframe display in painting modes 

    :type:  boolean, default False 
    '''

    show_relationship_lines = None
    '''Show dashed lines indicating parent or constraint relationships 

    :type:  boolean, default False 
    '''

    show_split_normals = None
    '''Display vertex-per-face normals as lines 

    :type:  boolean, default False 
    '''

    show_statvis = None
    '''Display statistical information about the mesh 

    :type:  boolean, default False 
    '''

    show_text = None
    '''Display overlay text 

    :type:  boolean, default False 
    '''

    show_vertex_normals = None
    '''Display vertex normals as lines 

    :type:  boolean, default False 
    '''

    show_weight = None
    '''Display weights in editmode 

    :type:  boolean, default False 
    '''

    show_wireframes = None
    '''Show face edges wires 

    :type:  boolean, default False 
    '''

    show_wpaint_contours = None
    '''Show contour lines formed by points with the same interpolated weight 

    :type:  boolean, default False 
    '''

    show_xray_bone = None
    '''Show the bone selection overlay 

    :type:  boolean, default False 
    '''

    texture_paint_mode_opacity = None
    '''Opacity of the texture paint mode overlay 

    :type:  float in [0, 1], default 1.0 
    '''

    use_gpencil_edit_lines = None
    '''Show edit lines when editing strokes 

    :type:  boolean, default False 
    '''

    use_gpencil_fade_layers = None
    '''Toggle fading of Grease Pencil layers except the active one 

    :type:  boolean, default False 
    '''

    use_gpencil_grid = None
    '''Display a grid over grease pencil paper 

    :type:  boolean, default False 
    '''

    use_gpencil_multiedit_line_only = None
    '''Only show edit lines for additional frames 

    :type:  boolean, default False 
    '''

    use_gpencil_onion_skin = None
    '''Show ghosts of the keyframes before and after the current frame 

    :type:  boolean, default False 
    '''

    use_gpencil_paper = None
    '''Cover all viewport with a full color layer to improve visibility while drawing over complex scenes 

    :type:  boolean, default False 
    '''

    vertex_opacity = None
    '''Opacity for edit vertices 

    :type:  float in [0, 1], default 0.0 
    '''

    vertex_paint_mode_opacity = None
    '''Opacity of the vertex paint mode overlay 

    :type:  float in [0, 1], default 1.0 
    '''

    weight_paint_mode_opacity = None
    '''Opacity of the weight paint mode overlay 

    :type:  float in [0, 1], default 1.0 
    '''

    wireframe_threshold = None
    '''Adjust the number of wires displayed (1 for all wires) 

    :type:  float in [0, 1], default 0.5 
    '''

    xray_alpha_bone = None
    '''Opacity to use for bone selection 

    :type:  float in [0, 1], default 0.5 
    '''


class View3DShading:
    '''Settings for shading in the 3D viewport '''

    background_color = None
    '''Color for custom background color 

    :type:  float array of 3 items in [0, 1], default (0.05, 0.05, 0.05) 
    '''

    background_type = None
    '''Way to draw the background 

    :type:  enum in [‘THEME’, ‘WORLD’, ‘VIEWPORT’], default ‘THEME’ 
    '''

    cavity_ridge_factor = None
    '''Factor for the cavity ridges 

    :type:  float in [0, 250], default 1.0 
    '''

    cavity_type = None
    '''Way to draw the cavity shading 

    :type:  enum in [‘WORLD’, ‘SCREEN’, ‘BOTH’], default ‘WORLD’ 
    '''

    cavity_valley_factor = None
    '''Factor for the cavity valleys 

    :type:  float in [0, 250], default 1.0 
    '''

    color_type = None
    '''Color Type 

    :type:  enum in [‘SINGLE’, ‘MATERIAL’, ‘OBJECT’, ‘RANDOM’, ‘TEXTURE’], default ‘MATERIAL’ 
    '''

    curvature_ridge_factor = None
    '''Factor for the curvature ridges 

    :type:  float in [0, 2], default 1.0 
    '''

    curvature_valley_factor = None
    '''Factor for the curvature valleys 

    :type:  float in [0, 2], default 1.0 
    '''

    light = None
    '''Lighting Method for Solid/Texture Viewport Shading 

    :type:  enum in [‘FLAT’, ‘STUDIO’, ‘MATCAP’], default ‘FLAT’ 
    '''

    object_outline_color = None
    '''Color for object outline 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    selected_studio_light = None
    '''Selected StudioLight 

    :type:  StudioLight, (readonly) 
    '''

    shadow_intensity = None
    '''Darkness of shadows 

    :type:  float in [0, 1], default 0.5 
    '''

    show_backface_culling = None
    '''Use back face culling to hide the back side of faces 

    :type:  boolean, default False 
    '''

    show_cavity = None
    '''Show Cavity 

    :type:  boolean, default False 
    '''

    show_object_outline = None
    '''Show Object Outline 

    :type:  boolean, default False 
    '''

    show_shadows = None
    '''Show Shadow 

    :type:  boolean, default False 
    '''

    show_specular_highlight = None
    '''Render specular highlights 

    :type:  boolean, default False 
    '''

    show_xray = None
    '''Show whole scene transparent 

    :type:  boolean, default False 
    '''

    show_xray_wireframe = None
    '''Show whole scene transparent 

    :type:  boolean, default False 
    '''

    single_color = None
    '''Color for single color mode 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''

    studio_light = None
    '''Studio lighting setup 

    :type:  enum in [‘DEFAULT’], default ‘DEFAULT’ 
    '''

    studiolight_background_alpha = None
    '''Show the studiolight in the background 

    :type:  float in [0, 1], default 0.0 
    '''

    studiolight_rotate_z = None
    '''Rotation of the studiolight around the Z-Axis 

    :type:  float in [-3.14159, 3.14159], default 0.0 
    '''

    type = None
    '''Method to display/shade objects in the 3D View 

    :type:  enum in [‘WIREFRAME’, ‘SOLID’, ‘MATERIAL’, ‘RENDERED’], default ‘WIREFRAME’ 
    '''

    use_dof = None
    '''Use depth of field on viewport using the values from the active camera 

    :type:  boolean, default False 
    '''

    use_scene_lights = None
    '''Render lights and light probes of the scene 

    :type:  boolean, default False 
    '''

    use_scene_world = None
    '''Use scene world for lighting 

    :type:  boolean, default False 
    '''

    use_world_space_lighting = None
    '''Make the lighting fixed and not follow the camera 

    :type:  boolean, default False 
    '''

    wireframe_color_type = None
    '''Color Type 

    :type:  enum in [‘SINGLE’, ‘MATERIAL’, ‘OBJECT’, ‘RANDOM’, ‘TEXTURE’], default ‘MATERIAL’ 
    '''

    xray_alpha = None
    '''Amount of alpha to use 

    :type:  float in [0, 1], default 0.5 
    '''

    xray_alpha_wireframe = None
    '''Amount of alpha to use 

    :type:  float in [0, 1], default 0.5 
    '''


class ViewLayer:
    '''View layer '''

    active_layer_collection = None
    '''Active layer collection in this view layer’s hierarchy 

    :type:  LayerCollection, (never None) 
    '''

    cycles = None
    '''Cycles ViewLayer Settings 

    :type:  CyclesRenderLayerSettings, (readonly) 
    '''

    depsgraph = None
    '''Dependencies in the scene data 

    :type:  Depsgraph, (readonly) 
    '''

    freestyle_settings = None
    '''

    :type:  FreestyleSettings, (readonly, never None) 
    '''

    invert_zmask = None
    '''For Zmask, only render what is behind solid z values instead of in front 

    :type:  boolean, default False 
    '''

    layer_collection = None
    '''Root of collections hierarchy of this view layer,its ‘collection’ pointer property is the same as the scene’s master collection 

    :type:  LayerCollection, (readonly, never None) 
    '''

    material_override = None
    '''Material to override all other materials in this view layer 

    :type:  Material 
    '''

    name = None
    '''View layer name 

    :type:  string, default “”, (never None) 
    '''

    objects = None
    '''All the objects in this layer 

    :type:  LayerObjects bpy_prop_collection of Object, (readonly) 
    '''

    pass_alpha_threshold = None
    '''Z, Index, normal, UV and vector passes are only affected by surfaces with alpha transparency equal to or higher than this threshold 

    :type:  float in [0, 1], default 0.0 
    '''

    samples = None
    '''Override number of render samples for this view layer, 0 will use the scene setting 

    :type:  int in [0, inf], default 0 
    '''

    use = None
    '''Disable or enable the render layer 

    :type:  boolean, default False 
    '''

    use_all_z = None
    '''Fill in Z values for solid faces in invisible layers, for masking 

    :type:  boolean, default False 
    '''

    use_ao = None
    '''Render Ambient Occlusion in this Layer 

    :type:  boolean, default False 
    '''

    use_edge_enhance = None
    '''Render Edge-enhance in this Layer (only works for Solid faces) 

    :type:  boolean, default False 
    '''

    use_freestyle = None
    '''Render stylized strokes in this Layer 

    :type:  boolean, default False 
    '''

    use_halo = None
    '''Render Halos in this Layer (on top of Solid) 

    :type:  boolean, default False 
    '''

    use_pass_ambient_occlusion = None
    '''Deliver Ambient Occlusion pass 

    :type:  boolean, default False 
    '''

    use_pass_combined = None
    '''Deliver full combined RGBA buffer 

    :type:  boolean, default False 
    '''

    use_pass_diffuse_color = None
    '''Deliver diffuse color pass 

    :type:  boolean, default False 
    '''

    use_pass_diffuse_direct = None
    '''Deliver diffuse direct pass 

    :type:  boolean, default False 
    '''

    use_pass_diffuse_indirect = None
    '''Deliver diffuse indirect pass 

    :type:  boolean, default False 
    '''

    use_pass_emit = None
    '''Deliver emission pass 

    :type:  boolean, default False 
    '''

    use_pass_environment = None
    '''Deliver environment lighting pass 

    :type:  boolean, default False 
    '''

    use_pass_glossy_color = None
    '''Deliver glossy color pass 

    :type:  boolean, default False 
    '''

    use_pass_glossy_direct = None
    '''Deliver glossy direct pass 

    :type:  boolean, default False 
    '''

    use_pass_glossy_indirect = None
    '''Deliver glossy indirect pass 

    :type:  boolean, default False 
    '''

    use_pass_material_index = None
    '''Deliver material index pass 

    :type:  boolean, default False 
    '''

    use_pass_mist = None
    '''Deliver mist factor pass (0.0-1.0) 

    :type:  boolean, default False 
    '''

    use_pass_normal = None
    '''Deliver normal pass 

    :type:  boolean, default False 
    '''

    use_pass_object_index = None
    '''Deliver object index pass 

    :type:  boolean, default False 
    '''

    use_pass_shadow = None
    '''Deliver shadow pass 

    :type:  boolean, default False 
    '''

    use_pass_subsurface_color = None
    '''Deliver subsurface color pass 

    :type:  boolean, default False 
    '''

    use_pass_subsurface_direct = None
    '''Deliver subsurface direct pass 

    :type:  boolean, default False 
    '''

    use_pass_subsurface_indirect = None
    '''Deliver subsurface indirect pass 

    :type:  boolean, default False 
    '''

    use_pass_transmission_color = None
    '''Deliver transmission color pass 

    :type:  boolean, default False 
    '''

    use_pass_transmission_direct = None
    '''Deliver transmission direct pass 

    :type:  boolean, default False 
    '''

    use_pass_transmission_indirect = None
    '''Deliver transmission indirect pass 

    :type:  boolean, default False 
    '''

    use_pass_uv = None
    '''Deliver texture UV pass 

    :type:  boolean, default False 
    '''

    use_pass_vector = None
    '''Deliver speed vector pass 

    :type:  boolean, default False 
    '''

    use_pass_z = None
    '''Deliver Z values pass 

    :type:  boolean, default False 
    '''

    use_sky = None
    '''Render Sky in this Layer 

    :type:  boolean, default False 
    '''

    use_solid = None
    '''Render Solid faces in this Layer 

    :type:  boolean, default False 
    '''

    use_strand = None
    '''Render Strands in this Layer 

    :type:  boolean, default False 
    '''

    use_zmask = None
    '''Only render what’s in front of the solid z values 

    :type:  boolean, default False 
    '''

    use_ztransp = None
    '''Render Z-Transparent faces in this Layer (on top of Solid and Halos) 

    :type:  boolean, default False 
    '''

    def update(self):
        '''Update data tagged to be updated from previous access to data or operators 

        '''
        pass


class ViewLayers:
    '''Collection of render layers '''

    def new(self, name):
        '''Add a view layer to scene 

        :param name: New name for the view layer (not unique) 
        :type name: string, (never None)
        :rtype: ViewLayer 
        :return:  Newly created view layer 
        '''
        pass

    def remove(self, layer):
        '''Remove a view layer 

        :param layer: View layer to remove 
        :type layer: ViewLayer, (never None)
        '''
        pass


class VoronoiTexture:
    '''Procedural voronoi texture '''

    color_mode = None
    '''

    :type:  enum in [‘INTENSITY’, ‘POSITION’, ‘POSITION_OUTLINE’, ‘POSITION_OUTLINE_INTENSITY’], default ‘INTENSITY’ 
    '''

    distance_metric = None
    '''Algorithm used to calculate distance of sample points to feature points 

    :type:  enum in [‘DISTANCE’, ‘DISTANCE_SQUARED’, ‘MANHATTAN’, ‘CHEBYCHEV’, ‘MINKOVSKY_HALF’, ‘MINKOVSKY_FOUR’, ‘MINKOVSKY’], default ‘DISTANCE’ 
    '''

    minkovsky_exponent = None
    '''Minkowski exponent 

    :type:  float in [0.01, 10], default 0.0 
    '''

    nabla = None
    '''Size of derivative offset used for calculating normal 

    :type:  float in [0.001, 0.1], default 0.0 
    '''

    noise_intensity = None
    '''Scales the intensity of the noise 

    :type:  float in [0.01, 10], default 0.0 
    '''

    noise_scale = None
    '''Scaling for noise input 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    weight_1 = None
    '''Voronoi feature weight 1 

    :type:  float in [-2, 2], default 0.0 
    '''

    weight_2 = None
    '''Voronoi feature weight 2 

    :type:  float in [-2, 2], default 0.0 
    '''

    weight_3 = None
    '''Voronoi feature weight 3 

    :type:  float in [-2, 2], default 0.0 
    '''

    weight_4 = None
    '''Voronoi feature weight 4 

    :type:  float in [-2, 2], default 0.0 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class WalkNavigation:
    '''Walk navigation settings '''

    jump_height = None
    '''Maximum height of a jump 

    :type:  float in [0.1, 100], default 0.0 
    '''

    mouse_speed = None
    '''Speed factor for when looking around, high values mean faster mouse movement 

    :type:  float in [0.01, 10], default 0.0 
    '''

    teleport_time = None
    '''Interval of time warp when teleporting in navigation mode 

    :type:  float in [0, 10], default 0.0 
    '''

    use_gravity = None
    '''Walk with gravity, or free navigate 

    :type:  boolean, default False 
    '''

    use_mouse_reverse = None
    '''Reverse the vertical movement of the mouse 

    :type:  boolean, default False 
    '''

    view_height = None
    '''View distance from the floor when walking 

    :type:  float in [0, 1000], default 0.0 
    '''

    walk_speed = None
    '''Base speed for walking and flying 

    :type:  float in [0.01, 100], default 0.0 
    '''

    walk_speed_factor = None
    '''Multiplication factor when using the fast or slow modifiers 

    :type:  float in [0.01, 10], default 0.0 
    '''


class WarpModifier:
    '''Warp modifier '''

    falloff_curve = None
    '''Custom falloff curve 

    :type:  CurveMapping, (readonly) 
    '''

    falloff_radius = None
    '''Radius to apply 

    :type:  float in [-inf, inf], default 0.0 
    '''

    falloff_type = None
    '''

    :type:  enum in [‘NONE’, ‘CURVE’, ‘SMOOTH’, ‘SPHERE’, ‘ROOT’, ‘INVERSE_SQUARE’, ‘SHARP’, ‘LINEAR’, ‘CONSTANT’], default ‘NONE’ 
    '''

    object_from = None
    '''Object to transform from 

    :type:  Object 
    '''

    object_to = None
    '''Object to transform to 

    :type:  Object 
    '''

    strength = None
    '''

    :type:  float in [-inf, inf], default 0.0 
    '''

    texture = None
    '''

    :type:  Texture 
    '''

    texture_coords = None
    '''

    :type:  enum in [‘LOCAL’, ‘GLOBAL’, ‘OBJECT’, ‘UV’], default ‘LOCAL’ 
    '''

    texture_coords_object = None
    '''Object to set the texture coordinates 

    :type:  Object 
    '''

    use_volume_preserve = None
    '''Preserve volume when rotations are used 

    :type:  boolean, default False 
    '''

    uv_layer = None
    '''UV map name 

    :type:  string, default “”, (never None) 
    '''

    vertex_group = None
    '''Vertex group name for modulating the deform 

    :type:  string, default “”, (never None) 
    '''


class WaveModifier:
    '''Wave effect modifier '''

    damping_time = None
    '''Number of frames in which the wave damps out after it dies 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    falloff_radius = None
    '''Distance after which it fades out 

    :type:  float in [0, inf], default 0.0 
    '''

    height = None
    '''Height of the wave 

    :type:  float in [-inf, inf], default 0.0 
    '''

    lifetime = None
    '''Lifetime of the wave in frames, zero means infinite 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    narrowness = None
    '''Distance between the top and the base of a wave, the higher the value, the more narrow the wave 

    :type:  float in [0, inf], default 0.0 
    '''

    speed = None
    '''Speed of the wave, towards the starting point when negative 

    :type:  float in [-inf, inf], default 0.0 
    '''

    start_position_object = None
    '''Object which defines the wave center 

    :type:  Object 
    '''

    start_position_x = None
    '''X coordinate of the start position 

    :type:  float in [-inf, inf], default 0.0 
    '''

    start_position_y = None
    '''Y coordinate of the start position 

    :type:  float in [-inf, inf], default 0.0 
    '''

    texture = None
    '''

    :type:  Texture 
    '''

    texture_coords = None
    '''

    :type:  enum in [‘LOCAL’, ‘GLOBAL’, ‘OBJECT’, ‘UV’], default ‘LOCAL’ 
    '''

    texture_coords_object = None
    '''Object to set the texture coordinates 

    :type:  Object 
    '''

    time_offset = None
    '''Either the starting frame (for positive speed) or ending frame (for negative speed.) 

    :type:  float in [-1.04857e+06, 1.04857e+06], default 0.0 
    '''

    use_cyclic = None
    '''Cyclic wave effect 

    :type:  boolean, default False 
    '''

    use_normal = None
    '''Displace along normals 

    :type:  boolean, default False 
    '''

    use_normal_x = None
    '''Enable displacement along the X normal 

    :type:  boolean, default False 
    '''

    use_normal_y = None
    '''Enable displacement along the Y normal 

    :type:  boolean, default False 
    '''

    use_normal_z = None
    '''Enable displacement along the Z normal 

    :type:  boolean, default False 
    '''

    use_x = None
    '''X axis motion 

    :type:  boolean, default False 
    '''

    use_y = None
    '''Y axis motion 

    :type:  boolean, default False 
    '''

    uv_layer = None
    '''UV map name 

    :type:  string, default “”, (never None) 
    '''

    vertex_group = None
    '''Vertex group name for modulating the wave 

    :type:  string, default “”, (never None) 
    '''

    width = None
    '''Distance between the waves 

    :type:  float in [0, inf], default 0.0 
    '''


class WeightedNormalModifier:
    face_influence = None
    '''Use influence of face for weighting 

    :type:  boolean, default False 
    '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    keep_sharp = None
    '''Keep sharp edges as computed for default split normals, instead of setting a single weighted normal for each vertex 

    :type:  boolean, default False 
    '''

    mode = None
    '''Weighted vertex normal mode to use 

    :type:  enum in [‘FACE_AREA’, ‘CORNER_ANGLE’, ‘FACE_AREA_WITH_ANGLE’], default ‘FACE_AREA’ 
    '''

    thresh = None
    '''Threshold value for different weights to be considered equal 

    :type:  float in [0, 10], default 0.0 
    '''

    vertex_group = None
    '''Vertex group name for modifying the selected areas 

    :type:  string, default “”, (never None) 
    '''

    weight = None
    '''Corrective factor applied to faces’ weights, 50 is neutral, lower values increase weight of weak faces, higher values increase weight of strong faces 

    :type:  int in [1, 100], default 0 
    '''


class WhiteBalanceModifier:
    '''White balance modifier for sequence strip '''

    white_value = None
    '''This color defines white in the strip 

    :type:  float array of 3 items in [0, 1], default (0.0, 0.0, 0.0) 
    '''


class Window:
    '''Open window '''

    height = None
    '''Window height 

    :type:  int in [0, 32767], default 0, (readonly) 
    '''

    parent = None
    '''Active workspace and scene follow this window 

    :type:  Window, (readonly) 
    '''

    scene = None
    '''Active scene to be edited in the window 

    :type:  Scene, (never None) 
    '''

    screen = None
    '''Active workspace screen showing in the window 

    :type:  Screen, (never None) 
    '''

    stereo_3d_display = None
    '''Settings for stereo 3d display 

    :type:  Stereo3dDisplay, (readonly, never None) 
    '''

    view_layer = None
    '''The active workspace view layer showing in the window 

    :type:  ViewLayer, (never None) 
    '''

    width = None
    '''Window width 

    :type:  int in [0, 32767], default 0, (readonly) 
    '''

    workspace = None
    '''Active workspace showing in the window 

    :type:  WorkSpace, (never None) 
    '''

    x = None
    '''Horizontal location of the window 

    :type:  int in [-32768, 32767], default 0, (readonly) 
    '''

    y = None
    '''Vertical location of the window 

    :type:  int in [-32768, 32767], default 0, (readonly) 
    '''

    def cursor_warp(self, x, y):
        '''Set the cursor position 

        '''
        pass

    def cursor_set(self, cursor):
        '''Set the cursor 

        :param cursor: cursor 
        :type cursor: enum in ['DEFAULT', 'NONE', 'WAIT', 'CROSSHAIR', 'MOVE_X', 'MOVE_Y', 'KNIFE', 'TEXT', 'PAINT_BRUSH', 'HAND', 'SCROLL_X', 'SCROLL_Y', 'SCROLL_XY', 'EYEDROPPER']
        '''
        pass

    def cursor_modal_set(self, cursor):
        '''Restore the previous cursor after calling cursor_modal_set 

        :param cursor: cursor 
        :type cursor: enum in ['DEFAULT', 'NONE', 'WAIT', 'CROSSHAIR', 'MOVE_X', 'MOVE_Y', 'KNIFE', 'TEXT', 'PAINT_BRUSH', 'HAND', 'SCROLL_X', 'SCROLL_Y', 'SCROLL_XY', 'EYEDROPPER']
        '''
        pass

    def cursor_modal_restore(self):
        '''cursor_modal_restore 

        '''
        pass

    def event_simulate(self,
                       type,
                       value,
                       unicode="",
                       x=0,
                       y=0,
                       shift=False,
                       ctrl=False,
                       alt=False,
                       oskey=False):
        '''event_simulate 

        :param type: TypeNONE .LEFTMOUSE Left Mouse, LMB.MIDDLEMOUSE Middle Mouse, MMB.RIGHTMOUSE Right Mouse, RMB.BUTTON4MOUSE Button4 Mouse, MB4.BUTTON5MOUSE Button5 Mouse, MB5.BUTTON6MOUSE Button6 Mouse, MB6.BUTTON7MOUSE Button7 Mouse, MB7.PEN Pen.ERASER Eraser.MOUSEMOVE Mouse Move, MsMov.INBETWEEN_MOUSEMOVE In-between Move, MsSubMov.TRACKPADPAN Mouse/Trackpad Pan, MsPan.TRACKPADZOOM Mouse/Trackpad Zoom, MsZoom.MOUSEROTATE Mouse/Trackpad Rotate, MsRot.WHEELUPMOUSE Wheel Up, WhUp.WHEELDOWNMOUSE Wheel Down, WhDown.WHEELINMOUSE Wheel In, WhIn.WHEELOUTMOUSE Wheel Out, WhOut.EVT_TWEAK_L Tweak Left, TwkL.EVT_TWEAK_M Tweak Middle, TwkM.EVT_TWEAK_R Tweak Right, TwkR.A A.B B.C C.D D.E E.F F.G G.H H.I I.J J.K K.L L.M M.N N.O O.P P.Q Q.R R.S S.T T.U U.V V.W W.X X.Y Y.Z Z.ZERO 0.ONE 1.TWO 2.THREE 3.FOUR 4.FIVE 5.SIX 6.SEVEN 7.EIGHT 8.NINE 9.LEFT_CTRL Left Ctrl, CtrlL.LEFT_ALT Left Alt, AltL.LEFT_SHIFT Left Shift, ShiftL.RIGHT_ALT Right Alt, AltR.RIGHT_CTRL Right Ctrl, CtrlR.RIGHT_SHIFT Right Shift, ShiftR.OSKEY OS Key, Cmd.GRLESS Grless.ESC Esc.TAB Tab.RET Return, Enter.SPACE Spacebar, Space.LINE_FEED Line Feed.BACK_SPACE Back Space, BkSpace.DEL Delete, Del.SEMI_COLON ;.PERIOD ..COMMA ,.QUOTE “.ACCENT_GRAVE `.MINUS -.PLUS +.SLASH /.BACK_SLASH .EQUAL =.LEFT_BRACKET [.RIGHT_BRACKET ].LEFT_ARROW Left Arrow, ←.DOWN_ARROW Down Arrow, ↓.RIGHT_ARROW Right Arrow, →.UP_ARROW Up Arrow, ↑.NUMPAD_2 Numpad 2, Pad2.NUMPAD_4 Numpad 4, Pad4.NUMPAD_6 Numpad 6, Pad6.NUMPAD_8 Numpad 8, Pad8.NUMPAD_1 Numpad 1, Pad1.NUMPAD_3 Numpad 3, Pad3.NUMPAD_5 Numpad 5, Pad5.NUMPAD_7 Numpad 7, Pad7.NUMPAD_9 Numpad 9, Pad9.NUMPAD_PERIOD Numpad ., Pad..NUMPAD_SLASH Numpad /, Pad/.NUMPAD_ASTERIX Numpad *, Pad*.NUMPAD_0 Numpad 0, Pad0.NUMPAD_MINUS Numpad -, Pad-.NUMPAD_ENTER Numpad Enter, PadEnter.NUMPAD_PLUS Numpad +, Pad+.F1 F1.F2 F2.F3 F3.F4 F4.F5 F5.F6 F6.F7 F7.F8 F8.F9 F9.F10 F10.F11 F11.F12 F12.F13 F13.F14 F14.F15 F15.F16 F16.F17 F17.F18 F18.F19 F19.PAUSE Pause.INSERT Insert, Ins.HOME Home.PAGE_UP Page Up, PgUp.PAGE_DOWN Page Down, PgDown.END End.MEDIA_PLAY Media Play/Pause, >/||.MEDIA_STOP Media Stop, Stop.MEDIA_FIRST Media First, |<<.MEDIA_LAST Media Last, >>|.TEXTINPUT Text Input, TxtIn.WINDOW_DEACTIVATE Window Deactivate.TIMER Timer, Tmr.TIMER0 Timer 0, Tmr0.TIMER1 Timer 1, Tmr1.TIMER2 Timer 2, Tmr2.TIMER_JOBS Timer Jobs, TmrJob.TIMER_AUTOSAVE Timer Autosave, TmrSave.TIMER_REPORT Timer Report, TmrReport.TIMERREGION Timer Region, TmrReg.NDOF_MOTION NDOF Motion, NdofMov.NDOF_BUTTON_MENU NDOF Menu, NdofMenu.NDOF_BUTTON_FIT NDOF Fit, NdofFit.NDOF_BUTTON_TOP NDOF Top, Ndof↑.NDOF_BUTTON_BOTTOM NDOF Bottom, Ndof↓.NDOF_BUTTON_LEFT NDOF Left, Ndof←.NDOF_BUTTON_RIGHT NDOF Right, Ndof→.NDOF_BUTTON_FRONT NDOF Front, NdofFront.NDOF_BUTTON_BACK NDOF Back, NdofBack.NDOF_BUTTON_ISO1 NDOF Isometric 1, NdofIso1.NDOF_BUTTON_ISO2 NDOF Isometric 2, NdofIso2.NDOF_BUTTON_ROLL_CW NDOF Roll CW, NdofRCW.NDOF_BUTTON_ROLL_CCW NDOF Roll CCW, NdofRCCW.NDOF_BUTTON_SPIN_CW NDOF Spin CW, NdofSCW.NDOF_BUTTON_SPIN_CCW NDOF Spin CCW, NdofSCCW.NDOF_BUTTON_TILT_CW NDOF Tilt CW, NdofTCW.NDOF_BUTTON_TILT_CCW NDOF Tilt CCW, NdofTCCW.NDOF_BUTTON_ROTATE NDOF Rotate, NdofRot.NDOF_BUTTON_PANZOOM NDOF Pan/Zoom, NdofPanZoom.NDOF_BUTTON_DOMINANT NDOF Dominant, NdofDom.NDOF_BUTTON_PLUS NDOF Plus, Ndof+.NDOF_BUTTON_MINUS NDOF Minus, Ndof-.NDOF_BUTTON_ESC NDOF Esc, NdofEsc.NDOF_BUTTON_ALT NDOF Alt, NdofAlt.NDOF_BUTTON_SHIFT NDOF Shift, NdofShift.NDOF_BUTTON_CTRL NDOF Ctrl, NdofCtrl.NDOF_BUTTON_1 NDOF Button 1, NdofB1.NDOF_BUTTON_2 NDOF Button 2, NdofB2.NDOF_BUTTON_3 NDOF Button 3, NdofB3.NDOF_BUTTON_4 NDOF Button 4, NdofB4.NDOF_BUTTON_5 NDOF Button 5, NdofB5.NDOF_BUTTON_6 NDOF Button 6, NdofB6.NDOF_BUTTON_7 NDOF Button 7, NdofB7.NDOF_BUTTON_8 NDOF Button 8, NdofB8.NDOF_BUTTON_9 NDOF Button 9, NdofB9.NDOF_BUTTON_10 NDOF Button 10, NdofB10.NDOF_BUTTON_A NDOF Button A, NdofBA.NDOF_BUTTON_B NDOF Button B, NdofBB.NDOF_BUTTON_C NDOF Button C, NdofBC.ACTIONZONE_AREA ActionZone Area, AZone Area.ACTIONZONE_REGION ActionZone Region, AZone Region.ACTIONZONE_FULLSCREEN ActionZone Fullscreen, AZone FullScr. 
        :type type: enum in ['NONE', 'LEFTMOUSE', 'MIDDLEMOUSE', 'RIGHTMOUSE', 'BUTTON4MOUSE', 'BUTTON5MOUSE', 'BUTTON6MOUSE', 'BUTTON7MOUSE', 'PEN', 'ERASER', 'MOUSEMOVE', 'INBETWEEN_MOUSEMOVE', 'TRACKPADPAN', 'TRACKPADZOOM', 'MOUSEROTATE', 'WHEELUPMOUSE', 'WHEELDOWNMOUSE', 'WHEELINMOUSE', 'WHEELOUTMOUSE', 'EVT_TWEAK_L', 'EVT_TWEAK_M', 'EVT_TWEAK_R', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'ZERO', 'ONE', 'TWO', 'THREE', 'FOUR', 'FIVE', 'SIX', 'SEVEN', 'EIGHT', 'NINE', 'LEFT_CTRL', 'LEFT_ALT', 'LEFT_SHIFT', 'RIGHT_ALT', 'RIGHT_CTRL', 'RIGHT_SHIFT', 'OSKEY', 'GRLESS', 'ESC', 'TAB', 'RET', 'SPACE', 'LINE_FEED', 'BACK_SPACE', 'DEL', 'SEMI_COLON', 'PERIOD', 'COMMA', 'QUOTE', 'ACCENT_GRAVE', 'MINUS', 'PLUS', 'SLASH', 'BACK_SLASH', 'EQUAL', 'LEFT_BRACKET', 'RIGHT_BRACKET', 'LEFT_ARROW', 'DOWN_ARROW', 'RIGHT_ARROW', 'UP_ARROW', 'NUMPAD_2', 'NUMPAD_4', 'NUMPAD_6', 'NUMPAD_8', 'NUMPAD_1', 'NUMPAD_3', 'NUMPAD_5', 'NUMPAD_7', 'NUMPAD_9', 'NUMPAD_PERIOD', 'NUMPAD_SLASH', 'NUMPAD_ASTERIX', 'NUMPAD_0', 'NUMPAD_MINUS', 'NUMPAD_ENTER', 'NUMPAD_PLUS', 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'F12', 'F13', 'F14', 'F15', 'F16', 'F17', 'F18', 'F19', 'PAUSE', 'INSERT', 'HOME', 'PAGE_UP', 'PAGE_DOWN', 'END', 'MEDIA_PLAY', 'MEDIA_STOP', 'MEDIA_FIRST', 'MEDIA_LAST', 'TEXTINPUT', 'WINDOW_DEACTIVATE', 'TIMER', 'TIMER0', 'TIMER1', 'TIMER2', 'TIMER_JOBS', 'TIMER_AUTOSAVE', 'TIMER_REPORT', 'TIMERREGION', 'NDOF_MOTION', 'NDOF_BUTTON_MENU', 'NDOF_BUTTON_FIT', 'NDOF_BUTTON_TOP', 'NDOF_BUTTON_BOTTOM', 'NDOF_BUTTON_LEFT', 'NDOF_BUTTON_RIGHT', 'NDOF_BUTTON_FRONT', 'NDOF_BUTTON_BACK', 'NDOF_BUTTON_ISO1', 'NDOF_BUTTON_ISO2', 'NDOF_BUTTON_ROLL_CW', 'NDOF_BUTTON_ROLL_CCW', 'NDOF_BUTTON_SPIN_CW', 'NDOF_BUTTON_SPIN_CCW', 'NDOF_BUTTON_TILT_CW', 'NDOF_BUTTON_TILT_CCW', 'NDOF_BUTTON_ROTATE', 'NDOF_BUTTON_PANZOOM', 'NDOF_BUTTON_DOMINANT', 'NDOF_BUTTON_PLUS', 'NDOF_BUTTON_MINUS', 'NDOF_BUTTON_ESC', 'NDOF_BUTTON_ALT', 'NDOF_BUTTON_SHIFT', 'NDOF_BUTTON_CTRL', 'NDOF_BUTTON_1', 'NDOF_BUTTON_2', 'NDOF_BUTTON_3', 'NDOF_BUTTON_4', 'NDOF_BUTTON_5', 'NDOF_BUTTON_6', 'NDOF_BUTTON_7', 'NDOF_BUTTON_8', 'NDOF_BUTTON_9', 'NDOF_BUTTON_10', 'NDOF_BUTTON_A', 'NDOF_BUTTON_B', 'NDOF_BUTTON_C', 'ACTIONZONE_AREA', 'ACTIONZONE_REGION', 'ACTIONZONE_FULLSCREEN']
        :param value: Value 
        :type value: enum in ['ANY', 'NOTHING', 'PRESS', 'RELEASE', 'CLICK', 'DOUBLE_CLICK', 'CLICK_DRAG', 'NORTH', 'NORTH_EAST', 'EAST', 'SOUTH_EAST', 'SOUTH', 'SOUTH_WEST', 'WEST', 'NORTH_WEST']
        :param shift: Shift 
        :type shift: boolean, (optional)
        :param ctrl: Ctrl 
        :type ctrl: boolean, (optional)
        :param alt: Alt 
        :type alt: boolean, (optional)
        :param oskey: OS Key 
        :type oskey: boolean, (optional)
        :rtype: Event 
        :return:  Item, Added key map item 
        '''
        pass


class WindowManager:
    '''Window manager data-block defining open windows and other user interface data '''

    addon_filter = None
    '''Filter add-ons by category 

    :type:  enum in [], default ‘’ 
    '''

    addon_search = None
    '''Search within the selected filter 

    :type:  string, default “”, (never None) 
    '''

    addon_support = None
    '''Display support level 

    :type:  enum set in {‘OFFICIAL’, ‘COMMUNITY’, ‘TESTING’}, default {‘COMMUNITY’, ‘OFFICIAL’} 
    '''

    clipboard = None
    '''

    :type:  string, default “”, (never None) 
    '''

    keyconfigs = None
    '''Registered key configurations 

    :type:  KeyConfigurations bpy_prop_collection of KeyConfig, (readonly) 
    '''

    operators = None
    '''Operator registry 

    :type:  bpy_prop_collection of Operator, (readonly) 
    '''

    preset_name = None
    '''Name for new preset 

    :type:  string, default “New Preset”, (never None) 
    '''

    windows = None
    '''Open windows 

    :type:  bpy_prop_collection of Window, (readonly) 
    '''

    def event_timer_add(self, time_step, window=None):
        '''Add a timer to the given window, to generate periodic ‘TIMER’ events 

        :param time_step: Time Step, Interval in seconds between timer events 
        :type time_step: float in [0, inf]
        :param window: Window to attach the timer to, or None 
        :type window: Window, (optional)
        :rtype: Timer 
        '''
        pass

    def event_timer_remove(self, timer):
        '''event_timer_remove 

        '''
        pass

    def progress_begin(self, min, max):
        '''Start progress report 

        :param min: min, any value in range [0,9999] 
        :type min: float in [-inf, inf]
        :param max: max, any value in range [min+1,9998] 
        :type max: float in [-inf, inf]
        '''
        pass

    def progress_update(self, value):
        '''Update the progress feedback 

        :param value: value, Any value between min and max as set in progress_begin() 
        :type value: float in [-inf, inf]
        '''
        pass

    def progress_end(self):
        '''Terminate progress report 

        '''
        pass

    def print_undo_steps(self):
        '''print_undo_steps 

        '''
        pass

    def popover(self, draw_func, *, ui_units_x=0, keymap=None):
        '''

        '''
        pass

    def popup_menu(self, draw_func, title='', icon='NONE'):
        '''Note that they will not block the scripts execution, so the caller can’t wait for user input. 

        '''
        pass

    def popup_menu_pie(self, event, draw_func, title='', icon='NONE'):
        '''

        '''
        pass

    def draw_cursor_add(self):
        '''Undocumented contribute <https://developer.blender.org/T51061> 

        '''
        pass

    def draw_cursor_remove(self):
        '''Undocumented contribute <https://developer.blender.org/T51061> 

        '''
        pass


class WipeSequence:
    '''Sequence strip creating a wipe transition '''

    angle = None
    '''Edge angle 

    :type:  float in [-1.5708, 1.5708], default 0.0 
    '''

    blur_width = None
    '''Width of the blur edge, in percentage relative to the image size 

    :type:  float in [0, 1], default 0.0 
    '''

    direction = None
    '''Wipe direction 

    :type:  enum in [‘OUT’, ‘IN’], default ‘OUT’ 
    '''

    input_1 = None
    '''First input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_2 = None
    '''Second input for the effect strip 

    :type:  Sequence, (never None) 
    '''

    input_count = None
    '''

    :type:  int in [0, inf], default 0, (readonly) 
    '''

    transition_type = None
    '''

    :type:  enum in [‘SINGLE’, ‘DOUBLE’, ‘IRIS’, ‘CLOCK’], default ‘SINGLE’ 
    '''


class WireframeModifier:
    '''Wireframe effect modifier '''

    crease_weight = None
    '''Crease weight (if active) 

    :type:  float in [-inf, inf], default 0.0 
    '''

    invert_vertex_group = None
    '''Invert vertex group influence 

    :type:  boolean, default False 
    '''

    material_offset = None
    '''Offset material index of generated faces 

    :type:  int in [-32768, 32767], default 0 
    '''

    offset = None
    '''Offset the thickness from the center 

    :type:  float in [-inf, inf], default 0.0 
    '''

    thickness = None
    '''Thickness factor 

    :type:  float in [-inf, inf], default 0.0 
    '''

    thickness_vertex_group = None
    '''Thickness factor to use for zero vertex group influence 

    :type:  float in [0, 1], default 0.0 
    '''

    use_boundary = None
    '''Support face boundaries 

    :type:  boolean, default False 
    '''

    use_crease = None
    '''Crease hub edges for improved subsurf 

    :type:  boolean, default False 
    '''

    use_even_offset = None
    '''Scale the offset to give more even thickness 

    :type:  boolean, default False 
    '''

    use_relative_offset = None
    '''Scale the offset by surrounding geometry 

    :type:  boolean, default False 
    '''

    use_replace = None
    '''Remove original geometry 

    :type:  boolean, default False 
    '''

    vertex_group = None
    '''Vertex group name for selecting the affected areas 

    :type:  string, default “”, (never None) 
    '''


class WoodTexture:
    '''Procedural noise texture '''

    nabla = None
    '''Size of derivative offset used for calculating normal 

    :type:  float in [0.001, 0.1], default 0.0 
    '''

    noise_basis = None
    '''Noise basis used for turbulence 

    :type:  enum in [‘BLENDER_ORIGINAL’, ‘ORIGINAL_PERLIN’, ‘IMPROVED_PERLIN’, ‘VORONOI_F1’, ‘VORONOI_F2’, ‘VORONOI_F3’, ‘VORONOI_F4’, ‘VORONOI_F2_F1’, ‘VORONOI_CRACKLE’, ‘CELL_NOISE’], default ‘BLENDER_ORIGINAL’ 
    '''

    noise_basis_2 = None
    '''

    :type:  enum in [‘SIN’, ‘SAW’, ‘TRI’], default ‘SIN’ 
    '''

    noise_scale = None
    '''Scaling for noise input 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    noise_type = None
    '''

    :type:  enum in [‘SOFT_NOISE’, ‘HARD_NOISE’], default ‘SOFT_NOISE’ 
    '''

    turbulence = None
    '''Turbulence of the bandnoise and ringnoise types 

    :type:  float in [0.0001, inf], default 0.0 
    '''

    wood_type = None
    '''

    :type:  enum in [‘BANDS’, ‘RINGS’, ‘BANDNOISE’, ‘RINGNOISE’], default ‘BANDS’ 
    '''

    users_material = None
    '''Materials that use this texture (readonly) '''

    users_object_modifier = None
    '''Object modifiers that use this texture (readonly) '''


class WorkSpace:
    '''Workspace data-block, defining the working environment for the user '''

    object_mode = None
    '''Switch to this object mode when activating the workspace 

    :type:  enum in [‘OBJECT’, ‘EDIT’, ‘POSE’, ‘SCULPT’, ‘VERTEX_PAINT’, ‘WEIGHT_PAINT’, ‘TEXTURE_PAINT’, ‘PARTICLE_EDIT’, ‘EDIT_GPENCIL’, ‘SCULPT_GPENCIL’, ‘PAINT_GPENCIL’, ‘WEIGHT_GPENCIL’], default ‘OBJECT’ 
    '''

    owner_ids = None
    '''

    :type:  wmOwnerIDs bpy_prop_collection of wmOwnerID, (readonly) 
    '''

    screens = None
    '''Screen layouts of a workspace 

    :type:  bpy_prop_collection of Screen, (readonly) 
    '''

    tools = None
    '''

    :type:  wmTools bpy_prop_collection of WorkSpaceTool, (readonly) 
    '''

    tools_mode = None
    '''

    :type:  enum in [‘DEFAULT’], default ‘DEFAULT’, (readonly) 
    '''

    tools_space_type = None
    '''

    :type:  enum in [‘EMPTY’, ‘VIEW_3D’, ‘IMAGE_EDITOR’, ‘NODE_EDITOR’, ‘SEQUENCE_EDITOR’, ‘CLIP_EDITOR’, ‘DOPESHEET_EDITOR’, ‘GRAPH_EDITOR’, ‘NLA_EDITOR’, ‘TEXT_EDITOR’, ‘CONSOLE’, ‘INFO’, ‘TOPBAR’, ‘STATUSBAR’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILE_BROWSER’, ‘PREFERENCES’], default ‘EMPTY’, (readonly) 
    '''

    use_filter_by_owner = None
    '''Filter the UI by tags 

    :type:  boolean, default False 
    '''


class WorkSpaceTool:
    has_datablock = None
    '''

    :type:  boolean, default False, (readonly) 
    '''

    idname = None
    '''

    :type:  string, default “”, (never None) 
    '''

    index = None
    '''

    :type:  int in [-inf, inf], default 0, (readonly) 
    '''

    mode = None
    '''

    :type:  enum in [‘DEFAULT’], default ‘DEFAULT’, (readonly) 
    '''

    space_type = None
    '''

    :type:  enum in [‘EMPTY’, ‘VIEW_3D’, ‘IMAGE_EDITOR’, ‘NODE_EDITOR’, ‘SEQUENCE_EDITOR’, ‘CLIP_EDITOR’, ‘DOPESHEET_EDITOR’, ‘GRAPH_EDITOR’, ‘NLA_EDITOR’, ‘TEXT_EDITOR’, ‘CONSOLE’, ‘INFO’, ‘TOPBAR’, ‘STATUSBAR’, ‘OUTLINER’, ‘PROPERTIES’, ‘FILE_BROWSER’, ‘PREFERENCES’], default ‘EMPTY’, (readonly) 
    '''

    widget = None
    '''

    :type:  string, default “”, (readonly, never None) 
    '''

    def setup(self,
              idname,
              cursor='DEFAULT',
              keymap="",
              gizmo_group="",
              data_block="",
              operator="",
              index=0):
        '''Set the tool settings 

        :param idname: Identifier 
        :type idname: string, (never None)
        :param cursor: cursor 
        :type cursor: enum in ['DEFAULT', 'NONE', 'WAIT', 'CROSSHAIR', 'MOVE_X', 'MOVE_Y', 'KNIFE', 'TEXT', 'PAINT_BRUSH', 'HAND', 'SCROLL_X', 'SCROLL_Y', 'SCROLL_XY', 'EYEDROPPER'], (optional)
        :param keymap: Key Map 
        :type keymap: string, (optional, never None)
        :param gizmo_group: Gizmo Group 
        :type gizmo_group: string, (optional, never None)
        :param data_block: Data Block 
        :type data_block: string, (optional, never None)
        :param operator: Operator 
        :type operator: string, (optional, never None)
        :param index: Index 
        :type index: int in [-inf, inf], (optional)
        '''
        pass

    def operator_properties(self, operator):
        '''operator_properties 

        :rtype: OperatorProperties, (never None) 
        '''
        pass

    def gizmo_group_properties(self, group):
        '''gizmo_group_properties 

        :rtype: GizmoGroupProperties, (never None) 
        '''
        pass

    def refresh_from_context(self):
        '''refresh_from_context 

        '''
        pass


class World:
    '''World data-block describing the environment and ambient lighting of a scene '''

    animation_data = None
    '''Animation data for this data-block 

    :type:  AnimData, (readonly) 
    '''

    color = None
    '''Color of the background 

    :type:  float array of 3 items in [0, inf], default (0.05, 0.05, 0.05) 
    '''

    cycles = None
    '''Cycles world settings 

    :type:  CyclesWorldSettings, (readonly) 
    '''

    cycles_visibility = None
    '''Cycles visibility settings 

    :type:  CyclesVisibilitySettings, (readonly) 
    '''

    light_settings = None
    '''World lighting settings 

    :type:  WorldLighting, (readonly, never None) 
    '''

    mist_settings = None
    '''World mist settings 

    :type:  WorldMistSettings, (readonly, never None) 
    '''

    node_tree = None
    '''Node tree for node based worlds 

    :type:  NodeTree, (readonly) 
    '''

    use_nodes = None
    '''Use shader nodes to render the world 

    :type:  boolean, default False 
    '''


class WorldLighting:
    '''Lighting for a World data-block '''

    ao_factor = None
    '''Factor for ambient occlusion blending 

    :type:  float in [0, inf], default 0.0 
    '''

    distance = None
    '''Length of rays, defines how far away other faces give occlusion effect 

    :type:  float in [-inf, inf], default 0.0 
    '''

    use_ambient_occlusion = None
    '''Use Ambient Occlusion to add shadowing based on distance between objects 

    :type:  boolean, default False 
    '''


class WorldMistSettings:
    '''Mist settings for a World data-block '''

    depth = None
    '''Distance over which the mist effect fades in 

    :type:  float in [0, inf], default 0.0 
    '''

    falloff = None
    '''Type of transition used to fade mist 

    :type:  enum in [‘QUADRATIC’, ‘LINEAR’, ‘INVERSE_QUADRATIC’], default ‘QUADRATIC’ 
    '''

    height = None
    '''Control how much mist density decreases with height 

    :type:  float in [0, 100], default 0.0 
    '''

    intensity = None
    '''Overall minimum intensity of the mist effect 

    :type:  float in [0, 1], default 0.0 
    '''

    start = None
    '''Starting distance of the mist, measured from the camera 

    :type:  float in [0, inf], default 0.0 
    '''

    use_mist = None
    '''Occlude objects with the environment color as they are further away 

    :type:  boolean, default False 
    '''


class bpy_prop_collection:
    '''built-in class used for all collections. '''

    def find(self, key):
        '''Returns the index of a key in a collection or -1 when not found (matches pythons string find function of the same name). 

        :param key: The identifier for the collection member. 
        :type key: string
        :rtype: int 
        :return:  index of the key. 
        '''
        pass

    def foreach_get(self, attr, seq):
        '''Only works for ‘basic type’ properties (bool, int and float)! Multi-dimensional arrays (like array of vectors) will be flattened into seq. 

        '''
        pass

    def foreach_set(self, attr, seq):
        '''Only works for ‘basic type’ properties (bool, int and float)! seq must be uni-dimensional, multi-dimensional arrays (like array of vectors) will be re-created from it. 

        '''
        pass

    def get(self, key, default=None):
        '''Returns the value of the item assigned to key or default when not found (matches pythons dictionary function of the same name). 

        :param key: The identifier for the collection member. 
        :type key: string
        :param default: Optional argument for the value to return if key is not found. 
        :type default: Undefined
        '''
        pass

    def items(self):
        '''Return the identifiers of collection members (matching pythons dict.items() functionality). 

        :rtype: list of tuples 
        :return:  (key, value) pairs for each member of this collection. 
        '''
        pass

    def keys(self):
        '''Return the identifiers of collection members (matching pythons dict.keys() functionality). 

        :rtype: list of strings 
        :return:  the identifiers for each member of this collection. 
        '''
        pass

    def values(self):
        '''Return the values of collection (matching pythons dict.values() functionality). 

        :rtype: list 
        :return:  the members of this collection. 
        '''
        pass


class bpy_struct:
    '''built-in base class for all classes in bpy.types. '''

    id_data = None
    '''The bpy.types.ID object this datablock is from or None, (not available for all data types) '''

    def as_pointer(self):
        '''Returns the memory address which holds a pointer to blenders internal data 

        :rtype: int 
        :return:  int (memory address). 
        '''
        pass

    def driver_add(self, path, index=-1):
        '''Adds driver(s) to the given property 

        :param path: path to the property to drive, analogous to the fcurve’s data path. 
        :type path: string
        :param index: array index of the property drive. Defaults to -1 for all indices or a single channel if the property is not an array. 
        :type index: int
        :rtype: bpy.types.FCurve or list if index is -1 with an array property. 
        :return:  The driver(s) added. 
        '''
        pass

    def driver_remove(self, path, index=-1):
        '''Remove driver(s) from the given property 

        :param path: path to the property to drive, analogous to the fcurve’s data path. 
        :type path: string
        :param index: array index of the property drive. Defaults to -1 for all indices or a single channel if the property is not an array. 
        :type index: int
        :rtype: boolean 
        :return:  Success of driver removal. 
        '''
        pass

    def get(self, key, default=None):
        '''Returns the value of the custom property assigned to key or default when not found (matches pythons dictionary function of the same name). 

        :param key: The key associated with the custom property. 
        :type key: string
        :param default: Optional argument for the value to return if key is not found. 
        :type default: Undefined
        '''
        pass

    def is_property_hidden(self, property):
        '''Check if a property is hidden. 

        :rtype: boolean 
        :return:  True when the property is hidden. 
        '''
        pass

    def is_property_overridable_static(self, property):
        '''Check if a property is statically overridable. 

        :rtype: boolean 
        :return:  True when the property is statically overridable. 
        '''
        pass

    def is_property_readonly(self, property):
        '''Check if a property is readonly. 

        :rtype: boolean 
        :return:  True when the property is readonly (not writable). 
        '''
        pass

    def is_property_set(self, property):
        '''Check if a property is set, use for testing operator properties. 

        :rtype: boolean 
        :return:  True when the property has been set. 
        '''
        pass

    def items(self):
        '''Returns the items of this objects custom properties (matches pythons dictionary function of the same name). 

        :rtype: list of key, value tuples 
        :return:  custom property key, value pairs. 
        '''
        pass

    def keyframe_delete(self,
                        data_path,
                        index=-1,
                        frame=bpy.context.scene.frame_current,
                        group=""):
        '''Remove a keyframe from this properties fcurve. 

        :param data_path: path to the property to remove a key, analogous to the fcurve’s data path. 
        :type data_path: string
        :param index: array index of the property to remove a key. Defaults to -1 removing all indices or a single channel if the property is not an array. 
        :type index: int
        :param frame: The frame on which the keyframe is deleted, defaulting to the current frame. 
        :type frame: float
        :param group: The name of the group the F-Curve should be added to if it doesn’t exist yet. 
        :type group: str
        :rtype: boolean 
        :return:  Success of keyframe deleation. 
        '''
        pass

    def keyframe_insert(self,
                        data_path,
                        index=-1,
                        frame=bpy.context.scene.frame_current,
                        group=""):
        '''Note that when keying data paths which contain nested properties this must be done from the ID subclass, in this case the Armature rather than the bone. 

        :param data_path: path to the property to key, analogous to the fcurve’s data path. 
        :type data_path: string
        :param index: array index of the property to key. Defaults to -1 which will key all indices or a single channel if the property is not an array. 
        :type index: int
        :param frame: The frame on which the keyframe is inserted, defaulting to the current frame. 
        :type frame: float
        :param group: The name of the group the F-Curve should be added to if it doesn’t exist yet. 
        :type group: str
        :param options: Optional flags:INSERTKEY_NEEDED Only insert keyframes where they’re needed in the relevant F-Curves.INSERTKEY_VISUAL Insert keyframes based on ‘visual transforms’.INSERTKEY_XYZ_TO_RGB Color for newly added transformation F-Curves (Location, Rotation, Scale)and also Color is based on the transform axis. 
        :type options: 
        :rtype: boolean 
        :return:  Success of keyframe insertion. 
        '''
        pass

    def keys(self):
        '''Returns the keys of this objects custom properties (matches pythons dictionary function of the same name). 

        :rtype: list of strings 
        :return:  custom property keys. 
        '''
        pass

    def path_from_id(self, property=""):
        '''Returns the data path from the ID to this object (string). 

        :param property: Optional property name which can be used if the path is to a property of this object. 
        :type property: string
        :rtype: str 
        :return:  The path from bpy.types.bpy_struct.id_data to this struct and property (when given). 
        '''
        pass

    def path_resolve(self, path, coerce=True):
        '''Returns the property from the path, raise an exception when not found. 

        :param path: path which this property resolves. 
        :type path: string
        :param coerce: optional argument, when True, the property will be converted into its python representation. 
        :type coerce: boolean
        '''
        pass

    def pop(self, key, default=None):
        '''Remove and return the value of the custom property assigned to key or default when not found (matches pythons dictionary function of the same name). 

        :param key: The key associated with the custom property. 
        :type key: string
        :param default: Optional argument for the value to return if key is not found. 
        :type default: Undefined
        '''
        pass

    def property_overridable_static_set(self, property):
        '''Define a property as statically overridable or not (only for custom properties!). 

        :rtype: boolean 
        :return:  True when the overridable status of the property was successfully set. 
        '''
        pass

    def property_unset(self, property):
        '''Unset a property, will use default value afterward. 

        '''
        pass

    def type_recast(self):
        '''Return a new instance, this is needed because types such as textures can be changed at runtime. 

        :rtype: subclass of bpy.types.bpy_struct 
        :return:  a new instance of this object with the type initialized again. 
        '''
        pass

    def values(self):
        '''Returns the values of this objects custom properties (matches pythons dictionary function of the same name). 

        :rtype: list 
        :return:  custom property values. 
        '''
        pass


class wmOwnerID:
    name = None
    '''

    :type:  string, default “”, (never None) 
    '''


class wmOwnerIDs:
    def new(self, name):
        '''Add ui tag 

        :param name: New name for the tag 
        :type name: string, (never None)
        :rtype: wmOwnerID 
        '''
        pass

    def remove(self, owner_id):
        '''Remove ui tag 

        :param owner_id: Tag to remove 
        :type owner_id: wmOwnerID, (never None)
        '''
        pass

    def clear(self):
        '''Remove all tags 

        '''
        pass


class wmTools:
    def from_space_view3d_mode(self, mode, create=False):
        '''

        :param create: Create 
        :type create: boolean, (optional)
        :rtype: WorkSpaceTool 
        '''
        pass

    def from_space_image_mode(self, mode, create=False):
        '''

        :param mode: VIEW View, View the image.UV UV Editor, UV edit in mesh editmode.PAINT Paint, 2D image painting mode.MASK Mask, Mask editing. 
        :type mode: enum in ['VIEW', 'UV', 'PAINT', 'MASK']
        :param create: Create 
        :type create: boolean, (optional)
        :rtype: WorkSpaceTool 
        '''
        pass

    def from_space_node(self, create=False):
        '''

        :param create: Create 
        :type create: boolean, (optional)
        :rtype: WorkSpaceTool 
        '''
        pass
