better builtin support