anchor.diff:            physics: AlwaysScrollableScrollPhysics(),
             itemBuilder: (BuildContext context, int index) => _buildErrorText(),
             controller:
  -              Provider.of<MessagesDataProvider>(context).scrollController,
  +          Provider.of<MessagesDataProvider>(context).scrollController,
             itemCount: 1,
             separatorBuilder: (BuildContext context, int index) => Divider(),
           );
  
positive.code: 
    Widget _buildMessage(BuildContext context, int index) {
      MessageElement data =
          Provider.of<MessagesDataProvider>(context).messages[index];
      FreeFoodDataProvider freefoodProvider = Provider.of<FreeFoodDataProvider>(context);
  
      if (index ==
          Provider.of<MessagesDataProvider>(context).messages.length - 1) {
        if (Provider.of<MessagesDataProvider>(context).hasMoreMessagesToLoad) {
          return _buildLoadingIndicator();
        } else {
          return Container();
        }
      }
      return ListTile(
        leading: Icon(Icons.info, color: Colors.grey, size: 30),
        title: Column(
  
negative.code:     if (Provider.of<MessagesDataProvider>(context).messages.length == 0) {
        if (Provider.of<MessagesDataProvider>(context).error == null) {
          if (Provider.of<MessagesDataProvider>(context).isLoading) {
            // empty notifications view until they load in
          } else {
            return ListView.separated(
              physics: AlwaysScrollableScrollPhysics(),
              itemBuilder: (BuildContext context, int index) =>
                  _buildNoMessagesText(),
              controller:
              Provider.of<MessagesDataProvider>(context).scrollController,
              itemCount: 1,
              separatorBuilder: (BuildContext context, int index) => Divider(),
            );
  