Can you think of any reason why smart shouldn't also imply reorderable? If not I'll generate it automatically.