user: Give a detailed overview of D: syntax, arguments, return values, common patterns.

assistant: l#bpy.types.GeometryNodeAccumulateField.domain)   - [(bpy.types.GeometryNodeAttributeStatistic attribute)](bpy.types.GeometryNodeAttributeStatistic.html#bpy.types.GeometryNodeAttributeStatistic.domain)   - [(bpy.types.GeometryNodeCaptureAttribute attribute)](bpy.types.GeometryNodeCaptureAttribute.html#bpy.types.GeometryNodeCaptureAttribute.domain)   - [(bpy.types.GeometryNodeDeleteGeometry attribute)](bpy.types.GeometryNodeDeleteGeometry.html#bpy.types.GeometryNodeDeleteGeometry.domain)   - [(bpy.types.GeometryNodeDuplicateElements attribute)](bpy.types.GeometryNodeDuplicateElements.html#bpy.types.GeometryNodeDuplicateElements.domain)   - [(bpy.types.GeometryNodeFieldAtIndex attribute)](bpy.types.GeometryNodeFieldAtIndex.html#bpy.types.GeometryNodeFieldAtIndex.domain)   - [(bpy.types.GeometryNodeFieldAverage attribute)](bpy.types.GeometryNodeFieldAverage.html#bpy.types.GeometryNodeFieldAverage.domain)   - [(bpy.types.GeometryNodeFieldMinAndMax attribute)](bpy.types.GeometryNodeFieldMinAndMax.html#bpy.types.GeometryNodeFieldMinAndMax.domain)   - [(bpy.types.GeometryNodeFieldOnDomain attribute)](bpy.types.GeometryNodeFieldOnDomain.html#bpy.types.GeometryNodeFieldOnDomain.domain)   - [(bpy.types.GeometryNodeFieldVariance attribute)](bpy.types.GeometryNodeFieldVariance.html#bpy.types.GeometryNodeFieldVariance.domain)   - [(bpy.types.GeometryNodeForeachGeometryElementOutput attribute)](bpy.types.GeometryNodeForeachGeometryElementOutput.html#bpy.types.GeometryNodeForeachGeometryElementOutput.domain)   - [(bpy.types.GeometryNodeSampleIndex attribute)](bpy.types.GeometryNodeSampleIndex.html#bpy.types.GeometryNodeSampleIndex.domain)   - [(bpy.types.GeometryNodeSampleNearest attribute)](bpy.types.GeometryNodeSampleNearest.html#bpy.types.GeometryNodeSampleNearest.domain)   - [(bpy.types.GeometryNodeScaleElements attribute)](bpy.types.GeometryNodeScaleElements.html#bpy.types.GeometryNodeScaleElements.domain)   - [(bpy.types.GeometryNodeSeparateGeometry attribute)](bpy.types.GeometryNodeSeparateGeometry.html#bpy.types.GeometryNodeSeparateGeometry.domain)   - [(bpy.types.GeometryNodeSetMeshNormal attribute)](bpy.types.GeometryNodeSetMeshNormal.html#bpy.types.GeometryNodeSetMeshNormal.domain)   - [(bpy.types.GeometryNodeSetShadeSmooth attribute)](bpy.types.GeometryNodeSetShadeSmooth.html#bpy.types.GeometryNodeSetShadeSmooth.domain)   - [(bpy.types.GeometryNodeSortElements attribute)](bpy.types.GeometryNodeSortElements.html#bpy.types.GeometryNodeSortElements.domain)   - [(bpy.types.GeometryNodeSplitToInstances attribute)](bpy.types.GeometryNodeSplitToInstances.html#bpy.types.GeometryNodeSplitToInstances.domain)   - [(bpy.types.GeometryNodeStoreNamedAttribute attribute)](bpy.types.GeometryNodeStoreNamedAttribute.html#bpy.types.GeometryNodeStoreNamedAttribute.domain)   - [(bpy.types.GeometryNodeToolActiveElement attribute)](bpy.types.GeometryNodeToolActiveElement.html#bpy.types.GeometryNodeToolActiveElement.domain)   - [(bpy.types.GeometryNodeToolSetSelection attribute)](bpy.types.GeometryNodeToolSetSelection.html#bpy.types.GeometryNodeToolSetSelection.domain)   - [(bpy.types.GeometryNodeViewer attribute)](bpy.types.GeometryNodeViewer.html#bpy.types.GeometryNodeViewer.domain) - [domain_size() (bpy.types.AttributeGroupCurves method)](bpy.types.AttributeGroupCurves.html#bpy.types.AttributeGroupCurves.domain_size)   - [(bpy.types.AttributeGroupGreasePencil method)](bpy.types.AttributeGroupGreasePencil.html#bpy.types.AttributeGroupGreasePencil.domain_size)   - [(bpy.types.AttributeGroupGreasePencilDrawing method)](bpy.types.AttributeGroupGreasePencilDrawing.html#bpy.types.AttributeGroupGreasePencilDrawing.domain_size)   - [(bpy.types.AttributeGroupMesh method)](bpy.types.AttributeGroupMesh.html#bpy.types.AttributeGroupMesh.domain_size)   - [(bpy.types.AttributeGroupPointCloud method)](bpy.types.AttributeGroupPointCloud.html#bpy.types.AttributeGroupPointCloud.domain_size) - [domain_type (bpy.types.FluidDomainSettings attribute)](bpy.types.FluidDomainSettings.html#bpy.types.FluidDomainSettings.domain_type) - [DopeSheet (class in bpy.types)](bpy.types.DopeSheet.html#bpy.types.DopeSheet) - [DopeSheet.source (in module bpy.types)](bpy.types.DopeSheet.html#bpy.types.DopeSheet.source) - [dopesheet_select_channel() (in module bpy.ops.clip)](bpy.ops.clip.html#bpy.ops.clip.dopesheet_select_channel) - [dopesheet_view_all() (in module bpy.ops.clip)](bpy.ops.clip.html#bpy.ops.clip.dopesheet_view_all) - [doppler_factor (aud.aud.Device attribute)](aud.html#aud.aud.Device.doppler_factor)   - [(aud.aud.Sequence attribute)](aud.html#aud.aud.Sequence.doppler_factor) - [dot() (mathutils.Quaternion method)](mathutils.html#mathutils.Quaternion.dot)   - [(mathutils.Vector method)](mathutils.html#mathutils.Vector.dot) - [double (bpy.types.PropertyGroupItem attribute)](bpy.types.PropertyGroupItem.html#bpy.types.PropertyGroupItem.double) - [double_array (bpy.types.PropertyGroupItem attribute)](bpy.types.PropertyGroupItem.html#bpy.types.PropertyGroupItem.double_array) - [double_threshold (bpy.types.BooleanModifier attribute)](bpy.types.BooleanModifier.html#bpy.types.BooleanModifier.double_threshold)   - [(bpy.types.ToolSettings attribute)](bpy.types.ToolSettings.html#bpy.types.ToolSettings.double_threshold) - [drag (bpy.types.EffectorWeights attribute)](bpy.types.EffectorWeights.html#bpy.types.EffectorWeights.drag) - [drag_factor (bpy.types.ParticleSettings attribute)](bpy.types.ParticleSettings.html#bpy.types.ParticleSettings.drag_factor) - [drag_threshold (bpy.types.PreferencesInput attribute)](bpy.types.PreferencesInput.html#bpy.types.PreferencesInput.drag_threshold) - [drag_threshold_mouse (bpy.types.PreferencesInput attribute)](bpy.types.PreferencesInput.html#bpy.types.PreferencesInput.drag_threshold_mouse) - [drag_threshold_tablet (bpy.types.PreferencesInput attribute)](bpy.types.PreferencesInput.html#bpy.types.PreferencesInput.drag_threshold_tablet) - [draw() (bpy.types.Gizmo method)](bpy.types.Gizmo.html#bpy.types.Gizmo.draw)   - [(bpy.types.Header method)](bpy.types.Header.html#bpy.types.Header.draw)   - [(bpy.types.Macro method)](bpy.types.Macro.html#bpy.types.Macro.draw)   - [(bpy.types.Menu method)](bpy.types.Menu.html#bpy.types.Menu.draw)   - [(bpy.types.NodeSocket method)](bpy.types.NodeSocket.html#bpy.types.NodeSocket.draw)   - [(bpy.types.NodeSocketStandard method)](bpy.types.NodeSocketStandard.html#bpy.types.NodeSocketStandard.draw)   - [(bpy.types.NodeTreeInterfaceSocket method)](bpy.types.NodeTreeInterfaceSocket.html#bpy.types.NodeTreeInterfaceSocket.draw)   - [(bpy.types.NodeTreeInterfaceSocketBool method)](bpy.types.NodeTreeInterfaceSocketBool.html#bpy.types.NodeTreeInterfaceSocketBool.draw)   - [(bpy.types.NodeTreeInterfaceSocketBundle method)](bpy.types.NodeTreeInterfaceSocketBundle.html#bpy.types.NodeTreeInterfaceSocketBundle.draw)   - [(bpy.types.NodeTreeInterfaceSocketClosure method)](bpy.types.NodeTreeInterfaceSocketClosure.html#bpy.types.NodeTreeInterfaceSocketClosure.draw)   - [(bpy.types.NodeTreeInterfaceSocketCollection method)](bpy.types.NodeTreeInterfaceSocketCollection.html#bpy.types.NodeTreeInterfaceSocketCollection.draw)   - [(bpy.types.NodeTreeInterfaceSocketColor method)](bpy.types.NodeTreeInterfaceSocketColor.html#bpy.types.NodeTreeInterfaceSocketColor.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloat method)](bpy.types.NodeTreeInterfaceSocketFloat.html#bpy.types.NodeTreeInterfaceSocketFloat.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatAngle method)](bpy.types.NodeTreeInterfaceSocketFloatAngle.html#bpy.types.NodeTreeInterfaceSocketFloatAngle.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatColorTemperature method)](bpy.types.NodeTreeInterfaceSocketFloatColorTemperature.html#bpy.types.NodeTreeInterfaceSocketFloatColorTemperature.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatDistance method)](bpy.types.NodeTreeInterfaceSocketFloatDistance.html#bpy.types.NodeTreeInterfaceSocketFloatDistance.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatFactor method)](bpy.types.NodeTreeInterfaceSocketFloatFactor.html#bpy.types.NodeTreeInterfaceSocketFloatFactor.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatFrequency method)](bpy.types.NodeTreeInterfaceSocketFloatFrequency.html#bpy.types.NodeTreeInterfaceSocketFloatFrequency.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatPercentage method)](bpy.types.NodeTreeInterfaceSocketFloatPercentage.html#bpy.types.NodeTreeInterfaceSocketFloatPercentage.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatTime method)](bpy.types.NodeTreeInterfaceSocketFloatTime.html#bpy.types.NodeTreeInterfaceSocketFloatTime.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatTimeAbsolute method)](bpy.types.NodeTreeInterfaceSocketFloatTimeAbsolute.html#bpy.types.NodeTreeInterfaceSocketFloatTimeAbsolute.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatUnsigned method)](bpy.types.NodeTreeInterfaceSocketFloatUnsigned.html#bpy.types.NodeTreeInterfaceSocketFloatUnsigned.draw)   - [(bpy.types.NodeTreeInterfaceSocketFloatWavelength method)](bpy.types.NodeTreeInterfaceSocketFloatWavelength.html#bpy.types.NodeTreeInterfaceSocketFloatWavelength.draw)   - [(bpy.types.NodeTreeInterfaceSocketGeometry method)](bpy.types.NodeTreeInterfaceSocketGeometry.html#bpy.types.NodeTreeInterfaceSocketGeometry.draw)   - [(bpy.types.NodeTreeInterfaceSocketImage method)](bpy.types.NodeTreeInterfaceSocketImage.html#bpy.types.NodeTreeInterfaceSocketImage.draw)   - [(bpy.types.NodeTreeInterfaceSocketInt method)](bpy.types.NodeTreeInterfaceSocketInt.html#bpy.types.NodeTreeInterfaceSocketInt.draw)   - [(bpy.types.NodeTreeInterfaceSocketIntFactor method)](bpy.types.NodeTreeInterfaceSocketIntFactor.html#bpy.types.NodeTreeInterfaceSocketIntFactor.draw)   - [(bpy.types.NodeTreeInterfaceSocketIntPercentage method)](bpy.types.NodeTreeInterfaceSocketIntPercentage.html#bpy.types.NodeTreeInterfaceSocketIntPercentage.draw)   - [(bpy.types.NodeTreeInterfaceSocketIntUnsigned method)](bpy.types.NodeTreeInterfaceSocketIntUnsigned.html#bpy.types.NodeTreeInterfaceSocketIntUnsigned.draw)   - [(bpy.types.NodeTreeInterfaceSocketMaterial method)](bpy.types.NodeTreeInterfaceSocketMaterial.html#bpy.types.NodeTreeInterfaceSocketMaterial.draw)   - [(bpy.types.NodeTreeInterfaceSocketMatrix method)](bpy.types.NodeTreeInterfaceSocketMatrix.html#bpy.types.NodeTreeInterfaceSocketMatrix.draw)   - [(bpy.types.NodeTreeInterfaceSocketMenu method)](bpy.types.NodeTreeInterfaceSocketMenu.html#bpy.types.NodeTreeInterfaceSocketMenu.draw)   - [(bpy.types.NodeTreeInterfaceSocketObject method)](bpy.types.NodeTreeInterfaceSocketObject.html#bpy.types.NodeTreeInterfaceSocketObject.draw)   - [(bpy.types.NodeTreeInterfaceSocketRotation method)](bpy.types.NodeTreeInterfaceSocketRotation.html#bpy.types.NodeTreeInterfaceSocketRotation.draw)   - [(bpy.types.NodeTreeInterfaceSocketShader method)](bpy.types.NodeTreeInterfaceSocketShader.html#bpy.types.NodeTreeInterfaceSocketShader.draw)   - [(bpy.types.NodeTreeInterfaceSocketString method)](bpy.types.NodeTreeInterfaceSocketString.html#bpy.types.NodeTreeInterfaceSocketString.draw)   - [(bpy.types.NodeTreeInterfaceSocketStringFilePath method)](bpy.types.NodeTreeInterfaceSocketStringFilePath.html#bpy.types.NodeTreeInterfaceSocketStringFilePath.draw)   - [(bpy.types.NodeTreeInterfaceSocketTexture method)](bpy.types.NodeTreeInterfaceSocketTexture.html#bpy.types.NodeTreeInterfaceSocketTexture.draw)   - [(bpy.types.NodeTreeInterfaceSocketVector method)](bpy.types.NodeTreeInterfaceSocketVector.html#bpy.types.NodeTreeInterfaceSocketVector.draw)   - [(bpy.types.NodeTreeInterfaceSocketVector2D method)](bpy.types.NodeTreeInterfaceSocketVector2D.html#bpy.types.NodeTreeInterfaceSocketVector2D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVector4D method)](bpy.types.NodeTreeInterfaceSocketVector4D.html#bpy.types.NodeTreeInterfaceSocketVector4D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorAcceleration method)](bpy.types.NodeTreeInterfaceSocketVectorAcceleration.html#bpy.types.NodeTreeInterfaceSocketVectorAcceleration.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorAcceleration2D method)](bpy.types.NodeTreeInterfaceSocketVectorAcceleration2D.html#bpy.types.NodeTreeInterfaceSocketVectorAcceleration2D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorAcceleration4D method)](bpy.types.NodeTreeInterfaceSocketVectorAcceleration4D.html#bpy.types.NodeTreeInterfaceSocketVectorAcceleration4D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorDirection method)](bpy.types.NodeTreeInterfaceSocketVectorDirection.html#bpy.types.NodeTreeInterfaceSocketVectorDirection.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorDirection2D method)](bpy.types.NodeTreeInterfaceSocketVectorDirection2D.html#bpy.types.NodeTreeInterfaceSocketVectorDirection2D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorDirection4D method)](bpy.types.NodeTreeInterfaceSocketVectorDirection4D.html#bpy.types.NodeTreeInterfaceSocketVectorDirection4D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorEuler method)](bpy.types.NodeTreeInterfaceSocketVectorEuler.html#bpy.types.NodeTreeInterfaceSocketVectorEuler.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorEuler2D method)](bpy.types.NodeTreeInterfaceSocketVectorEuler2D.html#bpy.types.NodeTreeInterfaceSocketVectorEuler2D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorEuler4D method)](bpy.types.NodeTreeInterfaceSocketVectorEuler4D.html#bpy.types.NodeTreeInterfaceSocketVectorEuler4D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorFactor method)](bpy.types.NodeTreeInterfaceSocketVectorFactor.html#bpy.types.NodeTreeInterfaceSocketVectorFactor.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorFactor2D method)](bpy.types.NodeTreeInterfaceSocketVectorFactor2D.html#bpy.types.NodeTreeInterfaceSocketVectorFactor2D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorFactor4D method)](bpy.types.NodeTreeInterfaceSocketVectorFactor4D.html#bpy.types.NodeTreeInterfaceSocketVectorFactor4D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorPercentage method)](bpy.types.NodeTreeInterfaceSocketVectorPercentage.html#bpy.types.NodeTreeInterfaceSocketVectorPercentage.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorPercentage2D method)](bpy.types.NodeTreeInterfaceSocketVectorPercentage2D.html#bpy.types.NodeTreeInterfaceSocketVectorPercentage2D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorPercentage4D method)](bpy.types.NodeTreeInterfaceSocketVectorPercentage4D.html#bpy.types.NodeTreeInterfaceSocketVectorPercentage4D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorTranslation method)](bpy.types.NodeTreeInterfaceSocketVectorTranslation.html#bpy.types.NodeTreeInterfaceSocketVectorTranslation.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorTranslation2D method)](bpy.types.NodeTreeInterfaceSocketVectorTranslation2D.html#bpy.types.NodeTreeInterfaceSocketVectorTranslation2D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorTranslation4D method)](bpy.types.NodeTreeInterfaceSocketVectorTranslation4D.html#bpy.types.NodeTreeInterfaceSocketVectorTranslation4D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorVelocity method)](bpy.types.NodeTreeInterfaceSocketVectorVelocity.html#bpy.types.NodeTreeInterfaceSocketVectorVelocity.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorVelocity2D method)](bpy.types.NodeTreeInterfaceSocketVectorVelocity2D.html#bpy.types.NodeTreeInterfaceSocketVectorVelocity2D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorVelocity4D method)](bpy.types.NodeTreeInterfaceSocketVectorVelocity4D.html#bpy.types.NodeTreeInterfaceSocketVectorVelocity4D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorXYZ method)](bpy.types.NodeTreeInterfaceSocketVectorXYZ.html#bpy.types.NodeTreeInterfaceSocketVectorXYZ.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorXYZ2D method)](bpy.types.NodeTreeInterfaceSocketVectorXYZ2D.html#bpy.types.NodeTreeInterfaceSocketVectorXYZ2D.draw)   - [(bpy.types.NodeTreeInterfaceSocketVectorXYZ4D method)](bpy.types.NodeTreeInterfaceSocketVectorXYZ4D.html#bpy.types.NodeTreeInterfaceSocketVectorXYZ4D.draw)   - [(bpy.types.Operator method)](bpy.types.Operator.html#bpy.types.Operator.draw)   - [(bpy.types.Panel method)](bpy.types.Panel.html#bpy.types.Panel.draw)   - [(bpy.types.RenderEngine method)](bpy.types.RenderEngine.html#bpy.types.RenderEngine.draw)   - [(gpu.types.GPUBatch method)](gpu.types.html#gpu.types.GPUBatch.draw)   - [(in module blf)](blf.html#blf.draw)   - [(in module bpy.ops.curve)](bpy.ops.curve.html#bpy.ops.curve.draw)   - [(in module bpy.ops.curves)](bpy.ops.curves.html#bpy.ops.curves.draw)   - [(in module bpy.ops.paintcurve)](bpy.ops.paintcurve.html#bpy.ops.paintcurve.draw) - [draw_buffer() (in module blf)](blf.html#blf.draw_buffer) - [draw_buttons() (bpy.types.Node method)](bpy.types.Node.html#bpy.types.Node.draw_buttons)   - [(bpy.types.NodeInternal method)](bpy.types.NodeInternal.html#bpy.types.NodeInternal.draw_buttons) - [draw_buttons_ext() (bpy.types.Node method)](bpy.types.Node.html#bpy.types.Node.draw_buttons_ext)   - [(bpy.types.NodeInternal method)](bpy.types.NodeInternal.html#bpy.types.NodeInternal.draw_buttons_ext) - [draw_circle_2d() (in module gpu_extras.presets)](gpu_extras.presets.html#gpu_extras.presets.draw_circle_2d) - [draw_collapsible() (bpy.types.Menu class method)](bpy.types.Menu.html#bpy.types.Menu.draw_collapsible) - [draw_color() (bpy.types.NodeSocket method)](bpy.types.NodeSocket.html#bpy.types.NodeSocket.draw_color)   - [(bpy.types.NodeSocketStandard method)](bpy.types.NodeSocketStandard.html#bpy.types.NodeSocketStandard.draw_color) - [draw_color_simple() (bpy.types.NodeSocket class method)](bpy.types.NodeSocket.html#bpy.types.NodeSocket.draw_color_simple)   - [(bpy.types.NodeSocketStandard class method)](bpy.types.NodeSocketStandard.html#bpy.types.NodeSocketStandard.draw_color_simple) - [draw_context_menu() (bpy.types.AssetShelf class method)](bpy.types.AssetShelf.html#bpy.types.AssetShelf.draw_context_menu) - [draw_cursor_add() (bpy.types.WindowManager class method)](bpy.types.WindowManager.html#bpy.types.Wi