+void
+panick(const char* msg);
+
+#define wait_until(cond) \
+ while (!(cond)) \
+ ;
+#define loop_until(cond) \
+ while (!(cond)) \
+ ;
+
+#define wait_until_expire(cond, max) \
+ ({ \
+ unsigned int __wcounter__ = (max); \
+ while (!(cond) && __wcounter__-- > 0) \
+ ; \
+ __wcounter__; \
+ })