CHARLESTOWN ( Firth of Perth ) d.