organize lib structure