abstracting _lib files out