more convenient to change this code