input: Write a function to generate all substrings in order from longest to shortest.
  assert substring_in_order("abcd") == ["abcd", "abc", "bcd", "ab", "bc", "cd", "a", "b", "c", "d"]
  assert substring_in_order("abc") == ["abc", "ab", "bc", "a", "b", "c"]
  assert substring_in_order("a") == ["a"]
output: def substring_in_order(s):
      substrings = []
      for length in range(len(s), 0, -1):
          for start in range(len(s) - length + 1):
              substrings.append(s[start:start + length])
      return substrings