public function changeProtection($title, $protections, $expiry = null, $reason = null, $cascade = null, $watchlist = null)
	{
		// Get the token.
		$token = $this->getToken($title, 'unblock');

		// Build the request path.
		$path = '?action=protect';

		// Build the request data.
		$data = array(
			'title'       => $title,
			'token'       => $token,
			'protections' => $protections,
			'expiry'      => $expiry,
			'reason'      => $reason,
			'cascade'     => $cascade,
			'watchlist'   => $watchlist,
		);

		// Send the request.
		$response = $this->client->post($this->fetchUrl($path), $data);

		return $this->validateResponse($response);
	}