basic typesafety works