Implemented various factor rotation algorithms