implemented ->> macro