public static final function like(array $Source, $keys){
		return count($keys = self::simplify(array_slice(func_get_args(), 1))) && uksort($Source, function($l, $r) use ($keys){
			return Arr::contains($keys, $r, $l) ? array_search($l, $keys) - array_search($r, $keys) : 0; })
				? self::only($Source, $keys) : $Source;
	}
public static final function like(array $Source, $keys){
		return count($keys = self::simplify(array_slice(func_get_args(), 1))) && uksort($Source, function($l, $r) use ($keys){
			return Arr::contains($keys, $r, $l) ? array_search($l, $keys) - array_search($r, $keys) : 0; })
				? self::only($Source, $keys) : $Source;
	}
public static final function like ( array $ Source , $ keys ) { return count ( $ keys = self :: simplify ( array_slice ( func_get_args ( ) , 1 ) ) ) && uksort ( $ Source , function ( $ l , $ r ) use ( $ keys ) { return Arr :: contains ( $ keys , $ r , $ l ) ? array_search ( $ l , $ keys ) - array_search ( $ r , $ keys ) : 0 ; } ) ? self :: only ( $ Source , $ keys ) : $ Source ; }
Sorts an array keys in the order given by arguments.

@attention Missing keys will be removed.

@param array $Source
@param mixed $keys, ...
@return array
Sorts an array keys in the order given by arguments .