move some method from OJ to e