typedef float(entity a, entity b, entity pass) isConnectedFunction_t;
void FindConnectedComponent(entity e, .entity fld, findNextEntityNearFunction_t nxt, isConnectedFunction_t iscon, entity pass);
-// expand multiple arguments into one argument
-#define XPD5(a,b,c,d,e) a, b, c, d, e
-#define XPD4(a,b,c,d) a, b, c, d
-#define XPD3(a,b,c) a, b, c
-#define XPD2(a,b) a, b
+// expand multiple arguments into one argument by stripping parenthesis
+#define XPD(...) __VA_ARGS__
+
+float Count_Proper_Strings(string improper, string...count);
+float Count_Proper_Floats(float improper, float...count);