no need to deal with it on compile time