((function greaterThan
   (signature bvec2
     (parameters
       (declare (in) vec2 arg0)
       (declare (in) vec2 arg1))
     ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))

   (signature bvec3
     (parameters
       (declare (in) vec3 arg0)
       (declare (in) vec3 arg1))
     ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))

   (signature bvec4
     (parameters
       (declare (in) vec4 arg0)
       (declare (in) vec4 arg1))
     ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))

   (signature bvec2
     (parameters
       (declare (in) ivec2 arg0)
       (declare (in) ivec2 arg1))
     ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))

   (signature bvec3
     (parameters
       (declare (in) ivec3 arg0)
       (declare (in) ivec3 arg1))
     ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))

   (signature bvec4
     (parameters
       (declare (in) ivec4 arg0)
       (declare (in) ivec4 arg1))
     ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))

   (signature bvec2
     (parameters
       (declare (in) uvec2 arg0)
       (declare (in) uvec2 arg1))
     ((return (expression bvec2 > (var_ref arg0) (var_ref arg1)))))

   (signature bvec3
     (parameters
       (declare (in) uvec3 arg0)
       (declare (in) uvec3 arg1))
     ((return (expression bvec3 > (var_ref arg0) (var_ref arg1)))))

   (signature bvec4
     (parameters
       (declare (in) uvec4 arg0)
       (declare (in) uvec4 arg1))
     ((return (expression bvec4 > (var_ref arg0) (var_ref arg1)))))
))