private function TriggerEvents(Map $EventMap, $Key, array $CustomArguments = [])
{
array_unshift($CustomArguments, $this);
if (isset($EventMap[$Key])) {
$Events = $EventMap[$Key];
foreach ($Events as $Event) {
call_user_func_array($Event, $CustomArguments);
}
}
}