Pin now has more behavior
Refactored Pin