is there potentially a more polymorphic solution?