added back function and buyer function