wip - require instead of define