support external for both new and old data types