separation of lib