Given 

```jsx
const StyleDiv = forwardRef(function Component({ children }, ref) {
  return <div ref={ref}>{children}</div>;
});

StyleDiv.displayName = `styled(connected(div))`;
```

-- https://codesandbox.io/s/little-sky-y8h1b?file=/src/App.js

I would expect that the badges from the display name are prioritized in the component tree.
However, devtools currently displays the `ForwardRef` badge first:

> `div ForwardRef +2`
![Screenshot from 2021-07-22 11-44-32](https://user-images.githubusercontent.com/12292047/126619858-20b3747b-8723-4306-b5b0-13457d8f45e2.png)

Oddly enough, the inline devtools in codesandbox do prioritize the badge from the `displayName` (maybe this regressed?):

> `div styled +2` ![Screenshot from 2021-07-22 11-45-27](https://user-images.githubusercontent.com/12292047/126620032-bda9ef1a-ab26-4df3-a10c-e0e8c5cfc3d3.png)


There's also an argument to be made that devtools should not display the `ForwardRef` badge to begin with (since we explicitly omitted it in `displayName`). That can be discussed separately but would solve the issue entirely.
let string = '';
  for (let i = 0; i < array.length; i++) {
    const char = array[i];
    string += String.fromCodePoint(char);
  }
  return string;
}
function surrogatePairToCodePoint(
  charCode1: number,
  charCode2: number,
): number {
  return ((charCode1 & 0x3ff) << 10) + (charCode2 & 0x3ff) + 0x10000;
}
 Credit for this encoding approach goes to Tim Down:
 https:stackoverflow.comquestions4877326how-can-i-tell-if-a-string-contains-multibyte-characters-in-javascript
export function utfEncodeString(string: string): Array<number> {
  const cached = encodedStringCache.get(string);
  if (cached !== undefined) {
    return cached;
  }
  const encoded = [];
  let i = 0;
  let charCode;
  while (i < string.length) {
    charCode = string.charCodeAt(i);
    
    if ((charCode & 0xf800) === 0xd800) {