perhaps something only the WP class should be doing?