docs: @NonNull
      public static Artwork fromCursor(@NonNull Cursor data) {
          Artwork artwork =
                  new Artwork.Builder()
                          .token(data.getString(data.getColumnIndex(TOKEN)))
                          .title(data.getString(data.getColumnIndex(TITLE)))
                          .byline(data.getString(data.getColumnIndex(BYLINE)))
                          .attribution(data.getString(data.getColumnIndex(ATTRIBUTION)))
                          .metadata(data.getString(data.getColumnIndex(METADATA)))
                          .build();
          String persistentUri = data.getString(data.getColumnIndex(PERSISTENT_URI));
          if (!TextUtils.isEmpty(persistentUri)) {
              artwork.persistentUri = Uri.parse(persistentUri);
          }
          String webUri = data.getString(data.getColumnIndex(WEB_URI));
          if (!TextUtils.isEmpty(webUri)) {
              artwork.webUri = Uri.parse(webUri);
          }
          artwork.id = data.getLong(data.getColumnIndex(BaseColumns._ID));
          artwork.data = new File(data.getString(data.getColumnIndex(DATA)));
          artwork.dateAdded = new Date(data.getLong(data.getColumnIndex(DATE_ADDED)));
          artwork.dateModified = new Date(data.getLong(data.getColumnIndex(DATE_MODIFIED)));
          return artwork;
      }