add LastBy function