implement a STL like library