<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def create_notification(self):
 """ Instead of the typical create_widget we use `create_notification` because after it's closed it needs created again. """

        d = self.declaration
        builder = self.builder = Notification.Builder(self.get_context(),
                                                      d.channel_id)
        d = self.declaration

        # Apply any custom settings
        if d.settings:
            builder.update(**d.settings)

        for k, v in self.get_declared_items():
            handler = getattr(self, 'set_{}'.format(k))
            handler(v)

        builder.setSmallIcon(d.icon or '@mipmap/ic_launcher')
        # app = self.get_context()
        # intent = Intent()
        # intent.setClass(app, )
        # builder.setContentIntent(PendingIntent.getActivity(app, 0, intent, 0))

        #: Set custom content if present
        for view in self.child_widgets():
            builder.setCustomContentView(view)
            break