@Nullable
  @Override
  public Task findTask(@NotNull final String id) throws Exception {
    final Matcher matcher = TASK_ID_REGEX.matcher(id);
    if (!matcher.matches()) {
      LOG.warn("Illegal PivotalTracker ID pattern " + id);
      return null;
    }
    final String projectId = matcher.group("projectId");
    final String storyId = matcher.group("storyId");
    final PivotalTrackerStory story = getHttpClient().execute(new HttpGet(getRestApiUrl("projects", projectId, "stories", storyId)),
                                                              new GsonSingleObjectDeserializer<>(ourGson, PivotalTrackerStory.class, true));
    return story != null ? new PivotalTrackerTask(this, story) : null;
  }
@Nullable
  @Override
  public Task findTask(@NotNull final String id)