You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: app_config_test.go
    path of file: ./repos/td/telegram/tljson
    
    the code of the file until where you have to start completion: package tljson

import (
	"testing"

	"github.com/go-faster/jx"
	"github.com/stretchr/testify/require"

	"github.com/gotd/td/tg"
)

const example = `{
    "test": 1,
    "emojies_animated_zoom": 0.625,
    "emojies_send_dice": [
        "\ud83c\udfb2",
        "\ud83c\udfaf",
        "\ud83c\udfc0",
        "\u26bd",
        "\u26bd\ufe0f",
        "\ud83c\udfb0",
        "\ud83c\udfb3"
    ],
    "emojies_send_dice_success": {
        "\ud83c\udfaf": {
            "value": 6,
            "frame_start": 62
        },
        "\ud83c\udfc0": {
            "value": 5,
            "frame_start": 110
        },
        "\u26bd": {
            "value": 5,
            "frame_start": 110
        },
        "\u26bd\ufe0f": {
            "value": 5,
            "frame_start": 110
        },
        "\ud83c\udfb0": {
            "value": 64,
            "frame_start": 110
        },
        "\ud83c\udfb3": {
            "value": 6,
            "frame_start": 110
        }
    },
    "emojies_sounds": {
        "\ud83c\udf83": {
            "id": "4956223179606458539",
            "access_hash": "-2107001400913062971",
            "file_reference_base64": "AGFhvoKbftK5O9K9RpgN1ZtgSzWy"
        },
        "\u26b0": {
            "id": "4956223179606458540",
            "access_hash": "-1498869544183595185",
            "file_reference_base64": "AGFhvoJIm8Uz0qSMIdm3AsKlK7wJ"
        },
        "\ud83e\udddf\u200d\u2642": {
            "id": "4960929110848176331",
            "access_hash": "3986395821757915468",
            "file_reference_base64": "AGFhvoLtXSSIclmvfg6ePz3KsHQF"
        },
        "\ud83e\udddf": {
            "id": "4960929110848176332",
            "access_hash": "-8929417974289765626",
            "file_reference_base64": "AGFhvoImaz5Umt4GvMUD5nocIu0W"
        },
        "\ud83e\udddf\u200d\u2640": {
            "id": "4960929110848176333",
            "access_hash": "9161696144162881753",
            "file_reference_base64": "AGFhvoIm1QZsb48xlpRfh4Mq7EMG"
        },
        "\ud83c\udf51": {
            "id": "4963180910661861548",
            "access_hash": "-7431729439735063448",
            "file_reference_base64": "AGFhvoKLrwl_WKr5LR0Jjs7o3RyT"
        },
        "\ud83c\udf8a": {
            "id": "5094064004578410732",
            "access_hash": "8518192996098758509",
            "file_reference_base64": "AGFhvoKMNffRV2J3vKED0O6d8e42"
        },
        "\ud83c\udf84": {
            "id": "5094064004578410733",
            "access_hash": "-4142643820629256996",
            "file_reference_base64": "AGFhvoJ1ulPBbXEURlTZWwJFx6xZ"
        },
        "\ud83e\uddbe": {
            "id": "5094064004578410734",
            "access_hash": "-8934384022571962340",
            "file_reference_base64": "AGFhvoL4zdMRmYv9z3L8KPaX4JQL"
        }
    },
    "gif_search_branding": "tenor",
    "gif_search_emojies": [
        "\ud83d\udc4d",
        "\ud83d\ude18",
        "\ud83d\ude0d",
        "\ud83d\
    
func TestDecodeAppConfig(t *testing.T) {
	a := require.New(t)

	var appConfig AppConfig

	obj, err := Decode(jx.DecodeStr(example))
	a.NoError(err)
	a.NoError(appConfig.DecodeJSONValue(obj))
	a.Equal(AppConfig{
		Test:                1,
		EmojiesAnimatedZoom: 0.625000,
		EmojiesSendDice: []string{
			"üé≤",
			"üéØ",
			"üèÄ",
			"‚öΩ",
			"‚öΩÔ∏è",
			"üé∞",
			"üé≥",
		},
		EmojiesSendDiceSuccess: map[string]EmojiSendDiceSuccess{
			"‚öΩ": {
				Value:      5,
				FrameStart: 110,
			},
			"‚öΩÔ∏è": {
				Value:      5,
				FrameStart: 110,
			},
			"üéØ": {
				Value:      6,
				FrameStart: 62,
			},
			"üé∞": {
				Value:      64,
				FrameStart: 110,
			},
			"üé≥": {
				Value:      6,
				FrameStart: 110,
			},
			"üèÄ": {
				Value:      5,
				FrameStart: 110,
			},
		},
		EmojiesSounds: map[string]EmojiSound{
			"‚ö∞": {
				ID:         4956223179606458540,
				AccessHash: -1498869544183595185,
				FileReference: []uint8{
					0x00, 0x61, 0x61, 0xbe, 0x82, 0x48, 0x9b, 0xc5, 0x33, 0xd2, 0xa4, 0x8c, 0x21, 0xd9, 0xb7, 0x02,
					0xc2, 0xa5, 0x2b, 0xbc, 0x09,
				},
			},
			"üçë": {
				ID:         4963180910661861548,
				AccessHash: -7431729439735063448,
				FileReference: []uint8{
					0x00, 0x61, 0x61, 0xbe, 0x82, 0x8b, 0xaf, 0x09, 0x7f, 0x58, 0xaa, 0xf9, 0x2d, 0x1d, 0x09, 0x8e,
					0xce, 0xe8, 0xdd, 0x1c, 0x93,
				},
			},
			"üéÉ": {
				ID:         4956223179606458539,
				AccessHash: -2107001400913062971,
				FileReference: []uint8{
					0x00, 0x61, 0x61, 0xbe, 0x82, 0x9b, 0x7e, 0xd2, 0xb9, 0x3b, 0xd2, 0xbd, 0x46, 0x98, 0x0d, 0xd5,
					0x9b, 0x60, 0x4b, 0x35, 0xb2,
				},
			},
			"üéÑ": {
				ID:         5094064004578410733,
				AccessHash: -4142643820629256996,
				FileReference: []uint8{
					0x00, 0x61, 0x61, 0xbe, 0x82, 0x75, 0xba, 0x53, 0xc1, 0x6d, 0x71, 0x14, 0x46, 0x54, 0xd9, 0x5b,
					0x02, 0x45, 0xc7, 0xac, 0x59,
				},
			},
			"üéä": {
				ID:         5094064004578410732,
				AccessHash: 8518192996098758509,
				FileReference: []uint8{
					0x00, 0x61, 0x61, 0xbe, 0x82, 0x8c, 0x35, 0xf7, 0xd1, 0x57, 0x62, 0x77, 0xbc, 0xa1, 0x03, 0xd0,
					0xee, 0x9d, 0xf1, 0xee, 0x36,
				},
			},
			"ü¶æ": {
				ID:         5094064004578410734,
				AccessHash: -8934384022571962340,
				FileReference: []uint8{
					0x00, 0x61, 0x61, 0xbe, 0x82, 0xf8, 0xcd, 0xd3, 0x11, 0x99, 0x8b, 0xfd, 0xcf, 0x72, 0xfc, 0x28,
					0xf6, 0x97, 0xe0, 0x94, 0x0b,
				},
			},
			"üßü": {
				ID:         4960929110848176332,
				AccessHash: -8929417974289765626,
				FileReference: []uint8{
					0x00, 0x61, 0x61, 0xbe, 0x82, 0x26, 0x6b, 0x3e, 0x54, 0x9a, 0xde, 0x06, 0xbc, 0xc5, 0x03, 0xe6,
					0x7a, 0x1c, 0x22, 0xed, 0x16,
				},
			},
			"üßü\u200d‚ôÄ": {
				ID:         4960929110848176333,
				AccessHash: 9161696144162881753,
				FileReference: []uint8{
					0x00, 0x61, 0x61, 0xbe, 0x82, 0x26, 0xd5, 0x06, 0x6c, 0x6f, 0x8f, 0x31, 0x96, 0x94, 0x5f, 0x87,
					0x83, 0x2a, 0xec, 0x43, 0x06,
				},
			},
			"üßü\u200d‚ôÇ": {
				ID:         4960929110848176331,
				AccessHash: 3986395821757915468,
				FileReference: []uint8{
					0x00, 0x61, 0x61, 0xbe, 0x82, 0xed, 0x5d, 0x24, 0x88, 0x72, 0x59, 0xaf, 0x7e, 0x0e, 0x9e, 0x3f,
					0x3d, 0xca, 0xb0, 0x74, 0x05,
				},
			},
		},
		GIFSearchBranding: "tenor",
		GIFSearchEmojies: []string{
			"üëç",
			"üòò",
			"üòç",
			"üò°",
			"ü•≥",
			"üòÇ",
			"üòÆ",
			"üôÑ",
			"üòé",
			"üëé",
		},
		StickersEmojiSuggestOnlyAPI:   false,
		StickersEmojiCacheTime:        86400,
		GroupCallVideoParticipantsMax: 1234,
		YoutubePIP:                    "abc",
		QRLoginCamera:                 false,
		QRLoginCode:                   "disabled",
		DialogFiltersEnabled:          true,
		DialogFiltersTooltip:          false,
		AutoArchiveSettingAvailable:   false,
		PendingSuggestions: []string{
			"AUTOARCHIVE_POPULAR",
			"VALIDATE_PASSWORD",
			"VALIDATE_PHONE_NUMBER",
			"NEWCOMER_TICKS",
		},
		AutologinToken: "string",
		AutologinDomains: []string{
			"instantview.telegram.org",
			"translations.telegram.org",
			"contest.dev",
			"contest.com",
			"bugs.telegram.org",
			"suggestions.telegram.org",
			"themes.telegram.org",
		},
		URLAuthDomains: []string{
			"somedomain.telegram.org",
		},
		RoundVideoEncoding: RoundVideoEncoding{
			Diameter:     384,
			VideoBitrate: 1000,
			AudioBitrate: 64,
			MaxSize:      12582912,
		},
		ChatReadMarkExpirePeriod:  604800,
		ChatReadMarkSizeThreshold: 50,
		Unparsed: map[string]tg.JSONValueClass{
			"unknown": &tg.JSONNull{},
		},
	}, appConfig)
}