code: def specular(
      self, normals, points, camera_position, shininess
  ) -> torch.Tensor:
      return specular(
          points=points,
          normals=normals,
          color=self.specular_color,
          direction=self.direction,
          camera_position=camera_position,
          shininess=shininess,
      )
  
imports: import torch
  import torch.nn.functional
  from ..common.datatypes import Device
  from .utils import convert_to_tensors_and_broadcast, TensorProperties
label_desc: Use image node_id 4 for calling the DirectionalLights obj's underlying member method code with example usage: obj.specular(normals, points, camera_position, shininess) and returns: specular