Added 'first' parameter