((function tan
   (signature float
     (parameters
       (declare (in) float angle))
     ((return (expression float / (expression float sin (var_ref angle)) (expression float cos (var_ref angle))))))

   (signature vec2
     (parameters
       (declare (in) vec2 angle))
     ((return (expression vec2 / (expression vec2 sin (var_ref angle)) (expression vec2 cos (var_ref angle))))))

   (signature vec3
     (parameters
       (declare (in) vec3 angle))
     ((return (expression vec3 / (expression vec3 sin (var_ref angle)) (expression vec3 cos (var_ref angle))))))

   (signature vec4
     (parameters
       (declare (in) vec4 angle))
     ((return (expression vec4 / (expression vec4 sin (var_ref angle)) (expression vec4 cos (var_ref angle))))))
))