public static final function path(array $Source, $keys){
		return count($keys = array_filter(self::simplify(array_slice(func_get_args(), 1)))) > 0 ? (isset($Source[$keys[0]])
			? (count($keys) > 1 ? (is_array($Source[$keys[0]]) ? self::path($Source[$keys[0]], array_slice($keys, 1)) : null)
				: $Source[$keys[0]]) : null) : $Source;
	}
public static final function path(array $Source, $keys){
		return count($keys = array_filter(self::simplify(array_slice(func_get_args(), 1)))) > 0 ? (isset($Source[$keys[0]])
			? (count($keys) > 1 ? (is_array($Source[$keys[0]]) ? self::path($Source[$keys[0]], array_slice($keys, 1)) : null)
				: $Source[$keys[0]]) : null) : $Source;
	}
public static final function path ( array $ Source , $ keys ) { return count ( $ keys = array_filter ( self :: simplify ( array_slice ( func_get_args ( ) , 1 ) ) ) ) > 0 ? ( isset ( $ Source [ $ keys [ 0 ] ] ) ? ( count ( $ keys ) > 1 ? ( is_array ( $ Source [ $ keys [ 0 ] ] ) ? self :: path ( $ Source [ $ keys [ 0 ] ] , array_slice ( $ keys , 1 ) ) : null ) : $ Source [ $ keys [ 0 ] ] ) : null ) : $ Source ; }
Tries to retrieve a single value or a subset
from an array by the given sequence of keys.

@param array $Source
@param mixed $keys, ...
@return mixed
Tries to retrieve a single value or a subset from an array by the given sequence of keys .