protected function composeSignatureBaseString($method, $url, array $params)
{
unset($params['oauth_signature']);
uksort($params, 'strcmp');
// Parameters are sorted by name, using lexicographical byte value ordering. Ref: Spec: 9.1.1
$parts = [strtoupper($method), $url, http_build_query($params, '', '&', PHP_QUERY_RFC3986)];
$parts = array_map('rawurlencode', $parts);
return implode('&', $parts);
}