#include "\z\ace\addons\common\script_component.hpp"

#define VALIDHASH(hash)	(IS_ARRAY(hash) && {(count hash) >= 2} && {IS_ARRAY(hash select 0)} && {IS_ARRAY(hash select 1)})
#define ERROR(msg)	throw msg + format[" @ %1:%2", _callFrom, _lineNo]
#define HANDLECATCH	diag_log text _exception; assert(exception=="")

#define ERRORDATA(c)	private ["_callFrom", "_lineNo"];\
						_callFrom = "";\
						_lineNo = -1;\
						if((count _this) > c) then {\
							_callFrom = _this select c;\
							_lineNo = _this select c+1;\
						};