<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def ticker(self, currency="", **kwargs):
 		""" 		This endpoint displays cryptocurrency ticker data in order of rank. The maximum 		number of results per call is 100. Pagination is possible by using the 		start and limit parameters. 		GET /ticker/ 		Optional parameters: 	 (int) start - return results from rank [start] and above (default is 1) 	 (int) limit - return a maximum of [limit] results (default is 100; max is 100) 	 (string) convert - return pricing info in terms of another currency. 	 Valid fiat currency values are: "AUD", "BRL", "CAD", "CHF", "CLP", "CNY", "CZK", 	 "DKK", "EUR", "GBP", "HKD", "HUF", "IDR", "ILS", "INR", "JPY", "KRW", "MXN", 	 "MYR", "NOK", "NZD", "PHP", "PKR", "PLN", "RUB", "SEK", "SGD", "THB", "TRY", 	 "TWD", "ZAR" 	 Valid cryptocurrency values are: "BTC", "ETH" "XRP", "LTC", and "BCH" 		GET /ticker/{id} 		Optional parameters: 		(string) convert - return pricing info in terms of another currency. 	Valid fiat currency values are: "AUD", "BRL", "CAD", "CHF", "CLP", "CNY", "CZK", 	"DKK", "EUR", "GBP", "HKD", "HUF", "IDR", "ILS", "INR", "JPY", "KRW", "MXN", 	"MYR", "NOK", "NZD", "PHP", "PKR", "PLN", "RUB", "SEK", "SGD", "THB", "TRY", 	"TWD", "ZAR" 	Valid cryptocurrency values are: "BTC", "ETH" "XRP", "LTC", and "BCH" 		"""


		params = {}
		params.update(kwargs)

		# see https://github.com/barnumbirr/coinmarketcap/pull/28
		if currency:
			currency = str(currency) + '/'

		response = self.__request('ticker/' + currency, params)
		return response