more strict and ui-lib conversion