user: How do I use References in Blender? Include parameters, examples, warnings and best practices.

assistant: ometryNodeWarning.input_template") - [`GeometryNodeWarning.output_template`](bpy.types.GeometryNodeWarning.html#bpy.types.GeometryNodeWarning.output_template "bpy.types.GeometryNodeWarning.output_template") - [`NodeClosureInput.input_template`](bpy.types.NodeClosureInput.html#bpy.types.NodeClosureInput.input_template "bpy.types.NodeClosureInput.input_template") - [`NodeClosureInput.output_template`](bpy.types.NodeClosureInput.html#bpy.types.NodeClosureInput.output_template "bpy.types.NodeClosureInput.output_template") - [`NodeClosureOutput.input_template`](bpy.types.NodeClosureOutput.html#bpy.types.NodeClosureOutput.input_template "bpy.types.NodeClosureOutput.input_template") - [`NodeClosureOutput.output_template`](bpy.types.NodeClosureOutput.html#bpy.types.NodeClosureOutput.output_template "bpy.types.NodeClosureOutput.output_template") - [`NodeCombineBundle.input_template`](bpy.types.NodeCombineBundle.html#bpy.types.NodeCombineBundle.input_template "bpy.types.NodeCombineBundle.input_template") - [`NodeCombineBundle.output_template`](bpy.types.NodeCombineBundle.html#bpy.types.NodeCombineBundle.output_template "bpy.types.NodeCombineBundle.output_template") - [`NodeEnableOutput.input_template`](bpy.types.NodeEnableOutput.html#bpy.types.NodeEnableOutput.input_template "bpy.types.NodeEnableOutput.input_template") - [`NodeEnableOutput.output_template`](bpy.types.NodeEnableOutput.html#bpy.types.NodeEnableOutput.output_template "bpy.types.NodeEnableOutput.output_template") - [`NodeEvaluateClosure.input_template`](bpy.types.NodeEvaluateClosure.html#bpy.types.NodeEvaluateClosure.input_template "bpy.types.NodeEvaluateClosure.input_template") - [`NodeEvaluateClosure.output_template`](bpy.types.NodeEvaluateClosure.html#bpy.types.NodeEvaluateClosure.output_template "bpy.types.NodeEvaluateClosure.output_template") - [`NodeFrame.input_template`](bpy.types.NodeFrame.html#bpy.types.NodeFrame.input_template "bpy.types.NodeFrame.input_template") - [`NodeFrame.output_template`](bpy.types.NodeFrame.html#bpy.types.NodeFrame.output_template "bpy.types.NodeFrame.output_template") - [`NodeGroup.input_template`](bpy.types.NodeGroup.html#bpy.types.NodeGroup.input_template "bpy.types.NodeGroup.input_template") - [`NodeGroup.output_template`](bpy.types.NodeGroup.html#bpy.types.NodeGroup.output_template "bpy.types.NodeGroup.output_template") - [`NodeGroupInput.input_template`](bpy.types.NodeGroupInput.html#bpy.types.NodeGroupInput.input_template "bpy.types.NodeGroupInput.input_template") - [`NodeGroupInput.output_template`](bpy.types.NodeGroupInput.html#bpy.types.NodeGroupInput.output_template "bpy.types.NodeGroupInput.output_template") - [`NodeGroupOutput.input_template`](bpy.types.NodeGroupOutput.html#bpy.types.NodeGroupOutput.input_template "bpy.types.NodeGroupOutput.input_template") - [`NodeGroupOutput.output_template`](bpy.types.NodeGroupOutput.html#bpy.types.NodeGroupOutput.output_template "bpy.types.NodeGroupOutput.output_template") - [`NodeJoinBundle.input_template`](bpy.types.NodeJoinBundle.html#bpy.types.NodeJoinBundle.input_template "bpy.types.NodeJoinBundle.input_template") - [`NodeJoinBundle.output_template`](bpy.types.NodeJoinBundle.html#bpy.types.NodeJoinBundle.output_template "bpy.types.NodeJoinBundle.output_template") - [`NodeReroute.input_template`](bpy.types.NodeReroute.html#bpy.types.NodeReroute.input_template "bpy.types.NodeReroute.input_template") - [`NodeReroute.output_template`](bpy.types.NodeReroute.html#bpy.types.NodeReroute.output_template "bpy.types.NodeReroute.output_template") - [`NodeSeparateBundle.input_template`](bpy.types.NodeSeparateBundle.html#bpy.types.NodeSeparateBundle.input_template "bpy.types.NodeSeparateBundle.input_template") - [`NodeSeparateBundle.output_template`](bpy.types.NodeSeparateBundle.html#bpy.types.NodeSeparateBundle.output_template "bpy.types.NodeSeparateBundle.output_template") - [`ShaderNodeAddShader.input_template`](bpy.types.ShaderNodeAddShader.html#bpy.types.ShaderNodeAddShader.input_template "bpy.types.ShaderNodeAddShader.input_template") - [`ShaderNodeAddShader.output_template`](bpy.types.ShaderNodeAddShader.html#bpy.types.ShaderNodeAddShader.output_template "bpy.types.ShaderNodeAddShader.output_template") - [`ShaderNodeAmbientOcclusion.input_template`](bpy.types.ShaderNodeAmbientOcclusion.html#bpy.types.ShaderNodeAmbientOcclusion.input_template "bpy.types.ShaderNodeAmbientOcclusion.input_template") - [`ShaderNodeAmbientOcclusion.output_template`](bpy.types.ShaderNodeAmbientOcclusion.html#bpy.types.ShaderNodeAmbientOcclusion.output_template "bpy.types.ShaderNodeAmbientOcclusion.output_template") - [`ShaderNodeAttribute.input_template`](bpy.types.ShaderNodeAttribute.html#bpy.types.ShaderNodeAttribute.input_template "bpy.types.ShaderNodeAttribute.input_template") - [`ShaderNodeAttribute.output_template`](bpy.types.ShaderNodeAttribute.html#bpy.types.ShaderNodeAttribute.output_template "bpy.types.ShaderNodeAttribute.output_template") - [`ShaderNodeBackground.input_template`](bpy.types.ShaderNodeBackground.html#bpy.types.ShaderNodeBackground.input_template "bpy.types.ShaderNodeBackground.input_template") - [`ShaderNodeBackground.output_template`](bpy.types.ShaderNodeBackground.html#bpy.types.ShaderNodeBackground.output_template "bpy.types.ShaderNodeBackground.output_template") - [`ShaderNodeBevel.input_template`](bpy.types.ShaderNodeBevel.html#bpy.types.ShaderNodeBevel.input_template "bpy.types.ShaderNodeBevel.input_template") - [`ShaderNodeBevel.output_template`](bpy.types.ShaderNodeBevel.html#bpy.types.ShaderNodeBevel.output_template "bpy.types.ShaderNodeBevel.output_template") - [`ShaderNodeBlackbody.input_template`](bpy.types.ShaderNodeBlackbody.html#bpy.types.ShaderNodeBlackbody.input_template "bpy.types.ShaderNodeBlackbody.input_template") - [`ShaderNodeBlackbody.output_template`](bpy.types.ShaderNodeBlackbody.html#bpy.types.ShaderNodeBlackbody.output_template "bpy.types.ShaderNodeBlackbody.output_template") - [`ShaderNodeBrightContrast.input_template`](bpy.types.ShaderNodeBrightContrast.html#bpy.types.ShaderNodeBrightContrast.input_template "bpy.types.ShaderNodeBrightContrast.input_template") - [`ShaderNodeBrightContrast.output_template`](bpy.types.ShaderNodeBrightContrast.html#bpy.types.ShaderNodeBrightContrast.output_template "bpy.types.ShaderNodeBrightContrast.output_template") - [`ShaderNodeBsdfAnisotropic.input_template`](bpy.types.ShaderNodeBsdfAnisotropic.html#bpy.types.ShaderNodeBsdfAnisotropic.input_template "bpy.types.ShaderNodeBsdfAnisotropic.input_template") - [`ShaderNodeBsdfAnisotropic.output_template`](bpy.types.ShaderNodeBsdfAnisotropic.html#bpy.types.ShaderNodeBsdfAnisotropic.output_template "bpy.types.ShaderNodeBsdfAnisotropic.output_template") - [`ShaderNodeBsdfDiffuse.input_template`](bpy.types.ShaderNodeBsdfDiffuse.html#bpy.types.ShaderNodeBsdfDiffuse.input_template "bpy.types.ShaderNodeBsdfDiffuse.input_template") - [`ShaderNodeBsdfDiffuse.output_template`](bpy.types.ShaderNodeBsdfDiffuse.html#bpy.types.ShaderNodeBsdfDiffuse.output_template "bpy.types.ShaderNodeBsdfDiffuse.output_template") - [`ShaderNodeBsdfGlass.input_template`](bpy.types.ShaderNodeBsdfGlass.html#bpy.types.ShaderNodeBsdfGlass.input_template "bpy.types.ShaderNodeBsdfGlass.input_template") - [`ShaderNodeBsdfGlass.output_template`](bpy.types.ShaderNodeBsdfGlass.html#bpy.types.ShaderNodeBsdfGlass.output_template "bpy.types.ShaderNodeBsdfGlass.output_template") - [`ShaderNodeBsdfHair.input_template`](bpy.types.ShaderNodeBsdfHair.html#bpy.types.ShaderNodeBsdfHair.input_template "bpy.types.ShaderNodeBsdfHair.input_template") - [`ShaderNodeBsdfHair.output_template`](bpy.types.ShaderNodeBsdfHair.html#bpy.types.ShaderNodeBsdfHair.output_template "bpy.types.ShaderNodeBsdfHair.output_template") - [`ShaderNodeBsdfHairPrincipled.input_template`](bpy.types.ShaderNodeBsdfHairPrincipled.html#bpy.types.ShaderNodeBsdfHairPrincipled.input_template "bpy.types.ShaderNodeBsdfHairPrincipled.input_template") - [`ShaderNodeBsdfHairPrincipled.output_template`](bpy.types.ShaderNodeBsdfHairPrincipled.html#bpy.types.ShaderNodeBsdfHairPrincipled.output_template "bpy.types.ShaderNodeBsdfHairPrincipled.output_template") - [`ShaderNodeBsdfMetallic.input_template`](bpy.types.ShaderNodeBsdfMetallic.html#bpy.types.ShaderNodeBsdfMetallic.input_template "bpy.types.ShaderNodeBsdfMetallic.input_template") - [`ShaderNodeBsdfMetallic.output_template`](bpy.types.ShaderNodeBsdfMetallic.html#bpy.types.ShaderNodeBsdfMetallic.output_template "bpy.types.ShaderNodeBsdfMetallic.output_template") - [`ShaderNodeBsdfPrincipled.input_template`](bpy.types.ShaderNodeBsdfPrincipled.html#bpy.types.ShaderNodeBsdfPrincipled.input_template "bpy.types.ShaderNodeBsdfPrincipled.input_template") - [`ShaderNodeBsdfPrincipled.output_template`](bpy.types.ShaderNodeBsdfPrincipled.html#bpy.types.ShaderNodeBsdfPrincipled.output_template "bpy.types.ShaderNodeBsdfPrincipled.output_template") - [`ShaderNodeBsdfRayPortal.input_template`](bpy.types.ShaderNodeBsdfRayPortal.html#bpy.types.ShaderNodeBsdfRayPortal.input_template "bpy.types.ShaderNodeBsdfRayPortal.input_template") - [`ShaderNodeBsdfRayPortal.output_template`](bpy.types.ShaderNodeBsdfRayPortal.html#bpy.types.ShaderNodeBsdfRayPortal.output_template "bpy.types.ShaderNodeBsdfRayPortal.output_template") - [`ShaderNodeBsdfRefraction.input_template`](bpy.types.ShaderNodeBsdfRefraction.html#bpy.types.ShaderNodeBsdfRefraction.input_template "bpy.types.ShaderNodeBsdfRefraction.input_template") - [`ShaderNodeBsdfRefraction.output_template`](bpy.types.ShaderNodeBsdfRefraction.html#bpy.types.ShaderNodeBsdfRefraction.output_template "bpy.types.ShaderNodeBsdfRefraction.output_template") - [`ShaderNodeBsdfSheen.input_template`](bpy.types.ShaderNodeBsdfSheen.html#bpy.types.ShaderNodeBsdfSheen.input_template "bpy.types.ShaderNodeBsdfSheen.input_template") - [`ShaderNodeBsdfSheen.output_template`](bpy.types.ShaderNodeBsdfSheen.html#bpy.types.ShaderNodeBsdfSheen.output_template "bpy.types.ShaderNodeBsdfSheen.output_template") - [`ShaderNodeBsdfToon.input_template`](bpy.types.ShaderNodeBsdfToon.html#bpy.types.ShaderNodeBsdfToon.input_template "bpy.types.ShaderNodeBsdfToon.input_template") - [`ShaderNodeBsdfToon.output_template`](bpy.types.ShaderNodeBsdfToon.html#bpy.types.ShaderNodeBsdfToon.output_template "bpy.types.ShaderNodeBsdfToon.output_template") - [`ShaderNodeBsdfTranslucent.input_template`](bpy.types.ShaderNodeBsdfTranslucent.html#bpy.types.ShaderNodeBsdfTranslucent.input_template "bpy.types.ShaderNodeBsdfTranslucent.input_template") - [`ShaderNodeBsdfTranslucent.output_template`](bpy.types.ShaderNodeBsdfTranslucent.html#bpy.types.ShaderNodeBsdfTranslucent.output_template "bpy.types.ShaderNodeBsdfTranslucent.output_template") - [`ShaderNodeBsdfTransparent.input_template`](bpy.types.ShaderNodeBsdfTransparent.html#bpy.types.ShaderNodeBsdfTransparent.input_template "bpy.types.ShaderNodeBsdfTransparent.input_template") - [`ShaderNodeBsdfTransparent.output_template`](bpy.types.ShaderNodeBsdfTransparent.html#bpy.types.ShaderNodeBsdfTransparent.output_template "bpy.types.ShaderNodeBsdfTransparent.output_template") - [`ShaderNodeBump.input_template`](bpy.types.ShaderNodeBump.html#bpy.types.ShaderNodeBump.input_template "bpy.types.ShaderNodeBump.input_template") - [`ShaderNodeBump.output_template`](bpy.types.ShaderNodeBump.html#bpy.types.ShaderNodeBump.output_template "bpy.types.ShaderNodeBump.output_template") - [`ShaderNodeCameraData.input_template`](bpy.types.ShaderNodeCameraData.html#bpy.types.ShaderNodeCameraData.input_template "bpy.types.ShaderNodeCameraData.input_template") - [`ShaderNodeCameraData.output_template`](bpy.types.ShaderNodeCameraData.html#bpy.types.ShaderNodeCameraData.output_template "bpy.types.ShaderNodeCameraData.output_template") - [`ShaderNodeClamp.input_template`](bpy.types.ShaderNodeClamp.html#bpy.types.ShaderNodeClamp.input_template "bpy.types.ShaderNodeClamp.input_template") - [`ShaderNodeClamp.output_template`](bpy.types.ShaderNodeClamp.html#bpy.types.ShaderNodeClamp.output_template "bpy.types.ShaderNodeClamp.output_template") - [`ShaderNodeCombineColor.input_template`](bpy.types.ShaderNodeCombineColor.html#bpy.types.ShaderNodeCombineColor.input_template "bpy.types.ShaderNodeCombineColor.input_template") - [`ShaderNodeCombineColor.output_template`](bpy.types.ShaderNodeCombineColor.html#bpy.types.ShaderNodeCombineColor.output_template "bpy.types.ShaderNodeCombineColor.output_template") - [`ShaderNodeCombineXYZ.input_template`](bpy.types.ShaderNodeCombineXYZ.html#bpy.types.ShaderNodeCombineXYZ.input_template "bpy.types.ShaderNodeCombineXYZ.input_template") - [`ShaderNodeCombineXYZ.output_template`](bpy.types.ShaderNodeCombineXYZ.html#bpy.types.ShaderNodeCombineXYZ.output_template "bpy.types.ShaderNodeCombineXYZ.output_template") - [`ShaderNodeDisplacement.input_template`](bpy.types.ShaderNodeDisplacement.html#bpy.types.ShaderNodeDisplacement.input_template "bpy.types.ShaderNodeDisplacement.input_template") - [`ShaderNodeDisplacement.output_template`](bpy.types.ShaderNodeDisplacement.html#bpy.types.ShaderNodeDisplacement.output_template "bpy.types.ShaderNodeDisplacement.output_template") - [`ShaderNodeEeveeSpecular.input_template`](bpy.types.ShaderNodeEeveeSpecular.html#bpy.types.ShaderNodeEeveeSpecular.input_template "bpy.types.ShaderNodeEeveeSpecular.input_template") - [`ShaderNodeEeveeSpecular.output_template`](bpy.types.ShaderNodeEeveeSpecular.html#bpy.types.ShaderNodeEeveeSpecular.output_template "bpy.types.ShaderNodeEeveeSpecular.output_template") - [`ShaderNodeEmission.input_template`](bpy.types.ShaderNodeEmission.html#bpy.types.ShaderNodeEmission.input_template "bpy.types.ShaderNodeEmission.input_template") - [`ShaderNodeEmission.output_template`](bpy.types.ShaderNodeEmission.html#bpy.types.ShaderNodeEmission.output_template "bpy.types.ShaderNodeEmission.output_template") - [`ShaderNodeFloatCurve.input_template`](bpy.types.ShaderNodeFloatCurve.html#bpy.types.ShaderNodeFloatCurve.input_template "bpy.types.ShaderNodeFloatCurve.input_template") - [`ShaderNodeFloatCurve.output_template`](bpy.types.ShaderNodeFloatCurve.html#bpy.types.ShaderNodeFloatCurve.output_template "bpy.types.ShaderNodeFloatCurve.output_template") - [`ShaderNodeFresnel.input_template`](bpy.types.ShaderNodeFresnel.html#bpy.types.ShaderNodeFresnel.input_template "bpy.types.ShaderNodeFresnel.input_template") - [`ShaderNodeFresnel.output_template`](bpy.types.ShaderNodeFresnel.html#bpy.types.ShaderNodeFresnel.output_template "bpy.types.ShaderNodeFresnel.output_template") - [`ShaderNodeGamma.input_template`](bpy.types.ShaderNodeGamma.html#bpy.types.ShaderNodeGamma.input_template "bpy.types.ShaderNodeGamma.input_template") - [`ShaderNodeGamma.output_template`](bpy.types.ShaderNodeGamma.html#bpy.types.ShaderNodeGamma.output_template "bpy.types.ShaderNodeGamma.output_template") - [`ShaderNodeGroup.input_template`](bpy.types.ShaderNodeGroup.html#bpy.types.ShaderNodeGroup.input_template "bpy.types.ShaderNodeGroup.input_template") - [`ShaderNodeGroup.output_template`](bpy.types.ShaderNodeGroup.html#bpy.types.ShaderNodeGroup.output_template "bpy.types.ShaderNodeGroup.output_template") - [`ShaderNodeHairInfo.input_template`](bpy.types.ShaderNodeHairInfo.html#bpy.types.ShaderNodeHairInfo.input_template "bpy.types.ShaderNodeHairInfo.input_template") - [`ShaderNodeHairInfo.output_template`](bpy.types.ShaderNodeHairInfo.html#bpy.types.ShaderNodeHairInfo.output_template "bpy.types.ShaderNodeHairInfo.output_template") - [`ShaderNodeHoldout.input_template`](bpy.types.ShaderNodeHoldout.html#bpy.types.ShaderNodeHoldout.input_template "bpy.types.ShaderNodeHoldout.input_template") - [`ShaderNodeHoldout.output_template`](bpy.types.ShaderNodeHoldout.html#bpy.types.ShaderNodeHoldout.output_template "bpy.types.ShaderNodeHoldout.output_template") - [`ShaderNodeHueSaturation.input_template`](bpy.types.ShaderNodeHueSaturation.html#bpy.types.ShaderNodeHueSaturation.input_template "bpy.types.ShaderNodeHueSaturation.input_template") - [`ShaderNodeHueSaturation.output_template`](bpy.types.ShaderNodeHueSaturation.html#bpy.types.ShaderNodeHueSaturation.output_template "bpy.types.ShaderNodeHueSaturation.output_template") - [`ShaderNodeInvert.input_template`](bpy.types.ShaderNodeInvert.html#bpy.types.ShaderNodeInvert.input_template "bpy.types.ShaderNodeInvert.input_template") - [`ShaderNodeInvert.output_template`](bpy.types.ShaderNodeInvert.html#bpy.types.ShaderNodeInvert.output_template "bpy.types.ShaderNodeInvert.output_template") - [`ShaderNodeLayerWeight.input_template`](bpy.types.ShaderNodeLayerWeight.html#bpy.types.ShaderNodeLayerWeight.input_template "bpy.types.ShaderNodeLayerWeight.input_template") - [`ShaderNodeLayerWeight.output_template`](bpy.types.ShaderNodeLayerWeight.html#bpy.types.ShaderNodeLayerWeight.output_template "bpy.types.ShaderNodeLayerWeight.output_template") - [`ShaderNodeLightFalloff.input_template`](bpy.types.ShaderNodeLightFalloff.html#bpy.types.ShaderNodeLightFalloff.input_template "bpy.types.ShaderNodeLightFalloff.input_template") - [`ShaderNodeLightFalloff.output_template`](bpy.types.ShaderNodeLightFalloff.html#bpy.types.ShaderNodeLightFalloff.output_template "bpy.types.ShaderNodeLightFalloff.output_template") - [`ShaderNodeLightPath.input_template`](bpy.types.ShaderNodeLightPath.html#bpy.types.ShaderNodeLightPath.input_template "bpy.types.ShaderNodeLightPath.input_template") - [`ShaderNodeLightPath.output_template`](bpy.types.ShaderNodeLightPath.html#bpy.types.ShaderNodeLightPath.output_template "bpy.types.ShaderNodeLightPath.output_template") - [`ShaderNodeMapRange.input_template`](bpy.types.ShaderNodeMapRange.html#bpy.types.ShaderNodeMapRange.input_template "bpy.types.ShaderNodeMapRange.input_template") - [`ShaderNodeMapRange.output_template`](bpy.types.ShaderNodeMapRange.html#bpy.types.ShaderNodeMapRange.output_template "bpy.types.ShaderNodeMapRange.output_template") - [`ShaderNodeMapping.input_template`](bpy.types.ShaderNodeMapping.html#bpy.types.ShaderNodeMapping.i