code: def urlpatterns(self):
          '''load and decorate urls from all modules
          then store it as cached property for less loading
          '''
          if not hasattr(self, '_urlspatterns'):
              urlpatterns = []
              for mod in leonardo.modules:
                  if is_leonardo_module(mod):
                      conf = get_conf_from_module(mod)
                      if module_has_submodule(mod, 'urls'):
                          urls_mod = import_module('.urls', mod.__name__)
                          if hasattr(urls_mod, 'urlpatterns'):
                              if conf['public']:
                                  urlpatterns += urls_mod.urlpatterns
                              else:
                                  _decorate_urlconf(urls_mod.urlpatterns,
                                                    require_auth)
                                  urlpatterns += urls_mod.urlpatterns
              from django.conf import settings
              for urls_conf, conf in six.iteritems(getattr(settings, 'MODULE_URLS', {})):
                  try:
                      if conf['is_public']:
                          urlpatterns += \
                              patterns('',
                                       url(r'', include(urls_conf)),
                                       )
                      else:
                          _decorate_urlconf(
                              url(r'', include(urls_conf)),
                              require_auth)
                          urlpatterns += patterns('',
                                                  url(r'', include(urls_conf)))
                  except Exception as e:
                      raise Exception('raised %s during loading %s' %
                                      (str(e), urls_conf))
              self._urlpatterns = urlpatterns
          return self._urlpatterns