added support for pattern matchine lazy lists