((function acos
   (signature float
     (parameters
       (declare (in) float x))
     ((return (expression float - (constant float (1.5707963))
                                  (call asin ((var_ref x)))))))
   (signature vec2
     (parameters
       (declare (in) vec2 x))
     ((return (expression vec2 - (constant float (1.5707963))
                                 (call asin ((var_ref x)))))))
   (signature vec3
     (parameters
       (declare (in) vec3 x))
     ((return (expression vec3 - (constant float (1.5707963))
                                 (call asin ((var_ref x)))))))
   (signature vec4
     (parameters
       (declare (in) vec4 x))
     ((return (expression vec4 - (constant float (1.5707963))
                                 (call asin ((var_ref x)))))))
))
