refactor
private location
fixed merge