user: Describe O from the Blender manual or Python API, including usage steps and snippets.

assistant: .types.GeometryNodeGridGradient.html#bpy.types.GeometryNodeGridGradient.output_template)   - [(bpy.types.GeometryNodeGridInfo class method)](bpy.types.GeometryNodeGridInfo.html#bpy.types.GeometryNodeGridInfo.output_template)   - [(bpy.types.GeometryNodeGridLaplacian class method)](bpy.types.GeometryNodeGridLaplacian.html#bpy.types.GeometryNodeGridLaplacian.output_template)   - [(bpy.types.GeometryNodeGridPrune class method)](bpy.types.GeometryNodeGridPrune.html#bpy.types.GeometryNodeGridPrune.output_template)   - [(bpy.types.GeometryNodeGridToMesh class method)](bpy.types.GeometryNodeGridToMesh.html#bpy.types.GeometryNodeGridToMesh.output_template)   - [(bpy.types.GeometryNodeGridVoxelize class method)](bpy.types.GeometryNodeGridVoxelize.html#bpy.types.GeometryNodeGridVoxelize.output_template)   - [(bpy.types.GeometryNodeGroup class method)](bpy.types.GeometryNodeGroup.html#bpy.types.GeometryNodeGroup.output_template)   - [(bpy.types.GeometryNodeImageInfo class method)](bpy.types.GeometryNodeImageInfo.html#bpy.types.GeometryNodeImageInfo.output_template)   - [(bpy.types.GeometryNodeImageTexture class method)](bpy.types.GeometryNodeImageTexture.html#bpy.types.GeometryNodeImageTexture.output_template)   - [(bpy.types.GeometryNodeImportCSV class method)](bpy.types.GeometryNodeImportCSV.html#bpy.types.GeometryNodeImportCSV.output_template)   - [(bpy.types.GeometryNodeImportOBJ class method)](bpy.types.GeometryNodeImportOBJ.html#bpy.types.GeometryNodeImportOBJ.output_template)   - [(bpy.types.GeometryNodeImportPLY class method)](bpy.types.GeometryNodeImportPLY.html#bpy.types.GeometryNodeImportPLY.output_template)   - [(bpy.types.GeometryNodeImportSTL class method)](bpy.types.GeometryNodeImportSTL.html#bpy.types.GeometryNodeImportSTL.output_template)   - [(bpy.types.GeometryNodeImportText class method)](bpy.types.GeometryNodeImportText.html#bpy.types.GeometryNodeImportText.output_template)   - [(bpy.types.GeometryNodeImportVDB class method)](bpy.types.GeometryNodeImportVDB.html#bpy.types.GeometryNodeImportVDB.output_template)   - [(bpy.types.GeometryNodeIndexOfNearest class method)](bpy.types.GeometryNodeIndexOfNearest.html#bpy.types.GeometryNodeIndexOfNearest.output_template)   - [(bpy.types.GeometryNodeIndexSwitch class method)](bpy.types.GeometryNodeIndexSwitch.html#bpy.types.GeometryNodeIndexSwitch.output_template)   - [(bpy.types.GeometryNodeInputActiveCamera class method)](bpy.types.GeometryNodeInputActiveCamera.html#bpy.types.GeometryNodeInputActiveCamera.output_template)   - [(bpy.types.GeometryNodeInputCollection class method)](bpy.types.GeometryNodeInputCollection.html#bpy.types.GeometryNodeInputCollection.output_template)   - [(bpy.types.GeometryNodeInputCurveHandlePositions class method)](bpy.types.GeometryNodeInputCurveHandlePositions.html#bpy.types.GeometryNodeInputCurveHandlePositions.output_template)   - [(bpy.types.GeometryNodeInputCurveTilt class method)](bpy.types.GeometryNodeInputCurveTilt.html#bpy.types.GeometryNodeInputCurveTilt.output_template)   - [(bpy.types.GeometryNodeInputEdgeSmooth class method)](bpy.types.GeometryNodeInputEdgeSmooth.html#bpy.types.GeometryNodeInputEdgeSmooth.output_template)   - [(bpy.types.GeometryNodeInputID class method)](bpy.types.GeometryNodeInputID.html#bpy.types.GeometryNodeInputID.output_template)   - [(bpy.types.GeometryNodeInputImage class method)](bpy.types.GeometryNodeInputImage.html#bpy.types.GeometryNodeInputImage.output_template)   - [(bpy.types.GeometryNodeInputIndex class method)](bpy.types.GeometryNodeInputIndex.html#bpy.types.GeometryNodeInputIndex.output_template)   - [(bpy.types.GeometryNodeInputInstanceBounds class method)](bpy.types.GeometryNodeInputInstanceBounds.html#bpy.types.GeometryNodeInputInstanceBounds.output_template)   - [(bpy.types.GeometryNodeInputInstanceRotation class method)](bpy.types.GeometryNodeInputInstanceRotation.html#bpy.types.GeometryNodeInputInstanceRotation.output_template)   - [(bpy.types.GeometryNodeInputInstanceScale class method)](bpy.types.GeometryNodeInputInstanceScale.html#bpy.types.GeometryNodeInputInstanceScale.output_template)   - [(bpy.types.GeometryNodeInputMaterial class method)](bpy.types.GeometryNodeInputMaterial.html#bpy.types.GeometryNodeInputMaterial.output_template)   - [(bpy.types.GeometryNodeInputMaterialIndex class method)](bpy.types.GeometryNodeInputMaterialIndex.html#bpy.types.GeometryNodeInputMaterialIndex.output_template)   - [(bpy.types.GeometryNodeInputMeshEdgeAngle class method)](bpy.types.GeometryNodeInputMeshEdgeAngle.html#bpy.types.GeometryNodeInputMeshEdgeAngle.output_template)   - [(bpy.types.GeometryNodeInputMeshEdgeNeighbors class method)](bpy.types.GeometryNodeInputMeshEdgeNeighbors.html#bpy.types.GeometryNodeInputMeshEdgeNeighbors.output_template)   - [(bpy.types.GeometryNodeInputMeshEdgeVertices class method)](bpy.types.GeometryNodeInputMeshEdgeVertices.html#bpy.types.GeometryNodeInputMeshEdgeVertices.output_template)   - [(bpy.types.GeometryNodeInputMeshFaceArea class method)](bpy.types.GeometryNodeInputMeshFaceArea.html#bpy.types.GeometryNodeInputMeshFaceArea.output_template)   - [(bpy.types.GeometryNodeInputMeshFaceIsPlanar class method)](bpy.types.GeometryNodeInputMeshFaceIsPlanar.html#bpy.types.GeometryNodeInputMeshFaceIsPlanar.output_template)   - [(bpy.types.GeometryNodeInputMeshFaceNeighbors class method)](bpy.types.GeometryNodeInputMeshFaceNeighbors.html#bpy.types.GeometryNodeInputMeshFaceNeighbors.output_template)   - [(bpy.types.GeometryNodeInputMeshIsland class method)](bpy.types.GeometryNodeInputMeshIsland.html#bpy.types.GeometryNodeInputMeshIsland.output_template)   - [(bpy.types.GeometryNodeInputMeshVertexNeighbors class method)](bpy.types.GeometryNodeInputMeshVertexNeighbors.html#bpy.types.GeometryNodeInputMeshVertexNeighbors.output_template)   - [(bpy.types.GeometryNodeInputNamedAttribute class method)](bpy.types.GeometryNodeInputNamedAttribute.html#bpy.types.GeometryNodeInputNamedAttribute.output_template)   - [(bpy.types.GeometryNodeInputNamedLayerSelection class method)](bpy.types.GeometryNodeInputNamedLayerSelection.html#bpy.types.GeometryNodeInputNamedLayerSelection.output_template)   - [(bpy.types.GeometryNodeInputNormal class method)](bpy.types.GeometryNodeInputNormal.html#bpy.types.GeometryNodeInputNormal.output_template)   - [(bpy.types.GeometryNodeInputObject class method)](bpy.types.GeometryNodeInputObject.html#bpy.types.GeometryNodeInputObject.output_template)   - [(bpy.types.GeometryNodeInputPosition class method)](bpy.types.GeometryNodeInputPosition.html#bpy.types.GeometryNodeInputPosition.output_template)   - [(bpy.types.GeometryNodeInputRadius class method)](bpy.types.GeometryNodeInputRadius.html#bpy.types.GeometryNodeInputRadius.output_template)   - [(bpy.types.GeometryNodeInputSceneTime class method)](bpy.types.GeometryNodeInputSceneTime.html#bpy.types.GeometryNodeInputSceneTime.output_template)   - [(bpy.types.GeometryNodeInputShadeSmooth class method)](bpy.types.GeometryNodeInputShadeSmooth.html#bpy.types.GeometryNodeInputShadeSmooth.output_template)   - [(bpy.types.GeometryNodeInputShortestEdgePaths class method)](bpy.types.GeometryNodeInputShortestEdgePaths.html#bpy.types.GeometryNodeInputShortestEdgePaths.output_template)   - [(bpy.types.GeometryNodeInputSplineCyclic class method)](bpy.types.GeometryNodeInputSplineCyclic.html#bpy.types.GeometryNodeInputSplineCyclic.output_template)   - [(bpy.types.GeometryNodeInputSplineResolution class method)](bpy.types.GeometryNodeInputSplineResolution.html#bpy.types.GeometryNodeInputSplineResolution.output_template)   - [(bpy.types.GeometryNodeInputTangent class method)](bpy.types.GeometryNodeInputTangent.html#bpy.types.GeometryNodeInputTangent.output_template)   - [(bpy.types.GeometryNodeInputVoxelIndex class method)](bpy.types.GeometryNodeInputVoxelIndex.html#bpy.types.GeometryNodeInputVoxelIndex.output_template)   - [(bpy.types.GeometryNodeInstanceOnPoints class method)](bpy.types.GeometryNodeInstanceOnPoints.html#bpy.types.GeometryNodeInstanceOnPoints.output_template)   - [(bpy.types.GeometryNodeInstancesToPoints class method)](bpy.types.GeometryNodeInstancesToPoints.html#bpy.types.GeometryNodeInstancesToPoints.output_template)   - [(bpy.types.GeometryNodeInstanceTransform class method)](bpy.types.GeometryNodeInstanceTransform.html#bpy.types.GeometryNodeInstanceTransform.output_template)   - [(bpy.types.GeometryNodeInterpolateCurves class method)](bpy.types.GeometryNodeInterpolateCurves.html#bpy.types.GeometryNodeInterpolateCurves.output_template)   - [(bpy.types.GeometryNodeIsViewport class method)](bpy.types.GeometryNodeIsViewport.html#bpy.types.GeometryNodeIsViewport.output_template)   - [(bpy.types.GeometryNodeJoinGeometry class method)](bpy.types.GeometryNodeJoinGeometry.html#bpy.types.GeometryNodeJoinGeometry.output_template)   - [(bpy.types.GeometryNodeList class method)](bpy.types.GeometryNodeList.html#bpy.types.GeometryNodeList.output_template)   - [(bpy.types.GeometryNodeListGetItem class method)](bpy.types.GeometryNodeListGetItem.html#bpy.types.GeometryNodeListGetItem.output_template)   - [(bpy.types.GeometryNodeListLength class method)](bpy.types.GeometryNodeListLength.html#bpy.types.GeometryNodeListLength.output_template)   - [(bpy.types.GeometryNodeMaterialSelection class method)](bpy.types.GeometryNodeMaterialSelection.html#bpy.types.GeometryNodeMaterialSelection.output_template)   - [(bpy.types.GeometryNodeMenuSwitch class method)](bpy.types.GeometryNodeMenuSwitch.html#bpy.types.GeometryNodeMenuSwitch.output_template)   - [(bpy.types.GeometryNodeMergeByDistance class method)](bpy.types.GeometryNodeMergeByDistance.html#bpy.types.GeometryNodeMergeByDistance.output_template)   - [(bpy.types.GeometryNodeMergeLayers class method)](bpy.types.GeometryNodeMergeLayers.html#bpy.types.GeometryNodeMergeLayers.output_template)   - [(bpy.types.GeometryNodeMeshBoolean class method)](bpy.types.GeometryNodeMeshBoolean.html#bpy.types.GeometryNodeMeshBoolean.output_template)   - [(bpy.types.GeometryNodeMeshCircle class method)](bpy.types.GeometryNodeMeshCircle.html#bpy.types.GeometryNodeMeshCircle.output_template)   - [(bpy.types.GeometryNodeMeshCone class method)](bpy.types.GeometryNodeMeshCone.html#bpy.types.GeometryNodeMeshCone.output_template)   - [(bpy.types.GeometryNodeMeshCube class method)](bpy.types.GeometryNodeMeshCube.html#bpy.types.GeometryNodeMeshCube.output_template)   - [(bpy.types.GeometryNodeMeshCylinder class method)](bpy.types.GeometryNodeMeshCylinder.html#bpy.types.GeometryNodeMeshCylinder.output_template)   - [(bpy.types.GeometryNodeMeshFaceSetBoundaries class method)](bpy.types.GeometryNodeMeshFaceSetBoundaries.html#bpy.types.GeometryNodeMeshFaceSetBoundaries.output_template)   - [(bpy.types.GeometryNodeMeshGrid class method)](bpy.types.GeometryNodeMeshGrid.html#bpy.types.GeometryNodeMeshGrid.output_template)   - [(bpy.types.GeometryNodeMeshIcoSphere class method)](bpy.types.GeometryNodeMeshIcoSphere.html#bpy.types.GeometryNodeMeshIcoSphere.output_template)   - [(bpy.types.GeometryNodeMeshLine class method)](bpy.types.GeometryNodeMeshLine.html#bpy.types.GeometryNodeMeshLine.output_template)   - [(bpy.types.GeometryNodeMeshToCurve class method)](bpy.types.GeometryNodeMeshToCurve.html#bpy.types.GeometryNodeMeshToCurve.output_template)   - [(bpy.types.GeometryNodeMeshToDensityGrid class method)](bpy.types.GeometryNodeMeshToDensityGrid.html#bpy.types.GeometryNodeMeshToDensityGrid.output_template)   - [(bpy.types.GeometryNodeMeshToPoints class method)](bpy.types.GeometryNodeMeshToPoints.html#bpy.types.GeometryNodeMeshToPoints.output_template)   - [(bpy.types.GeometryNodeMeshToSDFGrid class method)](bpy.types.GeometryNodeMeshToSDFGrid.html#bpy.types.GeometryNodeMeshToSDFGrid.output_template)   - [(bpy.types.GeometryNodeMeshToVolume class method)](bpy.types.GeometryNodeMeshToVolume.html#bpy.types.GeometryNodeMeshToVolume.output_template)   - [(bpy.types.GeometryNodeMeshUVSphere class method)](bpy.types.GeometryNodeMeshUVSphere.html#bpy.types.GeometryNodeMeshUVSphere.output_template)   - [(bpy.types.GeometryNodeObjectInfo class method)](bpy.types.GeometryNodeObjectInfo.html#bpy.types.GeometryNodeObjectInfo.output_template)   - [(bpy.types.GeometryNodeOffsetCornerInFace class method)](bpy.types.GeometryNodeOffsetCornerInFace.html#bpy.types.GeometryNodeOffsetCornerInFace.output_template)   - [(bpy.types.GeometryNodeOffsetPointInCurve class method)](bpy.types.GeometryNodeOffsetPointInCurve.html#bpy.types.GeometryNodeOffsetPointInCurve.output_template)   - [(bpy.types.GeometryNodePoints class method)](bpy.types.GeometryNodePoints.html#bpy.types.GeometryNodePoints.output_template)   - [(bpy.types.GeometryNodePointsOfCurve class method)](bpy.types.GeometryNodePointsOfCurve.html#bpy.types.GeometryNodePointsOfCurve.output_template)   - [(bpy.types.GeometryNodePointsToCurves class method)](bpy.types.GeometryNodePointsToCurves.html#bpy.types.GeometryNodePointsToCurves.output_template)   - [(bpy.types.GeometryNodePointsToSDFGrid class method)](bpy.types.GeometryNodePointsToSDFGrid.html#bpy.types.GeometryNodePointsToSDFGrid.output_template)   - [(bpy.types.GeometryNodePointsToVertices class method)](bpy.types.GeometryNodePointsToVertices.html#bpy.types.GeometryNodePointsToVertices.output_template)   - [(bpy.types.GeometryNodePointsToVolume class method)](bpy.types.GeometryNodePointsToVolume.html#bpy.types.GeometryNodePointsToVolume.output_template)   - [(bpy.types.GeometryNodeProximity class method)](bpy.types.GeometryNodeProximity.html#bpy.types.GeometryNodeProximity.output_template)   - [(bpy.types.GeometryNodeRaycast class method)](bpy.types.GeometryNodeRaycast.html#bpy.types.GeometryNodeRaycast.output_template)   - [(bpy.types.GeometryNodeRealizeInstances class method)](bpy.types.GeometryNodeRealizeInstances.html#bpy.types.GeometryNodeRealizeInstances.output_template)   - [(bpy.types.GeometryNodeRemoveAttribute class method)](bpy.types.GeometryNodeRemoveAttribute.html#bpy.types.GeometryNodeRemoveAttribute.output_template)   - [(bpy.types.GeometryNodeRepeatInput class method)](bpy.types.GeometryNodeRepeatInput.html#bpy.types.GeometryNodeRepeatInput.output_template)   - [(bpy.types.GeometryNodeRepeatOutput class method)](bpy.types.GeometryNodeRepeatOutput.html#bpy.types.GeometryNodeRepeatOutput.output_template)   - [(bpy.types.GeometryNodeReplaceMaterial class method)](bpy.types.GeometryNodeReplaceMaterial.html#bpy.types.GeometryNodeReplaceMaterial.output_template)   - [(bpy.types.GeometryNodeResampleCurve class method)](bpy.types.GeometryNodeResampleCurve.html#bpy.types.GeometryNodeResampleCurve.output_template)   - [(bpy.types.GeometryNodeReverseCurve class method)](bpy.types.GeometryNodeReverseCurve.html#bpy.types.GeometryNodeReverseCurve.output_template)   - [(bpy.types.GeometryNodeRotateInstances class method)](bpy.types.GeometryNodeRotateInstances.html#bpy.types.GeometryNodeRotateInstances.output_template)   - [(bpy.types.GeometryNodeSampleCurve class method)](bpy.types.GeometryNodeSampleCurve.html#bpy.types.GeometryNodeSampleCurve.output_template)   - [(bpy.types.GeometryNodeSampleGrid class method)](bpy.types.GeometryNodeSampleGrid.html#bpy.types.GeometryNodeSampleGrid.output_template)   - [(bpy.types.GeometryNodeSampleGridIndex class method)](bpy.types.GeometryNodeSampleGridIndex.html#bpy.types.GeometryNodeSampleGridIndex.output_template)   - [(bpy.types.GeometryNodeSampleIndex class method)](bpy.types.GeometryNodeSampleIndex.html#bpy.types.GeometryNodeSampleIndex.output_template)   - [(bpy.types.GeometryNodeSampleNearest class method)](bpy.types.GeometryNodeSampleNearest.html#bpy.types.GeometryNodeSampleNearest.output_template)   - [(bpy.types.GeometryNodeSampleNearestSurface class method)](bpy.types.GeometryNodeSampleNearestSurface.html#bpy.types.GeometryNodeSampleNearestSurface.output_template)   - [(bpy.types.GeometryNodeSampleUVSurface class method)](bpy.types.GeometryNodeSampleUVSurface.html#bpy.types.GeometryNodeSampleUVSurface.output_template)   - [(bpy.types.GeometryNodeScaleElements class method)](bpy.types.GeometryNodeScaleElements.html#bpy.types.GeometryNodeScaleElements.output_template)   - [(bpy.types.GeometryNodeScaleInstances class method)](bpy.types.GeometryNodeScaleInstances.html#bpy.types.GeometryNodeScaleInstances.output_template)   - [(bpy.types.GeometryNodeSDFGridBoolean class method)](bpy.types.GeometryNodeSDFGridBoolean.html#bpy.types.GeometryNodeSDFGridBoolean.output_template)   - [(bpy.types.GeometryNodeSDFGridFillet class method)](bpy.types.GeometryNodeSDFGridFillet.html#bpy.types.GeometryNodeSDFGridFillet.output_template)   - [(bpy.types.GeometryNodeSDFGridLaplacian class method)](bpy.types.GeometryNodeSDFGridLaplacian.html#bpy.types.GeometryNodeSDFGridLaplacian.output_template)   - [(bpy.types.GeometryNodeSDFGridMean class method)](bpy.types.GeometryNodeSDFGridMean.html#bpy.types.GeometryNodeSDFGridMean.output_template)   - [(bpy.types.GeometryNodeSDFGridMeanCurvature class method)](bpy.types.GeometryNodeSDFGridMeanCurvature.html#bpy.types.GeometryNodeSDFGridMeanCurvature.output_template)   - [(bpy.types.GeometryNodeSDFGridMedian class method)](bpy.types.GeometryNodeSDFGridMedian.html#bpy.types.GeometryNodeSDFGridMedian.output_template)   - [(bpy.types.GeometryNodeSDFGridOffset class method)](bpy.types.GeometryNodeSDFGridOffset.html#bpy.types.GeometryNodeSDFGridOffset.output_template)   - [(bpy.types.GeometryNodeSelfObject class method)](bpy.types.GeometryNodeSelfObject.html#bpy.types.GeometryNodeSelfObject.output_template)   - [(bpy.types.GeometryNodeSeparateComponents class method)](bpy.types.GeometryNodeSeparateComponents.html#bpy.types.GeometryNodeSeparateComponents.output_template)   - [(bpy.types.GeometryNodeSeparateGeometry class method)](bpy.types.GeometryNodeSeparateGeometry.html#bpy.types.GeometryNodeSeparateGeometry.output_template)   - [(bpy.types.GeometryNodeSetCurveHandlePositions class method)](bpy.types.GeometryNodeSetCurveHandlePositions.html#bpy.types.GeometryNodeSetCurveHandlePositions.out