protected function mergeRules()
{
$merged = array();
foreach (func_get_args() as $rules) {
foreach ($rules as $key => $value) {
if (empty($merged[$key])) {
$merged[$key] = $value;
} else {
if (is_array($merged[$key])) {
$merged[$key][] = $value;
} else {
$merged[$key] .= '|' . $value;
}
}
}
}
return $merged;
}