added length via fold right
created forLeft