androidx.emoji2.text.SpannableBuilder$WatcherWrapper -> sy6:
# {"id":"sourceFile","fileName":"SpannableBuilder.java"}
    java.lang.Object mObject -> X
    java.util.concurrent.atomic.AtomicInteger mBlockCalls -> Y
    1:3:void <init>(java.lang.Object):372:372 -> <init>
    4:11:void <init>(java.lang.Object):370:370 -> <init>
    12:14:void <init>(java.lang.Object):373:373 -> <init>
    1:8:void afterTextChanged(android.text.Editable):388:388 -> afterTextChanged
    1:8:void beforeTextChanged(java.lang.CharSequence,int,int,int):378:378 -> beforeTextChanged
    1:8:void onSpanAdded(android.text.Spannable,java.lang.Object,int,int):397:397 -> onSpanAdded
    9:13:boolean isEmojiSpan(java.lang.Object):450:450 -> onSpanAdded
    9:13:void onSpanAdded(android.text.Spannable,java.lang.Object,int,int):397 -> onSpanAdded
    14:21:void onSpanAdded(android.text.Spannable,java.lang.Object,int,int):400:400 -> onSpanAdded
    1:8:void onSpanChanged(android.text.Spannable,java.lang.Object,int,int,int,int):422:422 -> onSpanChanged
    9:13:boolean isEmojiSpan(java.lang.Object):450:450 -> onSpanChanged
    9:13:void onSpanChanged(android.text.Spannable,java.lang.Object,int,int,int,int):422 -> onSpanChanged
    14:30:void onSpanChanged(android.text.Spannable,java.lang.Object,int,int,int,int):426:426 -> onSpanChanged
    31:43:void onSpanChanged(android.text.Spannable,java.lang.Object,int,int,int,int):438:438 -> onSpanChanged
    1:8:void onSpanRemoved(android.text.Spannable,java.lang.Object,int,int):409:409 -> onSpanRemoved
    9:13:boolean isEmojiSpan(java.lang.Object):450:450 -> onSpanRemoved
    9:13:void onSpanRemoved(android.text.Spannable,java.lang.Object,int,int):409 -> onSpanRemoved
    14:21:void onSpanRemoved(android.text.Spannable,java.lang.Object,int,int):412:412 -> onSpanRemoved
    1:8:void onTextChanged(java.lang.CharSequence,int,int,int):383:383 -> onTextChanged
