require and non-require work