split gear lib to outter