Municipalities are generally governed by an executive council headed by a president or mayor. Legislative authority is exercised by a town meeting of all citizens, or by a municipal parliament, depending on the size of the municipality, and on cantonal and municipal law. In some cantons, foreigners who have lived for a certain time in Switzerland are also allowed to participate in municipal politics. As at the cantonal and federal level, citizens enjoy political rights, including direct democratic ones, in their municipality.