support environment injection