More design: separated globals from rules