make flags private and public mandatory, new flag listen