all of the above could/should go in a method that gathers the supported styles to avoid duplicating that code everywhere