hopefully ignoring libiconv shiz