refactoring, using shared libs