Implement trigger() as limit() followed by collect()

Implement trigger() as limit() followed by collect()gdfg