@putdotio/design 2.0.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1813,6 +1813,27 @@
1813
1813
  "mode": "dark"
1814
1814
  }
1815
1815
  }
1816
+ },
1817
+ "badgeBackground": {
1818
+ "$type": "color",
1819
+ "$value": "hsl(358, 70%, 45%)",
1820
+ "$description": "Unread count disc — darkened red so white numerals clear AA at 9px. Fixed in both modes.",
1821
+ "$extensions": {
1822
+ "putio": {
1823
+ "cssName": "notification-badge-bg",
1824
+ "mode": "global"
1825
+ }
1826
+ }
1827
+ },
1828
+ "badgeForeground": {
1829
+ "$type": "color",
1830
+ "$value": "{component.alias.destructiveForeground}",
1831
+ "$extensions": {
1832
+ "putio": {
1833
+ "cssName": "notification-badge-fg",
1834
+ "mode": "global"
1835
+ }
1836
+ }
1816
1837
  }
1817
1838
  },
1818
1839
  "menu": {
@@ -2324,6 +2345,741 @@
2324
2345
  }
2325
2346
  }
2326
2347
  }
2348
+ },
2349
+ "avatar": {
2350
+ "yellow": {
2351
+ "$type": "color",
2352
+ "$value": "{color.brand.yellow}",
2353
+ "$description": "Initial-on-color avatar palette. Fixed in both modes; the chip carries its own contrast.",
2354
+ "$extensions": {
2355
+ "putio": {
2356
+ "cssName": "avatar-yellow",
2357
+ "mode": "global"
2358
+ }
2359
+ }
2360
+ },
2361
+ "green": {
2362
+ "$type": "color",
2363
+ "$value": "hsl(151, 55%, 33%)",
2364
+ "$extensions": {
2365
+ "putio": {
2366
+ "cssName": "avatar-green",
2367
+ "mode": "global"
2368
+ }
2369
+ }
2370
+ },
2371
+ "red": {
2372
+ "$type": "color",
2373
+ "$value": "hsl(358, 55%, 46%)",
2374
+ "$extensions": {
2375
+ "putio": {
2376
+ "cssName": "avatar-red",
2377
+ "mode": "global"
2378
+ }
2379
+ }
2380
+ },
2381
+ "blue": {
2382
+ "$type": "color",
2383
+ "$value": "hsl(211, 55%, 46%)",
2384
+ "$extensions": {
2385
+ "putio": {
2386
+ "cssName": "avatar-blue",
2387
+ "mode": "global"
2388
+ }
2389
+ }
2390
+ },
2391
+ "purple": {
2392
+ "$type": "color",
2393
+ "$value": "hsl(280, 48%, 46%)",
2394
+ "$extensions": {
2395
+ "putio": {
2396
+ "cssName": "avatar-purple",
2397
+ "mode": "global"
2398
+ }
2399
+ }
2400
+ },
2401
+ "teal": {
2402
+ "$type": "color",
2403
+ "$value": "hsl(168, 55%, 33%)",
2404
+ "$extensions": {
2405
+ "putio": {
2406
+ "cssName": "avatar-teal",
2407
+ "mode": "global"
2408
+ }
2409
+ }
2410
+ },
2411
+ "orange": {
2412
+ "$type": "color",
2413
+ "$value": "hsl(28, 80%, 55%)",
2414
+ "$extensions": {
2415
+ "putio": {
2416
+ "cssName": "avatar-orange",
2417
+ "mode": "global"
2418
+ }
2419
+ }
2420
+ },
2421
+ "foreground": {
2422
+ "$type": "color",
2423
+ "$value": "{component.alias.destructiveForeground}",
2424
+ "$description": "White initials — every palette entry except yellow and orange.",
2425
+ "$extensions": {
2426
+ "putio": {
2427
+ "cssName": "avatar-fg",
2428
+ "mode": "global"
2429
+ }
2430
+ }
2431
+ },
2432
+ "foregroundWarm": {
2433
+ "$type": "color",
2434
+ "$value": "{component.alias.primaryForeground}",
2435
+ "$description": "Warm dark initials on yellow and orange.",
2436
+ "$extensions": {
2437
+ "putio": {
2438
+ "cssName": "avatar-fg-warm",
2439
+ "mode": "global"
2440
+ }
2441
+ }
2442
+ }
2443
+ },
2444
+ "alert": {
2445
+ "radius": {
2446
+ "$type": "dimension",
2447
+ "$value": "{radius.default}",
2448
+ "$description": "Inline, in-page messaging. Persists until the condition clears — a toast does not.",
2449
+ "$extensions": {
2450
+ "putio": {
2451
+ "cssName": "alert-radius",
2452
+ "mode": "global"
2453
+ }
2454
+ }
2455
+ },
2456
+ "infoBackground": {
2457
+ "$type": "color",
2458
+ "$value": "{color.neutral.light.bgSecondary}",
2459
+ "$extensions": {
2460
+ "putio": {
2461
+ "cssName": "alert-info-bg",
2462
+ "mode": "light"
2463
+ }
2464
+ }
2465
+ },
2466
+ "infoBackgroundDark": {
2467
+ "$type": "color",
2468
+ "$value": "{color.neutral.dark.bgSecondary}",
2469
+ "$extensions": {
2470
+ "putio": {
2471
+ "cssName": "alert-info-bg",
2472
+ "mode": "dark"
2473
+ }
2474
+ }
2475
+ },
2476
+ "infoBorder": {
2477
+ "$type": "color",
2478
+ "$value": "{color.neutral.light.line}",
2479
+ "$extensions": {
2480
+ "putio": {
2481
+ "cssName": "alert-info-border",
2482
+ "mode": "light"
2483
+ }
2484
+ }
2485
+ },
2486
+ "infoBorderDark": {
2487
+ "$type": "color",
2488
+ "$value": "{color.neutral.dark.line}",
2489
+ "$extensions": {
2490
+ "putio": {
2491
+ "cssName": "alert-info-border",
2492
+ "mode": "dark"
2493
+ }
2494
+ }
2495
+ },
2496
+ "infoText": {
2497
+ "$type": "color",
2498
+ "$value": "{color.neutral.light.text}",
2499
+ "$extensions": {
2500
+ "putio": {
2501
+ "cssName": "alert-info-text",
2502
+ "mode": "light"
2503
+ }
2504
+ }
2505
+ },
2506
+ "infoTextDark": {
2507
+ "$type": "color",
2508
+ "$value": "{color.neutral.dark.text}",
2509
+ "$extensions": {
2510
+ "putio": {
2511
+ "cssName": "alert-info-text",
2512
+ "mode": "dark"
2513
+ }
2514
+ }
2515
+ },
2516
+ "infoBody": {
2517
+ "$type": "color",
2518
+ "$value": "{color.neutral.light.textSecondary}",
2519
+ "$extensions": {
2520
+ "putio": {
2521
+ "cssName": "alert-info-body",
2522
+ "mode": "light"
2523
+ }
2524
+ }
2525
+ },
2526
+ "infoBodyDark": {
2527
+ "$type": "color",
2528
+ "$value": "{color.neutral.dark.textSecondary}",
2529
+ "$extensions": {
2530
+ "putio": {
2531
+ "cssName": "alert-info-body",
2532
+ "mode": "dark"
2533
+ }
2534
+ }
2535
+ },
2536
+ "infoIcon": {
2537
+ "$type": "color",
2538
+ "$value": "{color.neutral.light.textSecondary}",
2539
+ "$extensions": {
2540
+ "putio": {
2541
+ "cssName": "alert-info-icon",
2542
+ "mode": "light"
2543
+ }
2544
+ }
2545
+ },
2546
+ "infoIconDark": {
2547
+ "$type": "color",
2548
+ "$value": "{color.neutral.dark.textSecondary}",
2549
+ "$extensions": {
2550
+ "putio": {
2551
+ "cssName": "alert-info-icon",
2552
+ "mode": "dark"
2553
+ }
2554
+ }
2555
+ },
2556
+ "brandBackground": {
2557
+ "$type": "color",
2558
+ "$value": "{color.yellow.light.componentBg}",
2559
+ "$extensions": {
2560
+ "putio": {
2561
+ "cssName": "alert-brand-bg",
2562
+ "mode": "light"
2563
+ }
2564
+ }
2565
+ },
2566
+ "brandBackgroundDark": {
2567
+ "$type": "color",
2568
+ "$value": "{color.yellow.dark.componentBg}",
2569
+ "$extensions": {
2570
+ "putio": {
2571
+ "cssName": "alert-brand-bg",
2572
+ "mode": "dark"
2573
+ }
2574
+ }
2575
+ },
2576
+ "brandBorder": {
2577
+ "$type": "color",
2578
+ "$value": "{color.yellow.light.border}",
2579
+ "$extensions": {
2580
+ "putio": {
2581
+ "cssName": "alert-brand-border",
2582
+ "mode": "light"
2583
+ }
2584
+ }
2585
+ },
2586
+ "brandBorderDark": {
2587
+ "$type": "color",
2588
+ "$value": "{color.yellow.dark.border}",
2589
+ "$extensions": {
2590
+ "putio": {
2591
+ "cssName": "alert-brand-border",
2592
+ "mode": "dark"
2593
+ }
2594
+ }
2595
+ },
2596
+ "brandText": {
2597
+ "$type": "color",
2598
+ "$value": "{color.yellow.light.text}",
2599
+ "$extensions": {
2600
+ "putio": {
2601
+ "cssName": "alert-brand-text",
2602
+ "mode": "light"
2603
+ }
2604
+ }
2605
+ },
2606
+ "brandTextDark": {
2607
+ "$type": "color",
2608
+ "$value": "{color.yellow.dark.text}",
2609
+ "$extensions": {
2610
+ "putio": {
2611
+ "cssName": "alert-brand-text",
2612
+ "mode": "dark"
2613
+ }
2614
+ }
2615
+ },
2616
+ "brandBody": {
2617
+ "$type": "color",
2618
+ "$value": "{color.yellow.light.textSecondary}",
2619
+ "$extensions": {
2620
+ "putio": {
2621
+ "cssName": "alert-brand-body",
2622
+ "mode": "light"
2623
+ }
2624
+ }
2625
+ },
2626
+ "brandBodyDark": {
2627
+ "$type": "color",
2628
+ "$value": "{color.yellow.dark.textSecondary}",
2629
+ "$extensions": {
2630
+ "putio": {
2631
+ "cssName": "alert-brand-body",
2632
+ "mode": "dark"
2633
+ }
2634
+ }
2635
+ },
2636
+ "brandIcon": {
2637
+ "$type": "color",
2638
+ "$value": "{color.yellow.light.textSecondary}",
2639
+ "$extensions": {
2640
+ "putio": {
2641
+ "cssName": "alert-brand-icon",
2642
+ "mode": "light"
2643
+ }
2644
+ }
2645
+ },
2646
+ "brandIconDark": {
2647
+ "$type": "color",
2648
+ "$value": "{color.yellow.dark.textSecondary}",
2649
+ "$extensions": {
2650
+ "putio": {
2651
+ "cssName": "alert-brand-icon",
2652
+ "mode": "dark"
2653
+ }
2654
+ }
2655
+ },
2656
+ "successBackground": {
2657
+ "$type": "color",
2658
+ "$value": "{color.green.light.componentBg}",
2659
+ "$extensions": {
2660
+ "putio": {
2661
+ "cssName": "alert-success-bg",
2662
+ "mode": "light"
2663
+ }
2664
+ }
2665
+ },
2666
+ "successBackgroundDark": {
2667
+ "$type": "color",
2668
+ "$value": "{color.green.dark.componentBg}",
2669
+ "$extensions": {
2670
+ "putio": {
2671
+ "cssName": "alert-success-bg",
2672
+ "mode": "dark"
2673
+ }
2674
+ }
2675
+ },
2676
+ "successBorder": {
2677
+ "$type": "color",
2678
+ "$value": "{color.green.light.border}",
2679
+ "$extensions": {
2680
+ "putio": {
2681
+ "cssName": "alert-success-border",
2682
+ "mode": "light"
2683
+ }
2684
+ }
2685
+ },
2686
+ "successBorderDark": {
2687
+ "$type": "color",
2688
+ "$value": "{color.green.dark.border}",
2689
+ "$extensions": {
2690
+ "putio": {
2691
+ "cssName": "alert-success-border",
2692
+ "mode": "dark"
2693
+ }
2694
+ }
2695
+ },
2696
+ "successText": {
2697
+ "$type": "color",
2698
+ "$value": "{color.green.light.text}",
2699
+ "$extensions": {
2700
+ "putio": {
2701
+ "cssName": "alert-success-text",
2702
+ "mode": "light"
2703
+ }
2704
+ }
2705
+ },
2706
+ "successTextDark": {
2707
+ "$type": "color",
2708
+ "$value": "{color.green.dark.text}",
2709
+ "$extensions": {
2710
+ "putio": {
2711
+ "cssName": "alert-success-text",
2712
+ "mode": "dark"
2713
+ }
2714
+ }
2715
+ },
2716
+ "successBody": {
2717
+ "$type": "color",
2718
+ "$value": "{color.green.light.textSecondary}",
2719
+ "$extensions": {
2720
+ "putio": {
2721
+ "cssName": "alert-success-body",
2722
+ "mode": "light"
2723
+ }
2724
+ }
2725
+ },
2726
+ "successBodyDark": {
2727
+ "$type": "color",
2728
+ "$value": "{color.green.dark.textSecondary}",
2729
+ "$extensions": {
2730
+ "putio": {
2731
+ "cssName": "alert-success-body",
2732
+ "mode": "dark"
2733
+ }
2734
+ }
2735
+ },
2736
+ "successIcon": {
2737
+ "$type": "color",
2738
+ "$value": "{color.green.light.textSecondary}",
2739
+ "$extensions": {
2740
+ "putio": {
2741
+ "cssName": "alert-success-icon",
2742
+ "mode": "light"
2743
+ }
2744
+ }
2745
+ },
2746
+ "successIconDark": {
2747
+ "$type": "color",
2748
+ "$value": "{color.green.dark.textSecondary}",
2749
+ "$extensions": {
2750
+ "putio": {
2751
+ "cssName": "alert-success-icon",
2752
+ "mode": "dark"
2753
+ }
2754
+ }
2755
+ },
2756
+ "dangerBackground": {
2757
+ "$type": "color",
2758
+ "$value": "{color.red.light.componentBg}",
2759
+ "$extensions": {
2760
+ "putio": {
2761
+ "cssName": "alert-danger-bg",
2762
+ "mode": "light"
2763
+ }
2764
+ }
2765
+ },
2766
+ "dangerBackgroundDark": {
2767
+ "$type": "color",
2768
+ "$value": "{color.red.dark.componentBg}",
2769
+ "$extensions": {
2770
+ "putio": {
2771
+ "cssName": "alert-danger-bg",
2772
+ "mode": "dark"
2773
+ }
2774
+ }
2775
+ },
2776
+ "dangerBorder": {
2777
+ "$type": "color",
2778
+ "$value": "{color.red.light.border}",
2779
+ "$extensions": {
2780
+ "putio": {
2781
+ "cssName": "alert-danger-border",
2782
+ "mode": "light"
2783
+ }
2784
+ }
2785
+ },
2786
+ "dangerBorderDark": {
2787
+ "$type": "color",
2788
+ "$value": "{color.red.dark.border}",
2789
+ "$extensions": {
2790
+ "putio": {
2791
+ "cssName": "alert-danger-border",
2792
+ "mode": "dark"
2793
+ }
2794
+ }
2795
+ },
2796
+ "dangerText": {
2797
+ "$type": "color",
2798
+ "$value": "{color.red.light.text}",
2799
+ "$extensions": {
2800
+ "putio": {
2801
+ "cssName": "alert-danger-text",
2802
+ "mode": "light"
2803
+ }
2804
+ }
2805
+ },
2806
+ "dangerTextDark": {
2807
+ "$type": "color",
2808
+ "$value": "{color.red.dark.text}",
2809
+ "$extensions": {
2810
+ "putio": {
2811
+ "cssName": "alert-danger-text",
2812
+ "mode": "dark"
2813
+ }
2814
+ }
2815
+ },
2816
+ "dangerBody": {
2817
+ "$type": "color",
2818
+ "$value": "{color.red.light.textSecondary}",
2819
+ "$extensions": {
2820
+ "putio": {
2821
+ "cssName": "alert-danger-body",
2822
+ "mode": "light"
2823
+ }
2824
+ }
2825
+ },
2826
+ "dangerBodyDark": {
2827
+ "$type": "color",
2828
+ "$value": "{color.red.dark.textSecondary}",
2829
+ "$extensions": {
2830
+ "putio": {
2831
+ "cssName": "alert-danger-body",
2832
+ "mode": "dark"
2833
+ }
2834
+ }
2835
+ },
2836
+ "dangerIcon": {
2837
+ "$type": "color",
2838
+ "$value": "{color.red.light.textSecondary}",
2839
+ "$extensions": {
2840
+ "putio": {
2841
+ "cssName": "alert-danger-icon",
2842
+ "mode": "light"
2843
+ }
2844
+ }
2845
+ },
2846
+ "dangerIconDark": {
2847
+ "$type": "color",
2848
+ "$value": "{color.red.dark.textSecondary}",
2849
+ "$extensions": {
2850
+ "putio": {
2851
+ "cssName": "alert-danger-icon",
2852
+ "mode": "dark"
2853
+ }
2854
+ }
2855
+ }
2856
+ },
2857
+ "slider": {
2858
+ "track": {
2859
+ "$type": "color",
2860
+ "$value": "{color.neutral.light.componentBgActive}",
2861
+ "$description": "Seek, volume, stepped numeric. The buffered band is what makes it a scrubber.",
2862
+ "$extensions": {
2863
+ "putio": {
2864
+ "cssName": "slider-track",
2865
+ "mode": "light"
2866
+ }
2867
+ }
2868
+ },
2869
+ "trackDark": {
2870
+ "$type": "color",
2871
+ "$value": "{color.neutral.dark.componentBgActive}",
2872
+ "$extensions": {
2873
+ "putio": {
2874
+ "cssName": "slider-track",
2875
+ "mode": "dark"
2876
+ }
2877
+ }
2878
+ },
2879
+ "buffer": {
2880
+ "$type": "color",
2881
+ "$value": "{color.neutral.light.border}",
2882
+ "$extensions": {
2883
+ "putio": {
2884
+ "cssName": "slider-buffer",
2885
+ "mode": "light"
2886
+ }
2887
+ }
2888
+ },
2889
+ "bufferDark": {
2890
+ "$type": "color",
2891
+ "$value": "{color.neutral.dark.border}",
2892
+ "$extensions": {
2893
+ "putio": {
2894
+ "cssName": "slider-buffer",
2895
+ "mode": "dark"
2896
+ }
2897
+ }
2898
+ },
2899
+ "fill": {
2900
+ "$type": "color",
2901
+ "$value": "{color.brand.yellow}",
2902
+ "$extensions": {
2903
+ "putio": {
2904
+ "cssName": "slider-fill",
2905
+ "mode": "global"
2906
+ }
2907
+ }
2908
+ },
2909
+ "knob": {
2910
+ "$type": "color",
2911
+ "$value": "{color.brand.yellow}",
2912
+ "$extensions": {
2913
+ "putio": {
2914
+ "cssName": "slider-knob",
2915
+ "mode": "global"
2916
+ }
2917
+ }
2918
+ },
2919
+ "fillDisabled": {
2920
+ "$type": "color",
2921
+ "$value": "{color.neutral.light.textSecondary}",
2922
+ "$extensions": {
2923
+ "putio": {
2924
+ "cssName": "slider-fill-disabled",
2925
+ "mode": "light"
2926
+ }
2927
+ }
2928
+ },
2929
+ "fillDisabledDark": {
2930
+ "$type": "color",
2931
+ "$value": "{color.neutral.dark.textSecondary}",
2932
+ "$extensions": {
2933
+ "putio": {
2934
+ "cssName": "slider-fill-disabled",
2935
+ "mode": "dark"
2936
+ }
2937
+ }
2938
+ },
2939
+ "trackHeight": {
2940
+ "$type": "dimension",
2941
+ "$value": "4px",
2942
+ "$extensions": {
2943
+ "putio": {
2944
+ "cssName": "slider-track-height",
2945
+ "mode": "global"
2946
+ }
2947
+ }
2948
+ },
2949
+ "knobSize": {
2950
+ "$type": "dimension",
2951
+ "$value": "14px",
2952
+ "$extensions": {
2953
+ "putio": {
2954
+ "cssName": "slider-knob-size",
2955
+ "mode": "global"
2956
+ }
2957
+ }
2958
+ },
2959
+ "hitHeight": {
2960
+ "$type": "dimension",
2961
+ "$value": "20px",
2962
+ "$description": "44px on touch — the knob grows, the track does not.",
2963
+ "$extensions": {
2964
+ "putio": {
2965
+ "cssName": "slider-hit-height",
2966
+ "mode": "global"
2967
+ }
2968
+ }
2969
+ }
2970
+ },
2971
+ "pagination": {
2972
+ "itemSize": {
2973
+ "$type": "dimension",
2974
+ "$value": "30px",
2975
+ "$description": "Numbered paging. Load-more and infinite scroll carry no chrome of their own.",
2976
+ "$extensions": {
2977
+ "putio": {
2978
+ "cssName": "pagination-item-size",
2979
+ "mode": "global"
2980
+ }
2981
+ }
2982
+ },
2983
+ "itemText": {
2984
+ "$type": "color",
2985
+ "$value": "{color.neutral.light.textSecondary}",
2986
+ "$extensions": {
2987
+ "putio": {
2988
+ "cssName": "pagination-item-text",
2989
+ "mode": "light"
2990
+ }
2991
+ }
2992
+ },
2993
+ "itemTextDark": {
2994
+ "$type": "color",
2995
+ "$value": "{color.neutral.dark.textSecondary}",
2996
+ "$extensions": {
2997
+ "putio": {
2998
+ "cssName": "pagination-item-text",
2999
+ "mode": "dark"
3000
+ }
3001
+ }
3002
+ },
3003
+ "itemTextActive": {
3004
+ "$type": "color",
3005
+ "$value": "{color.neutral.light.text}",
3006
+ "$extensions": {
3007
+ "putio": {
3008
+ "cssName": "pagination-item-text-active",
3009
+ "mode": "light"
3010
+ }
3011
+ }
3012
+ },
3013
+ "itemTextActiveDark": {
3014
+ "$type": "color",
3015
+ "$value": "{color.neutral.dark.text}",
3016
+ "$extensions": {
3017
+ "putio": {
3018
+ "cssName": "pagination-item-text-active",
3019
+ "mode": "dark"
3020
+ }
3021
+ }
3022
+ },
3023
+ "itemBackgroundHover": {
3024
+ "$type": "color",
3025
+ "$value": "{color.neutral.light.componentBgHover}",
3026
+ "$extensions": {
3027
+ "putio": {
3028
+ "cssName": "pagination-item-bg-hover",
3029
+ "mode": "light"
3030
+ }
3031
+ }
3032
+ },
3033
+ "itemBackgroundHoverDark": {
3034
+ "$type": "color",
3035
+ "$value": "{color.neutral.dark.componentBgHover}",
3036
+ "$extensions": {
3037
+ "putio": {
3038
+ "cssName": "pagination-item-bg-hover",
3039
+ "mode": "dark"
3040
+ }
3041
+ }
3042
+ },
3043
+ "itemBackgroundActive": {
3044
+ "$type": "color",
3045
+ "$value": "{color.neutral.light.componentBgActive}",
3046
+ "$extensions": {
3047
+ "putio": {
3048
+ "cssName": "pagination-item-bg-active",
3049
+ "mode": "light"
3050
+ }
3051
+ }
3052
+ },
3053
+ "itemBackgroundActiveDark": {
3054
+ "$type": "color",
3055
+ "$value": "{color.neutral.dark.componentBgActive}",
3056
+ "$extensions": {
3057
+ "putio": {
3058
+ "cssName": "pagination-item-bg-active",
3059
+ "mode": "dark"
3060
+ }
3061
+ }
3062
+ },
3063
+ "itemBorderActive": {
3064
+ "$type": "color",
3065
+ "$value": "{color.neutral.light.border}",
3066
+ "$extensions": {
3067
+ "putio": {
3068
+ "cssName": "pagination-item-border-active",
3069
+ "mode": "light"
3070
+ }
3071
+ }
3072
+ },
3073
+ "itemBorderActiveDark": {
3074
+ "$type": "color",
3075
+ "$value": "{color.neutral.dark.border}",
3076
+ "$extensions": {
3077
+ "putio": {
3078
+ "cssName": "pagination-item-border-active",
3079
+ "mode": "dark"
3080
+ }
3081
+ }
3082
+ }
2327
3083
  }
2328
3084
  }
2329
3085
  }