(same remark everywhere you use require instead of explicitly set the dependency in the define call)