How to make a smart stack