externizable implemented