approach a proper api for elf stuff