Implementation

Based on vector example :)