diff --git a/Telegram/BUILD b/Telegram/BUILD
index 5c375fe768..166d2c6f6e 100644
--- a/Telegram/BUILD
+++ b/Telegram/BUILD
@@ -1692,6 +1692,8 @@ plist_fragment(
UIAppFonts
SFCompactRounded-Semibold.otf
+ AremacFS-Regular.otf
+ AremacFS-Semibold.otf
UIBackgroundModes
diff --git a/Telegram/Telegram-iOS/en.lproj/Localizable.strings b/Telegram/Telegram-iOS/en.lproj/Localizable.strings
index 1192cce349..214e01026c 100644
--- a/Telegram/Telegram-iOS/en.lproj/Localizable.strings
+++ b/Telegram/Telegram-iOS/en.lproj/Localizable.strings
@@ -6571,3 +6571,8 @@ Sorry for the inconvenience.";
"TwoFactorRemember.Done.Title" = "Perfect!";
"TwoFactorRemember.Done.Text" = "You still remember your password.";
"TwoFactorRemember.Done.Action" = "Back to Settings";
+
+"VoiceChat.VideoPreviewFrontCamera" = "Front Camera";
+"VoiceChat.VideoPreviewBackCamera" = "Back Camera";
+"VoiceChat.VideoPreviewContinue" = "Continue";
+"VoiceChat.VideoPreviewShareScreenInfo" = "Everything on your screen, including notifications, will be shared.";
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Cancel.imageset/Contents.json b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Cancel.imageset/Contents.json
new file mode 100644
index 0000000000..1e9abf3aa5
--- /dev/null
+++ b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Cancel.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "ic_cam_close.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Cancel.imageset/ic_cam_close.pdf b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Cancel.imageset/ic_cam_close.pdf
new file mode 100644
index 0000000000..e6a89ea929
Binary files /dev/null and b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Cancel.imageset/ic_cam_close.pdf differ
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Contents.json b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Contents.json
new file mode 100644
index 0000000000..6e965652df
--- /dev/null
+++ b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Contents.json
@@ -0,0 +1,9 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ },
+ "properties" : {
+ "provides-namespace" : true
+ }
+}
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOff.imageset/Contents.json b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOff.imageset/Contents.json
new file mode 100644
index 0000000000..3d7da8444b
--- /dev/null
+++ b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOff.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "ic_cam_flashoff (1).pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOff.imageset/ic_cam_flashoff (1).pdf b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOff.imageset/ic_cam_flashoff (1).pdf
new file mode 100644
index 0000000000..883bcd2938
Binary files /dev/null and b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOff.imageset/ic_cam_flashoff (1).pdf differ
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOn.imageset/Contents.json b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOn.imageset/Contents.json
new file mode 100644
index 0000000000..8aacf1b5de
--- /dev/null
+++ b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOn.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "ic_cam_flashon.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOn.imageset/ic_cam_flashon.pdf b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOn.imageset/ic_cam_flashon.pdf
new file mode 100644
index 0000000000..25896a3a6e
Binary files /dev/null and b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/FlashOn.imageset/ic_cam_flashon.pdf differ
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Flip.imageset/Contents.json b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Flip.imageset/Contents.json
new file mode 100644
index 0000000000..e6f1b93d3e
--- /dev/null
+++ b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Flip.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "ic_cam_flip.pdf",
+ "idiom" : "universal"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Flip.imageset/ic_cam_flip.pdf b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Flip.imageset/ic_cam_flip.pdf
new file mode 100644
index 0000000000..5084218a29
Binary files /dev/null and b/submodules/LegacyComponents/LegacyImages.xcassets/Camera/Flip.imageset/ic_cam_flip.pdf differ
diff --git a/submodules/LegacyComponents/LegacyImages.xcassets/Contents.json b/submodules/LegacyComponents/LegacyImages.xcassets/Contents.json
index da4a164c91..73c00596a7 100644
--- a/submodules/LegacyComponents/LegacyImages.xcassets/Contents.json
+++ b/submodules/LegacyComponents/LegacyImages.xcassets/Contents.json
@@ -1,6 +1,6 @@
{
"info" : {
- "version" : 1,
- "author" : "xcode"
+ "author" : "xcode",
+ "version" : 1
}
-}
\ No newline at end of file
+}
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/LegacyComponents.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/LegacyComponents.h
index 92120ba582..df30d859e9 100644
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/LegacyComponents.h
+++ b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/LegacyComponents.h
@@ -80,7 +80,6 @@
#import
#import
#import
-#import
#import
#import
#import
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCamera.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCamera.h
index 23ac166b8d..b6465ca803 100644
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCamera.h
+++ b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCamera.h
@@ -26,7 +26,8 @@ typedef enum
PGCameraModeVideo,
PGCameraModeSquarePhoto,
PGCameraModeSquareVideo,
- PGCameraModeSquareSwing
+ PGCameraModeSquareSwing,
+ PGCameraModePhotoScan
} PGCameraMode;
typedef enum
@@ -132,4 +133,7 @@ typedef enum
+ (PGCameraAuthorizationStatus)cameraAuthorizationStatus;
+ (PGMicrophoneAuthorizationStatus)microphoneAuthorizationStatus;
++ (bool)isPhotoCameraMode:(PGCameraMode)mode;
++ (bool)isVideoCameraMode:(PGCameraMode)mode;
+
@end
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCameraCaptureSession.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCameraCaptureSession.h
index 92c90b3592..9269470d96 100644
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCameraCaptureSession.h
+++ b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCameraCaptureSession.h
@@ -3,6 +3,7 @@
#import
@class PGCameraMovieWriter;
+@class PGRectangleDetector;
@interface PGCameraCaptureSession : AVCaptureSession
@@ -12,6 +13,7 @@
@property (nonatomic, readonly) AVCaptureAudioDataOutput *audioOutput;
@property (nonatomic, readonly) AVCaptureMetadataOutput *metadataOutput;
@property (nonatomic, readonly) PGCameraMovieWriter *movieWriter;
+@property (nonatomic, readonly) PGRectangleDetector *rectangleDetector;
@property (nonatomic, assign) bool alwaysSetFlash;
@property (nonatomic, assign) PGCameraMode currentMode;
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCameraShotMetadata.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCameraShotMetadata.h
index 59a07a7051..7243b67cf3 100644
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCameraShotMetadata.h
+++ b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGCameraShotMetadata.h
@@ -1,9 +1,12 @@
#import
#import
+@class PGRectangle;
+
@interface PGCameraShotMetadata : NSObject
@property (nonatomic, assign) CGFloat deviceAngle;
+@property (nonatomic, strong) PGRectangle *rectangle;
+ (CGFloat)relativeDeviceAngleFromAngle:(CGFloat)angle orientation:(UIInterfaceOrientation)orientation;
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGPhotoEditorValues.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGPhotoEditorValues.h
index 3e01cb40f6..12a0296d78 100644
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGPhotoEditorValues.h
+++ b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/PGPhotoEditorValues.h
@@ -1,9 +1,16 @@
#import
@class TGPaintingData;
+@class PGRectangle;
@interface PGPhotoEditorValues : NSObject
+@property (nonatomic, readonly) PGRectangle *cropRectangle;
+@property (nonatomic, readonly) CGSize cropSize;
+@property (nonatomic, readonly) bool enhanceDocument;
+
++ (instancetype)editorValuesWithOriginalSize:(CGSize)originalSize cropRectangle:(PGRectangle *)cropRectangle cropOrientation:(UIImageOrientation)cropOrientation cropSize:(CGSize)cropSize enhanceDocument:(bool)enhanceDocument paintingData:(TGPaintingData *)paintingData;
+
+ (instancetype)editorValuesWithOriginalSize:(CGSize)originalSize cropRect:(CGRect)cropRect cropRotation:(CGFloat)cropRotation cropOrientation:(UIImageOrientation)cropOrientation cropLockedAspectRatio:(CGFloat)cropLockedAspectRatio cropMirrored:(bool)cropMirrored toolValues:(NSDictionary *)toolValues paintingData:(TGPaintingData *)paintingData sendAsGif:(bool)sendAsGif;
@end
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraCapturedPhoto.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraCapturedPhoto.h
index 251ff85651..0eb043274a 100644
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraCapturedPhoto.h
+++ b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraCapturedPhoto.h
@@ -3,15 +3,19 @@
#import
@class PGCameraShotMetadata;
+@class PGRectangle;
@interface TGCameraCapturedPhoto : NSObject
@property (nonatomic, readonly) NSURL *url;
@property (nonatomic, readonly) PGCameraShotMetadata *metadata;
+@property (nonatomic, readonly) PGRectangle *rectangle;
- (instancetype)initWithImage:(UIImage *)image metadata:(PGCameraShotMetadata *)metadata;
- (instancetype)initWithExistingImage:(UIImage *)image;
+- (instancetype)initWithImage:(UIImage *)image rectangle:(PGRectangle *)rectangle;
+
- (void)_cleanUp;
@end
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraFlipButton.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraFlipButton.h
index f774b427b9..6cc971ee6b 100644
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraFlipButton.h
+++ b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraFlipButton.h
@@ -2,7 +2,12 @@
@interface TGCameraFlipButton : TGModernButton
-- (instancetype)initWithFrame:(CGRect)frame large:(bool)large;
+- (void)setHidden:(bool)hidden animated:(bool)animated;
+
+@end
+
+@interface TGCameraCancelButton : TGModernButton
+
- (void)setHidden:(bool)hidden animated:(bool)animated;
@end
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraInterfaceAssets.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraInterfaceAssets.h
index ab8c131569..727ade0b88 100644
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraInterfaceAssets.h
+++ b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraInterfaceAssets.h
@@ -10,7 +10,9 @@
+ (UIColor *)panelBackgroundColor;
+ (UIColor *)transparentPanelBackgroundColor;
+ (UIColor *)transparentOverlayBackgroundColor;
++ (UIColor *)buttonColor;
-+ (UIFont *)normalFontOfSize:(CGFloat)size;
++ (UIFont *)regularFontOfSize:(CGFloat)size;
++ (UIFont *)boldFontOfSize:(CGFloat)size;
@end
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraMainView.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraMainView.h
index ab2a225b1e..c116134d7d 100644
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraMainView.h
+++ b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraMainView.h
@@ -10,7 +10,7 @@
@class TGCameraFlipButton;
@class TGCameraTimeCodeView;
@class TGCameraZoomView;
-@class TGCameraSegmentsView;
+@class TGCameraToastView;
@class TGMediaPickerPhotoCounterButton;
@class TGMediaPickerPhotoStripView;
@class TGMediaPickerGallerySelectedItemsModel;
@@ -26,6 +26,8 @@
TGCameraFlipButton *_flipButton;
TGCameraTimeCodeView *_timecodeView;
+ TGCameraToastView *_toastView;
+
TGMediaPickerPhotoCounterButton *_photoCounterButton;
TGMediaPickerPhotoStripView *_selectedPhotosView;
@@ -51,8 +53,6 @@
@property (nonatomic, copy) void(^resultPressed)(NSInteger index);
@property (nonatomic, copy) void(^itemRemoved)(NSInteger index);
-@property (nonatomic, copy) void (^deleteSegmentButtonPressed)(void);
-
@property (nonatomic, copy) NSTimeInterval(^requestedVideoRecordingDuration)(void);
@property (nonatomic, assign) CGRect previewViewFrame;
@@ -64,6 +64,8 @@
- (void)updateForCameraModeChangeWithPreviousMode:(PGCameraMode)previousMode;
- (void)updateForCameraModeChangeAfterResize;
+- (void)setToastMessage:(NSString *)message animated:(bool)animated;
+
- (void)setFlashMode:(PGCameraFlashMode)mode;
- (void)setFlashActive:(bool)active;
- (void)setFlashUnavailable:(bool)unavailable;
diff --git a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraSegmentsView.h b/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraSegmentsView.h
deleted file mode 100644
index b2f0c2ba73..0000000000
--- a/submodules/LegacyComponents/PublicHeaders/LegacyComponents/TGCameraSegmentsView.h
+++ /dev/null
@@ -1,20 +0,0 @@
-#import
-
-@interface TGCameraSegmentsView : UIView
-
-@property (nonatomic, copy) void (^deletePressed)(void);
-
-- (void)setSegments:(NSArray *)segments;
-
-- (void)startCurrentSegment;
-- (void)setCurrentSegment:(CGFloat)length;
-- (void)commitCurrentSegmentWithCompletion:(void (^)(void))completion;
-
-- (void)highlightLastSegment;
-- (void)removeLastSegment;
-
-- (void)setHidden:(bool)hidden animated:(bool)animated delay:(NSTimeInterval)delay;
-
-- (void)setDeleteButtonHidden:(bool)hidden animated:(bool)animated;
-
-@end
diff --git a/submodules/LegacyComponents/Sources/PGCamera.m b/submodules/LegacyComponents/Sources/PGCamera.m
index 6431e15773..d8088a1124 100644
--- a/submodules/LegacyComponents/Sources/PGCamera.m
+++ b/submodules/LegacyComponents/Sources/PGCamera.m
@@ -843,4 +843,14 @@ NSString *const PGCameraAdjustingFocusKey = @"adjustingFocus";
}
}
++ (bool)isPhotoCameraMode:(PGCameraMode)mode
+{
+ return mode == PGCameraModePhoto || mode == PGCameraModeSquarePhoto || mode == PGCameraModePhotoScan;
+}
+
++ (bool)isVideoCameraMode:(PGCameraMode)mode
+{
+ return mode == PGCameraModeVideo || mode == PGCameraModeSquareVideo;
+}
+
@end
diff --git a/submodules/LegacyComponents/Sources/PGCameraCaptureSession.m b/submodules/LegacyComponents/Sources/PGCameraCaptureSession.m
index e651da1ae3..ade29d5063 100644
--- a/submodules/LegacyComponents/Sources/PGCameraCaptureSession.m
+++ b/submodules/LegacyComponents/Sources/PGCameraCaptureSession.m
@@ -1,5 +1,6 @@
#import "PGCameraCaptureSession.h"
#import "PGCameraMovieWriter.h"
+#import "PGRectangleDetector.h"
#import
#import
@@ -261,10 +262,15 @@ const NSInteger PGCameraFrameRate = 30;
{
case PGCameraModePhoto:
case PGCameraModeSquarePhoto:
+ case PGCameraModePhotoScan:
{
[self _removeAudioInputEndAudioSession:true];
self.sessionPreset = AVCaptureSessionPresetPhoto;
[self setFrameRate:0 forDevice:_videoDevice];
+
+ if (mode == PGCameraModePhotoScan) {
+ [self setCurrentCameraPosition:PGCameraPositionRear];
+ }
}
break;
@@ -287,6 +293,14 @@ const NSInteger PGCameraFrameRate = 30;
[self _enableVideoStabilization];
[self commitConfiguration];
+
+ if (mode == PGCameraModePhotoScan) {
+ if (_rectangleDetector == nil) {
+ _rectangleDetector = [[PGRectangleDetector alloc] init];
+ }
+ } else {
+ _rectangleDetector = nil;
+ }
}
- (void)switchToBestVideoFormatForDevice:(AVCaptureDevice *)device
@@ -630,9 +644,11 @@ const NSInteger PGCameraFrameRate = 30;
- (void)setCurrentCameraPosition:(PGCameraPosition)position
{
- NSError *error;
-
AVCaptureDevice *deviceForTargetPosition = [PGCameraCaptureSession _deviceWithCameraPosition:position];
+ if ([_videoDevice isEqual:deviceForTargetPosition])
+ return;
+
+ NSError *error;
AVCaptureDeviceInput *newVideoInput = [[AVCaptureDeviceInput alloc] initWithDevice:deviceForTargetPosition error:&error];
if (newVideoInput != nil)
@@ -924,6 +940,11 @@ static UIImageOrientation TGSnapshotOrientationForVideoOrientation(bool mirrored
if (_movieWriter.isRecording)
[_movieWriter _processSampleBuffer:sampleBuffer];
+ if (_rectangleDetector != nil) {
+ CVImageBufferRef imageBuffer = CMSampleBufferGetImageBuffer(sampleBuffer);
+ [_rectangleDetector detectRectangle:imageBuffer];
+ }
+
if (!_captureNextFrame || captureOutput != _videoOutput)
return;
diff --git a/submodules/LegacyComponents/Sources/PGPhotoEditorValues.m b/submodules/LegacyComponents/Sources/PGPhotoEditorValues.m
index ffb2aa828c..3257dd4b08 100644
--- a/submodules/LegacyComponents/Sources/PGPhotoEditorValues.m
+++ b/submodules/LegacyComponents/Sources/PGPhotoEditorValues.m
@@ -15,6 +15,20 @@
@synthesize sendAsGif = _sendAsGif;
@synthesize toolValues = _toolValues;
++ (instancetype)editorValuesWithOriginalSize:(CGSize)originalSize cropRectangle:(PGRectangle *)cropRectangle cropOrientation:(UIImageOrientation)cropOrientation cropSize:(CGSize)cropSize enhanceDocument:(bool)enhanceDocument paintingData:(TGPaintingData *)paintingData
+{
+ PGPhotoEditorValues *values = [[PGPhotoEditorValues alloc] init];
+ values->_originalSize = originalSize;
+ values->_cropRect = CGRectMake(0.0, 0.0, cropSize.width, cropSize.height);
+ values->_cropSize = cropSize;
+ values->_cropRectangle = cropRectangle;
+ values->_cropOrientation = cropOrientation;
+ values->_enhanceDocument = enhanceDocument;
+ values->_paintingData = paintingData;
+ return values;
+}
+
+
+ (instancetype)editorValuesWithOriginalSize:(CGSize)originalSize cropRect:(CGRect)cropRect cropRotation:(CGFloat)cropRotation cropOrientation:(UIImageOrientation)cropOrientation cropLockedAspectRatio:(CGFloat)cropLockedAspectRatio cropMirrored:(bool)cropMirrored toolValues:(NSDictionary *)toolValues paintingData:(TGPaintingData *)paintingData sendAsGif:(bool)sendAsGif
{
PGPhotoEditorValues *values = [[PGPhotoEditorValues alloc] init];
@@ -27,7 +41,6 @@
values->_toolValues = toolValues;
values->_paintingData = paintingData;
values->_sendAsGif = sendAsGif;
-
return values;
}
@@ -38,6 +51,9 @@
- (bool)cropAppliedForAvatar:(bool)forAvatar
{
+ if (_cropRectangle != nil)
+ return true;
+
CGRect defaultCropRect = CGRectMake(0, 0, _originalSize.width, _originalSize.height);
if (forAvatar)
{
@@ -65,6 +81,9 @@
- (bool)toolsApplied
{
+ if (_enhanceDocument)
+ return true;
+
if (self.toolValues.count > 0)
return true;
@@ -112,6 +131,9 @@
if (self.paintingData != values.paintingData && ![self.paintingData isEqual:values.paintingData])
return false;
+ if (self.enhanceDocument != values.enhanceDocument)
+ return false;
+
return true;
}
diff --git a/submodules/LegacyComponents/Sources/PGRectangleDetector.h b/submodules/LegacyComponents/Sources/PGRectangleDetector.h
new file mode 100644
index 0000000000..1c68d5938f
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/PGRectangleDetector.h
@@ -0,0 +1,24 @@
+#import
+
+@interface PGRectangle : NSObject
+
+@property (nonatomic, readonly) CGPoint topLeft;
+@property (nonatomic, readonly) CGPoint topRight;
+@property (nonatomic, readonly) CGPoint bottomLeft;
+@property (nonatomic, readonly) CGPoint bottomRight;
+
+- (PGRectangle *)transform:(CGAffineTransform)transform;
+- (PGRectangle *)rotate90;
+- (PGRectangle *)sort;
+- (PGRectangle *)cartesian:(CGFloat)height;
+
+@end
+
+@interface PGRectangleDetector : NSObject
+
+@property (nonatomic, copy) void(^update)(bool, PGRectangle *);
+
+- (void)detectRectangle:(CVPixelBufferRef)pixelBuffer;
+
+@end
+
diff --git a/submodules/LegacyComponents/Sources/PGRectangleDetector.m b/submodules/LegacyComponents/Sources/PGRectangleDetector.m
new file mode 100644
index 0000000000..aa41ae4b90
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/PGRectangleDetector.m
@@ -0,0 +1,362 @@
+#import "PGRectangleDetector.h"
+#import "LegacyComponentsInternal.h"
+
+#import
+#import
+
+#import
+
+@interface PGRectangle ()
+
+- (instancetype)initWithRectangleFeature:(CIRectangleFeature *)rectangleFeature;
+- (instancetype)initWithRectangleObservation:(VNRectangleObservation *)rectangleObservation API_AVAILABLE(ios(11.0));
+
+- (CGFloat)size;
+
+@end
+
+@interface PGRectangleEntry : NSObject
+
+@property (nonatomic, readonly) PGRectangle *rectangle;
+@property (nonatomic, assign) NSInteger rate;
+
+- (instancetype)initWithRectangle:(PGRectangle *)rectangle;
+
+@end
+
+@implementation PGRectangleEntry
+
+- (instancetype)initWithRectangle:(PGRectangle *)rectangle
+{
+ self = [super init];
+ if (self != nil)
+ {
+ _rectangle = rectangle;
+ _rate = 0;
+ }
+ return self;
+}
+
+@end
+
+@implementation PGRectangle
+
+- (instancetype)initWithRectangleFeature:(CIRectangleFeature *)rectangleFeature
+{
+ self = [super init];
+ if (self != nil) {
+ _topLeft = rectangleFeature.topLeft;
+ _topRight = rectangleFeature.topRight;
+ _bottomLeft = rectangleFeature.bottomLeft;
+ _bottomRight = rectangleFeature.bottomRight;
+ }
+ return self;
+}
+
+- (instancetype)initWithRectangleObservation:(VNRectangleObservation *)rectangleObservation API_AVAILABLE(ios(11.0))
+{
+ self = [super init];
+ if (self != nil) {
+ _topLeft = rectangleObservation.topLeft;
+ _topRight = rectangleObservation.topRight;
+ _bottomLeft = rectangleObservation.bottomLeft;
+ _bottomRight = rectangleObservation.bottomRight;
+ }
+ return self;
+}
+
+- (PGRectangle *)transform:(CGAffineTransform)transform
+{
+ PGRectangle *rectangle = [[PGRectangle alloc] init];
+ rectangle->_topLeft = CGPointApplyAffineTransform(_topLeft, transform);
+ rectangle->_topRight = CGPointApplyAffineTransform(_topRight, transform);
+ rectangle->_bottomLeft = CGPointApplyAffineTransform(_bottomLeft, transform);
+ rectangle->_bottomRight = CGPointApplyAffineTransform(_bottomRight, transform);
+ return rectangle;
+}
+
+- (PGRectangle *)rotate90
+{
+ PGRectangle *rectangle = [[PGRectangle alloc] init];
+ rectangle->_topLeft = CGPointMake(_topLeft.y, _topLeft.x);
+ rectangle->_topRight = CGPointMake(_topRight.y, _topRight.x);
+ rectangle->_bottomLeft = CGPointMake(_bottomLeft.y, _bottomLeft.x);
+ rectangle->_bottomRight = CGPointMake(_bottomRight.y, _bottomRight.x);
+ return rectangle;
+}
+
+- (PGRectangle *)sort
+{
+ NSArray *points = @[ [NSValue valueWithCGPoint:_topLeft], [NSValue valueWithCGPoint:_topRight], [NSValue valueWithCGPoint:_bottomLeft], [NSValue valueWithCGPoint:_bottomRight] ];
+
+ NSArray *ySorted = [points sortedArrayUsingComparator:^NSComparisonResult(id firstObject, id secondObject) {
+ CGPoint firstPoint = [firstObject CGPointValue];
+ CGPoint secondPoint = [secondObject CGPointValue];
+ if (firstPoint.y < secondPoint.y) {
+ return NSOrderedAscending;
+ } else {
+ return NSOrderedDescending;
+ }
+ }];
+
+ NSArray *top = [ySorted subarrayWithRange:NSMakeRange(0, 2)];
+ NSArray *bottom = [ySorted subarrayWithRange:NSMakeRange(2, 2)];
+
+ NSArray *xSortedTop = [top sortedArrayUsingComparator:^NSComparisonResult(id firstObject, id secondObject) {
+ CGPoint firstPoint = [firstObject CGPointValue];
+ CGPoint secondPoint = [secondObject CGPointValue];
+ if (firstPoint.x < secondPoint.x) {
+ return NSOrderedAscending;
+ } else {
+ return NSOrderedDescending;
+ }
+ }];
+
+ NSArray *xSortedBottom = [bottom sortedArrayUsingComparator:^NSComparisonResult(id firstObject, id secondObject) {
+ CGPoint firstPoint = [firstObject CGPointValue];
+ CGPoint secondPoint = [secondObject CGPointValue];
+ if (firstPoint.x < secondPoint.x) {
+ return NSOrderedAscending;
+ } else {
+ return NSOrderedDescending;
+ }
+ }];
+
+ PGRectangle *rectangle = [[PGRectangle alloc] init];
+ rectangle->_topLeft = [xSortedTop[0] CGPointValue];
+ rectangle->_topRight = [xSortedTop[1] CGPointValue];
+ rectangle->_bottomLeft = [xSortedBottom[0] CGPointValue];
+ rectangle->_bottomRight = [xSortedBottom[1] CGPointValue];
+ return rectangle;
+}
+
+- (PGRectangle *)cartesian:(CGFloat)height
+{
+ PGRectangle *rectangle = [[PGRectangle alloc] init];
+ rectangle->_topLeft = CGPointMake(_topLeft.x, height - _topLeft.y);
+ rectangle->_topRight = CGPointMake(_topRight.x, height - _topRight.y);
+ rectangle->_bottomLeft = CGPointMake(_bottomLeft.x, height - _bottomLeft.y);
+ rectangle->_bottomRight = CGPointMake(_bottomRight.x, height - _bottomRight.y);
+ return rectangle;
+}
+
+- (PGRectangle *)normalize:(CGSize)size
+{
+ return [self transform:CGAffineTransformMakeScale(1.0 / size.width, 1.0 / size.height)];
+}
+
++ (CGFloat)distance:(CGPoint)a to:(CGPoint)b
+{
+ return hypot(a.x - b.x, a.y - b.y);
+}
+
+- (CGFloat)size
+{
+ CGFloat sum = 0.0f;
+ sum += [PGRectangle distance:self.topLeft to:self.topRight];
+ sum += [PGRectangle distance:self.topRight to:self.bottomRight];
+ sum += [PGRectangle distance:self.bottomRight to:self.bottomLeft];
+ sum += [PGRectangle distance:self.bottomLeft to:self.topLeft];
+ return sum;
+}
+
++ (CGRect)pointSquare:(CGPoint)point size:(CGFloat)size
+{
+ return CGRectMake(point.x - size / 2.0, point.y - size / 2.0, size, size);
+}
+
+- (bool)matches:(PGRectangle *)other threshold:(CGFloat)threshold
+{
+ if (!CGRectContainsPoint([PGRectangle pointSquare:self.topLeft size:threshold], other.topLeft))
+ return false;
+
+ if (!CGRectContainsPoint([PGRectangle pointSquare:self.topRight size:threshold], other.topRight))
+ return false;
+
+ if (!CGRectContainsPoint([PGRectangle pointSquare:self.bottomLeft size:threshold], other.bottomLeft))
+ return false;
+
+ if (!CGRectContainsPoint([PGRectangle pointSquare:self.bottomRight size:threshold], other.bottomRight))
+ return false;
+
+ return true;
+}
+
+@end
+
+@implementation PGRectangleDetector
+{
+ SQueue *_queue;
+ CIDetector *_detector;
+
+ bool _disabled;
+
+ CGSize _imageSize;
+ NSInteger _notFoundCount;
+ NSMutableArray *_rectangles;
+
+ PGRectangle *_detectedRectangle;
+ NSInteger _autoscanCount;
+}
+
+- (instancetype)init
+{
+ self = [super init];
+ if (self != nil) {
+ _queue = [[SQueue alloc] init];
+ _rectangles = [[NSMutableArray alloc] init];
+ }
+ return self;
+}
+
+- (void)updateEntries
+{
+ for (PGRectangleEntry *entry in _rectangles) {
+ entry.rate = 1;
+ }
+
+ for (NSInteger i = 0; i < _rectangles.count; i++) {
+ for (NSInteger j = 0; i < _rectangles.count; i++) {
+ if (j > i && [[_rectangles[i] rectangle] matches:_rectangles[j] threshold:40.0]) {
+ ((PGRectangleEntry *)_rectangles[i]).rate += 1;
+ ((PGRectangleEntry *)_rectangles[j]).rate += 1;
+ }
+ }
+ }
+}
+
+- (void)addRectangle:(PGRectangle *)rectangle
+{
+ if (_disabled)
+ return;
+
+ PGRectangleEntry *entry = [[PGRectangleEntry alloc] initWithRectangle:rectangle];
+ [_rectangles addObject:entry];
+
+ if (_rectangles.count < 3)
+ return;
+
+ if (_rectangles.count > 8)
+ [_rectangles removeObjectAtIndex:0];
+
+ [self updateEntries];
+
+ __block PGRectangleEntry *best = nil;
+ [_rectangles enumerateObjectsWithOptions:NSEnumerationReverse usingBlock:^(PGRectangleEntry *rectangle, NSUInteger idx, BOOL * stop) {
+ if (best == nil) {
+ best = rectangle;
+ return;
+ }
+
+ if (rectangle.rate > best.rate) {
+ best = rectangle;
+ } else if (rectangle.rate == best.rate) {
+ if (_detectedRectangle != nil) {
+ if ([rectangle.rectangle matches:_detectedRectangle threshold:40.0]) {
+ best = rectangle;
+ }
+ }
+ }
+ }];
+
+ if (_detectedRectangle != nil && [best.rectangle matches:_detectedRectangle threshold:24.0f]) {
+ _autoscanCount += 1;
+ _detectedRectangle = best.rectangle;
+ if (_autoscanCount > 20) {
+ _autoscanCount = 0;
+ self.update(true, [_detectedRectangle normalize:_imageSize]);
+
+ _detectedRectangle = nil;
+
+ _disabled = true;
+ TGDispatchAfter(2.0, _queue._dispatch_queue, ^{
+ _disabled = false;
+ });
+ }
+ } else {
+ _autoscanCount = 0;
+ _detectedRectangle = best.rectangle;
+ self.update(false, [_detectedRectangle normalize:_imageSize]);
+ }
+}
+
+- (void)processRectangle:(PGRectangle *)rectangle imageSize:(CGSize)imageSize
+{
+ _imageSize = imageSize;
+
+ if (rectangle != nil) {
+ _notFoundCount = 0;
+
+ [self addRectangle:rectangle];
+ } else {
+ _notFoundCount += 1;
+
+ if (_notFoundCount > 3) {
+ _autoscanCount = 0;
+ _detectedRectangle = nil;
+
+ self.update(false, nil);
+ }
+ }
+}
+
+- (void)detectRectangle:(CVPixelBufferRef)pixelBuffer
+{
+ CGSize size = CGSizeMake(CVPixelBufferGetWidth(pixelBuffer), CVPixelBufferGetHeight(pixelBuffer));
+ if (@available(iOS 11.0, *)) {
+ CVPixelBufferRetain(pixelBuffer);
+ NSError *error;
+ VNImageRequestHandler *handler = [[VNImageRequestHandler alloc] initWithCVPixelBuffer:pixelBuffer options:@{}];
+ VNDetectRectanglesRequest *request = [[VNDetectRectanglesRequest alloc] initWithCompletionHandler:^(VNRequest * _Nonnull request, NSError * _Nullable error) {
+ CVPixelBufferRelease(pixelBuffer);
+
+ [_queue dispatch:^{
+ if (error == nil && request.results.count > 0) {
+ PGRectangle *largestRectangle = nil;
+ for (VNRectangleObservation *result in request.results) {
+ if (![result isKindOfClass:[VNRectangleObservation class]])
+ continue;
+
+ PGRectangle *rectangle = [[PGRectangle alloc] initWithRectangleObservation:result];
+ if (largestRectangle == nil || largestRectangle.size < rectangle.size) {
+ largestRectangle = rectangle;
+ }
+ }
+ [self processRectangle:[largestRectangle transform:CGAffineTransformMakeScale(size.width, size.height)] imageSize:size];
+ } else {
+ [self processRectangle:nil imageSize:size];
+ }
+ }];
+ }];
+ request.minimumConfidence = 0.85f;
+ request.maximumObservations = 15;
+ request.minimumAspectRatio = 0.33;
+ request.minimumSize = 0.4;
+ [handler performRequests:@[request] error:&error];
+ } else {
+ CVPixelBufferRetain(pixelBuffer);
+ [_queue dispatch:^{
+ if (_detector == nil) {
+ _detector = [CIDetector detectorOfType:CIDetectorTypeRectangle context:[CIContext contextWithOptions:nil] options:@{ CIDetectorAccuracy: CIDetectorAccuracyHigh }];
+ }
+
+ CIImage *image = [[CIImage alloc] initWithCVPixelBuffer:pixelBuffer];
+ NSArray *results = [_detector featuresInImage:image];
+ CVPixelBufferRelease(pixelBuffer);
+
+ PGRectangle *largestRectangle = nil;
+ for (CIRectangleFeature *result in results) {
+ if (![result isKindOfClass:[CIRectangleFeature class]])
+ continue;
+
+ PGRectangle *rectangle = [[PGRectangle alloc] initWithRectangleFeature:result];
+ if (largestRectangle == nil || largestRectangle.size < rectangle.size) {
+ largestRectangle = rectangle;
+ }
+ }
+ [self processRectangle:largestRectangle imageSize:size];
+ }];
+ }
+}
+
+@end
diff --git a/submodules/LegacyComponents/Sources/TGCameraCapturedPhoto.m b/submodules/LegacyComponents/Sources/TGCameraCapturedPhoto.m
index 88cb73db87..445a794977 100644
--- a/submodules/LegacyComponents/Sources/TGCameraCapturedPhoto.m
+++ b/submodules/LegacyComponents/Sources/TGCameraCapturedPhoto.m
@@ -32,6 +32,23 @@
return self;
}
+- (instancetype)initWithImage:(UIImage *)image rectangle:(PGRectangle *)rectangle
+{
+ self = [super init];
+ if (self != nil)
+ {
+ _identifier = [NSString stringWithFormat:@"%ld", lrand48()];
+ _dimensions = CGSizeMake(image.size.width * image.scale, image.size.height * image.scale);
+ PGCameraShotMetadata *metadata = [[PGCameraShotMetadata alloc] init];
+ metadata.rectangle = rectangle;
+ _metadata = metadata;
+ _thumbnail = [[SVariable alloc] init];
+
+ [self _saveToDisk:image];
+ }
+ return self;
+}
+
- (instancetype)initWithExistingImage:(UIImage *)image
{
self = [super init];
@@ -110,6 +127,11 @@
return [NSTemporaryDirectory() stringByAppendingPathComponent:[[NSString alloc] initWithFormat:@"camphoto_%@.jpg", _identifier]];
}
+- (PGRectangle *)rectangle
+{
+ return _metadata.rectangle;
+}
+
- (NSURL *)url
{
return [NSURL fileURLWithPath:[self filePath]];
diff --git a/submodules/LegacyComponents/Sources/TGCameraController.m b/submodules/LegacyComponents/Sources/TGCameraController.m
index f4c5f28c0e..5ab43a29e8 100644
--- a/submodules/LegacyComponents/Sources/TGCameraController.m
+++ b/submodules/LegacyComponents/Sources/TGCameraController.m
@@ -17,6 +17,7 @@
#import
#import
#import "TGCameraFocusCrosshairsControl.h"
+#import "TGCameraRectangleView.h"
#import
#import
@@ -50,6 +51,8 @@
#import "TGCameraCapturedVideo.h"
#import "PGPhotoEditor.h"
+#import "PGRectangleDetector.h"
+#import "TGWarpedView.h"
#import "TGAnimationUtils.h"
@@ -106,9 +109,7 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
TGCameraMainView *_interfaceView;
UIView *_overlayView;
TGCameraFocusCrosshairsControl *_focusControl;
-
- TGModernGalleryVideoView *_segmentPreviewView;
- bool _previewingSegment;
+ TGCameraRectangleView *_rectangleView;
UISwipeGestureRecognizer *_photoSwipeGestureRecognizer;
UISwipeGestureRecognizer *_videoSwipeGestureRecognizer;
@@ -281,6 +282,11 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
[_focusControl setInterfaceOrientation:interfaceOrientation animated:false];
[_overlayView addSubview:_focusControl];
+ _rectangleView = [[TGCameraRectangleView alloc] initWithFrame:_overlayView.bounds];
+ _rectangleView.previewView = _previewView;
+ _rectangleView.hidden = true;
+ [_overlayView addSubview:_rectangleView];
+
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone)
{
_panGestureRecognizer = [[TGModernGalleryZoomableScrollViewSwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handlePan:)];
@@ -360,7 +366,7 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
if (strongSelf == nil)
return;
- [strongSelf->_camera setCameraMode:mode];
+ [strongSelf _updateCameraMode:mode updateInterface:false];
};
_interfaceView.flashModeChanged = ^(PGCameraFlashMode mode)
@@ -478,6 +484,25 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
[self _configureCamera];
}
+- (void)_updateCameraMode:(PGCameraMode)mode updateInterface:(bool)updateInterface {
+ [_camera setCameraMode:mode];
+ if (updateInterface)
+ [_interfaceView setCameraMode:mode];
+
+ _focusControl.hidden = mode == PGCameraModePhotoScan;
+ _rectangleView.hidden = mode != PGCameraModePhotoScan;
+
+ if (mode == PGCameraModePhotoScan) {
+ [self _createContextsIfNeeded];
+
+ if (_items.count == 0) {
+ [_interfaceView setToastMessage:@"Position the document in view" animated:true];
+ } else {
+
+ }
+ }
+}
+
- (void)_configureCamera
{
__weak TGCameraController *weakSelf = self;
@@ -514,9 +539,11 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
strongSelf.view.userInteractionEnabled = false;
PGCameraMode currentMode = strongSelf->_camera.cameraMode;
- bool generalModeNotChanged = (mode == PGCameraModePhoto && currentMode == PGCameraModeSquarePhoto) || (mode == PGCameraModeSquarePhoto && currentMode == PGCameraModePhoto) || (mode == PGCameraModeVideo && currentMode == PGCameraModeSquareVideo) || (mode == PGCameraModeSquareVideo && currentMode == PGCameraModeVideo);
-
- if ((mode == PGCameraModeVideo || mode == PGCameraModeSquareVideo) && !generalModeNotChanged)
+ bool generalModeNotChanged = [PGCamera isPhotoCameraMode:mode] == [PGCamera isPhotoCameraMode:currentMode];
+ if (strongSelf->_camera.captureSession.currentCameraPosition == PGCameraPositionFront && mode == PGCameraModePhotoScan) {
+ generalModeNotChanged = false;
+ }
+ if ([PGCamera isVideoCameraMode:mode] && !generalModeNotChanged)
{
[[LegacyComponentsGlobals provider] pauseMusicPlayback];
}
@@ -570,6 +597,21 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
[[[LegacyComponentsGlobals provider] accessChecker] checkMicrophoneAuthorizationStatusForIntent:TGMicrophoneAccessIntentVideo alertDismissCompletion:nil];
strongSelf->_shownMicrophoneAlert = true;
}
+
+ if (strongSelf->_camera.cameraMode == PGCameraModePhotoScan) {
+ strongSelf->_camera.captureSession.rectangleDetector.update = ^(bool capture, PGRectangle *rectangle) {
+ __strong TGCameraController *strongSelf = weakSelf;
+ if (strongSelf == nil)
+ return;
+
+ TGDispatchOnMainThread(^{
+ [strongSelf->_rectangleView drawRectangle:rectangle];
+ if (capture) {
+ [strongSelf _makeScan:rectangle];
+ }
+ });
+ };
+ }
}
});
};
@@ -874,9 +916,7 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
}];
};
_camera.autoStartVideoRecording = true;
-
- [_camera setCameraMode:PGCameraModeVideo];
- [_interfaceView setCameraMode:PGCameraModeVideo];
+ [self _updateCameraMode:PGCameraModeVideo updateInterface:true];
}
else if (_camera.cameraMode == PGCameraModeVideo)
{
@@ -968,7 +1008,7 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
__weak TGCameraController *weakSelf = self;
PGCameraMode cameraMode = _camera.cameraMode;
- if (cameraMode == PGCameraModePhoto || cameraMode == PGCameraModeSquarePhoto)
+ if (cameraMode == PGCameraModePhoto || cameraMode == PGCameraModeSquarePhoto || cameraMode == PGCameraModePhotoScan)
{
_camera.disabled = true;
@@ -987,7 +1027,7 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
_buttonHandler.enabled = false;
[_buttonHandler ignoreEventsFor:1.5f andDisable:true];
}
-
+
[_camera takePhotoWithCompletion:^(UIImage *result, PGCameraShotMetadata *metadata)
{
__strong TGCameraController *strongSelf = weakSelf;
@@ -1060,6 +1100,140 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
}
}
+- (void)_makeScan:(PGRectangle *)rectangle
+{
+ if (_shutterIsBusy)
+ return;
+
+ _camera.disabled = true;
+ _shutterIsBusy = true;
+
+ __weak TGCameraController *weakSelf = self;
+ [_camera takePhotoWithCompletion:^(UIImage *result, PGCameraShotMetadata *metadata)
+ {
+ __strong TGCameraController *strongSelf = weakSelf;
+ if (strongSelf == nil)
+ return;
+
+ TGDispatchOnMainThread(^
+ {
+ [strongSelf->_interfaceView setToastMessage:nil animated:true];
+
+ strongSelf->_shutterIsBusy = false;
+
+ [strongSelf->_rectangleView drawRectangle:nil];
+ strongSelf->_rectangleView.enabled = false;
+
+ TGDispatchAfter(2.0, dispatch_get_main_queue(), ^{
+ strongSelf->_rectangleView.enabled = true;
+ });
+
+ TGCameraCapturedPhoto *capturedPhoto = [[TGCameraCapturedPhoto alloc] initWithImage:result rectangle:rectangle];
+ [strongSelf addResultItem:capturedPhoto];
+
+ PGRectangle *cropRectangle = [[rectangle rotate90] transform:CGAffineTransformMakeScale(result.size.width, result.size.height)];
+ PGRectangle *convertedRectangle = [cropRectangle sort];
+ convertedRectangle = [convertedRectangle cartesian:result.size.height];
+
+ CIImage *ciImage = [[CIImage alloc] initWithImage:result];
+ CIImage *croppedImage = [ciImage imageByApplyingFilter:@"CIPerspectiveCorrection" withInputParameters:@{
+ @"inputTopLeft": [CIVector vectorWithCGPoint:convertedRectangle.topLeft],
+ @"inputTopRight": [CIVector vectorWithCGPoint:convertedRectangle.topRight],
+ @"inputBottomLeft": [CIVector vectorWithCGPoint:convertedRectangle.bottomLeft],
+ @"inputBottomRight": [CIVector vectorWithCGPoint:convertedRectangle.bottomRight]
+ }];
+ CIImage *enhancedImage = [croppedImage imageByApplyingFilter:@"CIDocumentEnhancer" withInputParameters:@{}];
+
+ CIContext *context = [CIContext contextWithOptions:nil];
+ UIImage *editedImage = [UIImage imageWithCGImage:[context createCGImage:enhancedImage fromRect:enhancedImage.extent]];
+ UIImage *thumbnailImage = TGScaleImage(editedImage, TGScaleToFillSize(editedImage.size, TGPhotoThumbnailSizeForCurrentScreen()));
+ [strongSelf->_editingContext setImage:editedImage thumbnailImage:thumbnailImage forItem:capturedPhoto synchronous:true];
+ [strongSelf->_editingContext setAdjustments:[PGPhotoEditorValues editorValuesWithOriginalSize:result.size cropRectangle:cropRectangle cropOrientation:UIImageOrientationUp cropSize:editedImage.size enhanceDocument:true paintingData:nil] forItem:capturedPhoto];
+
+ [strongSelf _playScanAnimation:editedImage rectangle:rectangle completion:^{
+ [strongSelf->_selectedItemsModel addSelectedItem:capturedPhoto];
+ [strongSelf->_selectionContext setItem:capturedPhoto selected:true];
+ [strongSelf->_interfaceView setResults:[strongSelf->_items copy]];
+
+ TGDispatchAfter(0.5, dispatch_get_main_queue(), ^{
+ [strongSelf->_interfaceView setToastMessage:@"Ready for next scan" animated:true];
+ });
+ }];
+
+ strongSelf->_camera.disabled = false;
+ });
+ }];
+}
+
+- (void)_playScanAnimation:(UIImage *)image rectangle:(PGRectangle *)rectangle completion:(void(^)(void))completion
+{
+ TGWarpedView *warpedView = [[TGWarpedView alloc] initWithImage:image];
+ warpedView.layer.anchorPoint = CGPointMake(0, 0);
+ warpedView.frame = _rectangleView.frame;
+ [_rectangleView.superview addSubview:warpedView];
+
+ CGAffineTransform transform = CGAffineTransformMakeScale(_previewView.frame.size.width, _previewView.frame.size.height);
+ PGRectangle *displayRectangle = [[[rectangle rotate90] transform:transform] sort];
+ [warpedView transformToFitQuadTopLeft:displayRectangle.topLeft topRight:displayRectangle.topRight bottomLeft:displayRectangle.bottomLeft bottomRight:displayRectangle.bottomRight];
+
+ CGFloat inset = 16.0f;
+ CGSize targetSize = TGScaleToFit(image.size, CGSizeMake(_previewView.frame.size.width - inset * 2.0, _previewView.frame.size.height - inset * 2.0));
+ CGRect targetRect = CGRectMake(floor((_previewView.frame.size.width - targetSize.width) / 2.0), floor((_previewView.frame.size.height - targetSize.height) / 2.0), targetSize.width, targetSize.height);
+
+ [UIView animateWithDuration:0.3 delay:0.0 options:(7 << 16) animations:^{
+ [warpedView transformToFitQuadTopLeft:CGPointMake(targetRect.origin.x, targetRect.origin.y) topRight:CGPointMake(targetRect.origin.x + targetRect.size.width, targetRect.origin.y) bottomLeft:CGPointMake(targetRect.origin.x, targetRect.origin.y + targetRect.size.height) bottomRight:CGPointMake(targetRect.origin.x + targetRect.size.width, targetRect.origin.y + targetRect.size.height)];
+ } completion:^(BOOL finished) {
+ UIImageView *outView = [[UIImageView alloc] initWithImage:image];
+ outView.frame = targetRect;
+ [warpedView.superview addSubview:outView];
+ [warpedView removeFromSuperview];
+
+ TGDispatchAfter(0.2, dispatch_get_main_queue(), ^{
+ CGPoint sourcePoint = outView.center;
+ CGPoint targetPoint = CGPointMake(_previewView.frame.size.width - 44.0, _previewView.frame.size.height - 44.0);
+ CGPoint midPoint = CGPointMake((sourcePoint.x + targetPoint.x) / 2.0, sourcePoint.y - 30.0);
+
+ CGFloat x1 = sourcePoint.x;
+ CGFloat y1 = sourcePoint.y;
+ CGFloat x2 = midPoint.x;
+ CGFloat y2 = midPoint.y;
+ CGFloat x3 = targetPoint.x;
+ CGFloat y3 = targetPoint.y;
+
+ CGFloat a = (x3 * (y2 - y1) + x2 * (y1 - y3) + x1 * (y3 - y2)) / ((x1 - x2) * (x1 - x3) * (x2 - x3));
+ CGFloat b = (x1 * x1 * (y2 - y3) + x3 * x3 * (y1 - y2) + x2 * x2 * (y3 - y1)) / ((x1 - x2) * (x1 - x3) * (x2 - x3));
+ CGFloat c = (x2 * x2 * (x3 * y1 - x1 * y3) + x2 * (x1 * x1 * y3 - x3 * x3 * y1) + x1 * x3 * (x3 - x1) * y2) / ((x1 - x2) * (x1 - x3) * (x2 - x3));
+
+ [UIView animateWithDuration:0.3 animations:^{
+ outView.transform = CGAffineTransformMakeScale(0.1, 0.1);
+ } completion:^(BOOL finished) {
+ [outView removeFromSuperview];
+ }];
+
+ TGDispatchAfter(0.28, dispatch_get_main_queue(), ^{
+ completion();
+ });
+
+ CAKeyframeAnimation *animation = [CAKeyframeAnimation animationWithKeyPath:@"position"];
+ NSMutableArray *values = [[NSMutableArray alloc] init];
+ NSMutableArray *keyTimes = [[NSMutableArray alloc] init];
+ for (NSInteger i = 0; i < 10; i++) {
+ CGFloat k = (CGFloat)i / (CGFloat)(10 - 1);
+ CGFloat x = sourcePoint.x * (1.0 - k) + targetPoint.x * k;
+ CGFloat y = a * x * x + b * x + c;
+
+ [values addObject:[NSValue valueWithCGPoint:CGPointMake(x, y)]];
+ [keyTimes addObject:@(k)];
+ }
+ animation.values = values;
+ animation.keyTimes = keyTimes;
+ animation.duration = 0.35;
+ animation.removedOnCompletion = false;
+ [outView.layer addAnimation:animation forKey:@"position"];
+ });
+ }];
+}
+
- (void)cancelPressed
{
if (_items.count > 0)
@@ -1182,27 +1356,34 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
return galleryItems;
}
+- (void)_createContextsIfNeeded
+{
+ TGMediaEditingContext *editingContext = _editingContext;
+ if (editingContext == nil)
+ {
+ editingContext = [[TGMediaEditingContext alloc] init];
+ if (self.forcedCaption != nil)
+ [editingContext setForcedCaption:self.forcedCaption entities:self.forcedEntities];
+ _editingContext = editingContext;
+ _interfaceView.editingContext = editingContext;
+ }
+ TGMediaSelectionContext *selectionContext = _selectionContext;
+ if (selectionContext == nil)
+ {
+ selectionContext = [[TGMediaSelectionContext alloc] initWithGroupingAllowed:self.allowGrouping selectionLimit:100];
+ if (self.allowGrouping)
+ selectionContext.grouping = true;
+ _selectionContext = selectionContext;
+ }
+}
+
- (void)presentResultControllerForItem:(id)editableItemValue completion:(void (^)(void))completion
{
__block id editableItem = editableItemValue;
UIViewController *(^begin)(id) = ^(id windowContext) {
+ [self _createContextsIfNeeded];
TGMediaEditingContext *editingContext = _editingContext;
- if (editingContext == nil)
- {
- editingContext = [[TGMediaEditingContext alloc] init];
- if (self.forcedCaption != nil)
- [editingContext setForcedCaption:self.forcedCaption entities:self.forcedEntities];
- _editingContext = editingContext;
- _interfaceView.editingContext = editingContext;
- }
TGMediaSelectionContext *selectionContext = _selectionContext;
- if (selectionContext == nil)
- {
- selectionContext = [[TGMediaSelectionContext alloc] initWithGroupingAllowed:self.allowGrouping selectionLimit:100];
- if (self.allowGrouping)
- selectionContext.grouping = true;
- _selectionContext = selectionContext;
- }
if (editableItem == nil)
editableItem = _items.lastObject;
@@ -1989,6 +2170,7 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
self.view.userInteractionEnabled = false;
_focusControl.active = false;
+ _rectangleView.hidden = true;
[UIView animateWithDuration:0.3f animations:^
{
@@ -2256,21 +2438,27 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
PGCameraMode newMode = PGCameraModeUndefined;
if (gestureRecognizer == _photoSwipeGestureRecognizer)
{
- newMode = PGCameraModePhoto;
+ if (_camera.cameraMode == PGCameraModePhoto && _intent == TGCameraControllerGenericIntent)
+ newMode = PGCameraModePhotoScan;
+ else if (_camera.cameraMode != PGCameraModePhotoScan)
+ newMode = PGCameraModePhoto;
}
else if (gestureRecognizer == _videoSwipeGestureRecognizer)
{
- if (_intent == TGCameraControllerAvatarIntent) {
- newMode = PGCameraModeSquareVideo;
+ if (_camera.cameraMode == PGCameraModePhotoScan) {
+ if (_items.count == 0)
+ newMode = PGCameraModePhoto;
} else {
- newMode = PGCameraModeVideo;
+ if (_intent == TGCameraControllerAvatarIntent) {
+ newMode = PGCameraModeSquareVideo;
+ } else {
+ newMode = PGCameraModeVideo;
+ }
}
}
- if (newMode != PGCameraModeUndefined && _camera.cameraMode != newMode)
- {
- [_camera setCameraMode:newMode];
- [_interfaceView setCameraMode:newMode];
+ if (newMode != PGCameraModeUndefined && _camera.cameraMode != newMode) {
+ [self _updateCameraMode:newMode updateInterface:true];
}
}
@@ -2403,6 +2591,8 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
{
if (widescreenWidth == 896.0f)
return CGRectMake(0, 121, screenSize.width, screenSize.height - 121 - 223);
+ else if (widescreenWidth == 844.0f)
+ return CGRectMake(0, 77, screenSize.width, screenSize.height - 77 - 191);
else if (widescreenWidth == 812.0f)
return CGRectMake(0, 121, screenSize.width, screenSize.height - 121 - 191);
else if (widescreenWidth >= 736.0f - FLT_EPSILON)
@@ -2459,11 +2649,22 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
if (selectedItems.count == 0 && currentItem != nil)
[selectedItems addObject:currentItem];
- if (storeAssets)
- {
+ bool isScan = false;
+ for (id item in selectedItems) {
+ if ([item isKindOfClass:[TGCameraCapturedPhoto class]] && ((TGCameraCapturedPhoto *)item).rectangle != nil) {
+ isScan = true;
+ break;
+ }
+ }
+
+ if (storeAssets && !isScan) {
NSMutableArray *fullSizeSignals = [[NSMutableArray alloc] init];
for (id item in selectedItems)
{
+ if ([item isKindOfClass:[TGCameraCapturedPhoto class]] && ((TGCameraCapturedPhoto *)item).rectangle != nil) {
+ isScan = true;
+ }
+
if ([editingContext timerForItem:item] == nil)
{
SSignal *saveMedia = [SSignal defer:^SSignal *
@@ -2583,9 +2784,15 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
dict[@"timer"] = timer;
else if (groupedId != nil && !hasAnyTimers)
dict[@"groupedId"] = groupedId;
-
- id generatedItem = descriptionGenerator(dict, caption, entities, nil);
- return generatedItem;
+
+ if (isScan) {
+ if (caption != nil)
+ dict[@"caption"] = caption;
+ return dict;
+ } else {
+ id generatedItem = descriptionGenerator(dict, caption, entities, nil);
+ return generatedItem;
+ }
}];
SSignal *assetSignal = inlineSignal;
@@ -2611,12 +2818,13 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
return [SSignal complete];
}] onCompletion:^
{
- __strong TGMediaEditingContext *strongEditingContext = editingContext;
- [strongEditingContext description];
+
}];
+ } else {
+ NSLog(@"Editing context is nil");
}
- [signals addObject:[[imageSignal map:^NSDictionary *(UIImage *image)
+ [signals addObject:[[[imageSignal map:^NSDictionary *(UIImage *image)
{
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
dict[@"type"] = @"editedPhoto";
@@ -2663,11 +2871,19 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
else if (groupedId != nil && !hasAnyTimers)
dict[@"groupedId"] = groupedId;
- id generatedItem = descriptionGenerator(dict, caption, entities, nil);
- return generatedItem;
+ if (isScan) {
+ if (caption != nil)
+ dict[@"caption"] = caption;
+ return dict;
+ } else {
+ id generatedItem = descriptionGenerator(dict, caption, entities, nil);
+ return generatedItem;
+ }
}] catch:^SSignal *(__unused id error)
{
return inlineSignal;
+ }] onCompletion:^{
+ [editingContext description];
}]];
i++;
@@ -2750,6 +2966,54 @@ static CGPoint TGCameraControllerClampPointToScreenSize(__unused id self, __unus
groupedId = @([TGCameraController generateGroupedId]);
}
}
+
+ if (isScan) {
+ SSignal *scanSignal = [[SSignal combineSignals:signals] map:^NSDictionary *(NSArray *results) {
+ NSMutableData *data = [[NSMutableData alloc] init];
+ UIImage *previewImage = nil;
+ UIGraphicsBeginPDFContextToData(data, CGRectZero, nil);
+ for (NSDictionary *dict in results) {
+ if ([dict[@"type"] isEqual:@"editedPhoto"]) {
+ UIImage *image = dict[@"image"];
+ if (previewImage == nil) {
+ previewImage = image;
+ }
+ if (image != nil) {
+ CGRect rect = CGRectMake(0, 0, image.size.width, image.size.height);
+ UIGraphicsBeginPDFPageWithInfo(rect, nil);
+ CGContextRef pdfContext = UIGraphicsGetCurrentContext();
+
+ CGContextTranslateCTM(pdfContext, 0, image.size.height);
+ CGContextScaleCTM(pdfContext, 1.0, -1.0);
+
+ NSData *jpegData = UIImageJPEGRepresentation(image, 0.65);
+ CGDataProviderRef dataProvider = CGDataProviderCreateWithCFData((__bridge CFDataRef)jpegData);
+ CGImageRef cgImage = CGImageCreateWithJPEGDataProvider(dataProvider, NULL, true, kCGRenderingIntentDefault);
+ CGContextDrawImage(pdfContext, rect, cgImage);
+
+ CGDataProviderRelease(dataProvider);
+ CGImageRelease(cgImage);
+ }
+ }
+ }
+ UIGraphicsEndPDFContext();
+
+ NSString *filePath = [NSTemporaryDirectory() stringByAppendingPathComponent:[[NSString alloc] initWithFormat:@"scan_%x.pdf", (int)arc4random()]];
+ [data writeToFile:filePath atomically:true];
+
+ NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
+ dict[@"type"] = @"file";
+ dict[@"previewImage"] = previewImage;
+ dict[@"tempFileUrl"] = [NSURL fileURLWithPath:filePath];
+ dict[@"fileName"] = @"Document Scan.pdf";
+ dict[@"mimeType"] = @"application/pdf";
+
+ id generatedItem = descriptionGenerator(dict, dict[@"caption"], nil, nil);
+ return generatedItem;
+ }];
+ signals = [NSMutableArray arrayWithObject:scanSignal];
+ }
+
return signals;
}
diff --git a/submodules/LegacyComponents/Sources/TGCameraFlashControl.m b/submodules/LegacyComponents/Sources/TGCameraFlashControl.m
index 4962d217f6..65bec10499 100644
--- a/submodules/LegacyComponents/Sources/TGCameraFlashControl.m
+++ b/submodules/LegacyComponents/Sources/TGCameraFlashControl.m
@@ -29,79 +29,16 @@ const CGFloat TGCameraFlashControlHeight = 44.0f;
{
self.hitTestEdgeInsets = UIEdgeInsetsMake(-10, -10, -10, -10);
- _flashIconView = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 34, 44)];
+ _flashIconView = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 44, 44)];
_flashIconView.adjustsImageWhenHighlighted = false;
_flashIconView.contentMode = UIViewContentModeCenter;
_flashIconView.exclusiveTouch = true;
_flashIconView.hitTestEdgeInsets = UIEdgeInsetsMake(0, -10, 0, -10);
_flashIconView.tag = -1;
- [_flashIconView setImage:TGComponentsImageNamed(@"CameraFlashButton") forState:UIControlStateNormal];
+ [_flashIconView setImage:[UIImage imageNamed:@"Camera/FlashOff"] forState:UIControlStateNormal];
[_flashIconView addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
[self addSubview:_flashIconView];
-
- static UIImage *highlightedIconImage = nil;
- static dispatch_once_t onceToken;
- dispatch_once(&onceToken, ^
- {
- UIImage *image = TGComponentsImageNamed(@"CameraFlashButton");
- UIGraphicsBeginImageContextWithOptions(image.size, false, 0.0f);
- CGContextRef context = UIGraphicsGetCurrentContext();
- [image drawInRect:CGRectMake(0, 0, image.size.width, image.size.height)];
- CGContextSetBlendMode (context, kCGBlendModeSourceAtop);
- CGContextSetFillColorWithColor(context, [TGCameraInterfaceAssets accentColor].CGColor);
- CGContextFillRect(context, CGRectMake(0, 0, image.size.width, image.size.height));
-
- highlightedIconImage = UIGraphicsGetImageFromCurrentImageContext();
- UIGraphicsEndImageContext();
- });
- [_flashIconView setImage:highlightedIconImage forState:UIControlStateSelected];
- [_flashIconView setImage:highlightedIconImage forState:UIControlStateHighlighted | UIControlStateSelected];
-
- _autoButton = [[UIButton alloc] init];
- _autoButton.backgroundColor = [UIColor clearColor];
- _autoButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
- _autoButton.exclusiveTouch = true;
- _autoButton.hitTestEdgeInsets = UIEdgeInsetsMake(-10, -15, -10, -15);
- _autoButton.tag = PGCameraFlashModeAuto;
- _autoButton.titleLabel.font = [TGCameraInterfaceAssets normalFontOfSize:13];
- [_autoButton setAttributedTitle:[[NSAttributedString alloc] initWithString:TGLocalized(@"Camera.FlashAuto") attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets normalColor], NSKernAttributeName: @2 }] forState:UIControlStateNormal];
- [_autoButton setAttributedTitle:[[NSAttributedString alloc] initWithString:TGLocalized(@"Camera.FlashAuto") attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets accentColor], NSKernAttributeName: @2 }] forState:UIControlStateSelected];
- [_autoButton setAttributedTitle:[_autoButton attributedTitleForState:UIControlStateSelected] forState:UIControlStateHighlighted | UIControlStateSelected];
- [_autoButton addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
- [_autoButton sizeToFit];
- _autoButton.frame = (CGRect){ CGPointZero, [TGCameraFlashControl _sizeForModeButtonWithTitle:[_autoButton attributedTitleForState:UIControlStateNormal]] };
- [self addSubview:_autoButton];
-
- _onButton = [[UIButton alloc] init];
- _onButton.backgroundColor = [UIColor clearColor];
- _onButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
- _onButton.exclusiveTouch = true;
- _onButton.hitTestEdgeInsets = UIEdgeInsetsMake(-10, -15, -10, -15);
- _onButton.tag = PGCameraFlashModeOn;
- _onButton.titleLabel.font = [TGCameraInterfaceAssets normalFontOfSize:13];
- [_onButton setAttributedTitle:[[NSAttributedString alloc] initWithString:TGLocalized(@"Camera.FlashOn") attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets normalColor], NSKernAttributeName: @2 }] forState:UIControlStateNormal];
- [_onButton setAttributedTitle:[[NSAttributedString alloc] initWithString:TGLocalized(@"Camera.FlashOn") attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets accentColor], NSKernAttributeName: @2 }] forState:UIControlStateSelected];
- [_onButton setAttributedTitle:[_onButton attributedTitleForState:UIControlStateSelected] forState:UIControlStateHighlighted | UIControlStateSelected];
- [_onButton addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
- [_onButton sizeToFit];
- _onButton.frame = (CGRect){ CGPointZero, [TGCameraFlashControl _sizeForModeButtonWithTitle:[_onButton attributedTitleForState:UIControlStateNormal]] };
- [self addSubview:_onButton];
-
- _offButton = [[UIButton alloc] init];
- _offButton.backgroundColor = [UIColor clearColor];
- _offButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
- _offButton.exclusiveTouch = true;
- _offButton.hitTestEdgeInsets = UIEdgeInsetsMake(-10, -15, -10, -15);
- _offButton.tag = PGCameraFlashModeOff;
- _offButton.titleLabel.font = [TGCameraInterfaceAssets normalFontOfSize:13];
- [_offButton setAttributedTitle:[[NSAttributedString alloc] initWithString:TGLocalized(@"Camera.FlashOff") attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets normalColor], NSKernAttributeName: @2 }] forState:UIControlStateNormal];
- [_offButton setAttributedTitle:[[NSAttributedString alloc] initWithString:TGLocalized(@"Camera.FlashOff") attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets accentColor], NSKernAttributeName: @2 }] forState:UIControlStateSelected];
- [_offButton setAttributedTitle:[_offButton attributedTitleForState:UIControlStateSelected] forState:UIControlStateHighlighted | UIControlStateSelected];
- [_offButton addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
- [_offButton sizeToFit];
- _offButton.frame = (CGRect){ CGPointZero, [TGCameraFlashControl _sizeForModeButtonWithTitle:[_offButton attributedTitleForState:UIControlStateNormal]] };
- [self addSubview:_offButton];
-
+
[UIView performWithoutAnimation:^
{
self.mode = PGCameraFlashModeOff;
@@ -123,305 +60,27 @@ const CGFloat TGCameraFlashControlHeight = 44.0f;
- (void)buttonPressed:(UIButton *)sender
{
- if (!_active)
- {
- [self setActive:true animated:true];
- }
- else
- {
- if (sender != _flashIconView)
- self.mode = (int)sender.tag;
- else
- self.mode = _mode;
-
- if (self.modeChanged != nil)
- self.modeChanged(self.mode);
+ if (_mode == PGCameraFlashModeOff) {
+ self.mode = PGCameraFlashModeOn;
+ [_flashIconView setImage:[UIImage imageNamed:@"Camera/FlashOn"] forState:UIControlStateNormal];
+ } else {
+ self.mode = PGCameraFlashModeOff;
+ [_flashIconView setImage:[UIImage imageNamed:@"Camera/FlashOff"] forState:UIControlStateNormal];
}
+
+ if (self.modeChanged != nil)
+ self.modeChanged(self.mode);
}
- (void)setFlashUnavailable:(bool)unavailable
{
self.userInteractionEnabled = !unavailable;
[self setActive:false animated:false];
-
-
}
- (void)setActive:(bool)active animated:(bool)animated
{
- _active = active;
-
- if (animated)
- {
- self.userInteractionEnabled = false;
-
- if (active)
- {
- UIView *animatedView = nil;
- UIView *snapshotView = nil;
- CGRect targetFrame = CGRectZero;
-
- if (self.mode != PGCameraFlashModeAuto)
- {
- _autoButton.frame = [self _autoButtonFrameForInterfaceOrientation:_interfaceOrientation];
- _autoButton.alpha = 0.0f;
- _autoButton.hidden = false;
- }
- else
- {
- animatedView = _autoButton;
- targetFrame = [self _autoButtonFrameForInterfaceOrientation:_interfaceOrientation];
- snapshotView = [animatedView snapshotViewAfterScreenUpdates:false];
- }
- _autoButton.selected = (self.mode == PGCameraFlashModeAuto);
-
- if (self.mode != PGCameraFlashModeOn)
- {
- _onButton.frame = [self _onButtonFrameForInterfaceOrientation:_interfaceOrientation];
- _onButton.alpha = 0.0f;
- _onButton.hidden = false;
- }
- else
- {
- animatedView = _onButton;
- targetFrame = [self _onButtonFrameForInterfaceOrientation:_interfaceOrientation];
- }
- _onButton.selected = (self.mode == PGCameraFlashModeOn);
-
- if (self.mode != PGCameraFlashModeOff)
- {
- _offButton.frame = [self _offButtonFrameForInterfaceOrientation:_interfaceOrientation];
- _offButton.alpha = 0.0f;
- _offButton.hidden = false;
- }
- else
- {
- animatedView = _offButton;
- targetFrame = [self _offButtonFrameForInterfaceOrientation:_interfaceOrientation];
- snapshotView = [animatedView snapshotViewAfterScreenUpdates:false];
- }
- _offButton.selected = (self.mode == PGCameraFlashModeOff);
-
- if (snapshotView != nil)
- {
- snapshotView.frame = animatedView.frame;
- [animatedView.superview insertSubview:snapshotView belowSubview:animatedView];
- animatedView.alpha = 0.0f;
- }
-
- UIView *iconSnapshotView = nil;
- if (_flashIconView.selected)
- {
- iconSnapshotView = [_flashIconView snapshotViewAfterScreenUpdates:false];
- iconSnapshotView.frame = _flashIconView.frame;
- [_flashIconView.superview insertSubview:iconSnapshotView belowSubview:_flashIconView];
- _flashIconView.selected = false;
- _flashIconView.alpha = 0.0f;
- }
-
- [UIView animateWithDuration:0.25f delay:0.0f options:UIViewAnimationOptionCurveEaseInOut animations:^
- {
- _flashIconView.alpha = 1.0f;
- _flashIconView.frame = [self _flashIconFrameForActive:active interfaceOrientation:_interfaceOrientation];
- iconSnapshotView.frame = _flashIconView.frame;
-
- _autoButton.alpha = 1.0f;
- _onButton.alpha = 1.0f;
- _offButton.alpha = 1.0f;
-
- animatedView.alpha = 1.0f;
- animatedView.frame = targetFrame;
- snapshotView.frame = targetFrame;
- } completion:^(BOOL finished)
- {
- [snapshotView removeFromSuperview];
- [iconSnapshotView removeFromSuperview];
- if (finished)
- self.userInteractionEnabled = true;
- }];
- }
- else
- {
- UIView *animatedView = nil;
- UIView *snapshotView = nil;
- UIView *iconSnapshotView = nil;
-
- switch (self.mode)
- {
- case PGCameraFlashModeAuto:
- {
- animatedView = _autoButton;
- snapshotView = [animatedView snapshotViewAfterScreenUpdates:false];
- _autoButton.selected = false;
- }
- break;
-
- case PGCameraFlashModeOn:
- {
- animatedView = _onButton;
- if (!_onButton.selected)
- {
- snapshotView = [animatedView snapshotViewAfterScreenUpdates:false];
- _onButton.selected = true;
- }
-
- iconSnapshotView = [_flashIconView snapshotViewAfterScreenUpdates:false];
- iconSnapshotView.frame = _flashIconView.frame;
- [_flashIconView.superview insertSubview:iconSnapshotView belowSubview:_flashIconView];
- _flashIconView.selected = true;
- _flashIconView.alpha = 0.0f;
- }
- break;
-
- case PGCameraFlashModeOff:
- {
- animatedView = _offButton;
- snapshotView = [animatedView snapshotViewAfterScreenUpdates:false];
- _offButton.selected = false;
- }
- break;
-
- default:
- break;
- }
-
- if (snapshotView != nil)
- {
- snapshotView.frame = animatedView.frame;
- [animatedView.superview insertSubview:snapshotView belowSubview:animatedView];
- animatedView.alpha = 0.0f;
- }
-
- [UIView animateWithDuration:0.25f delay:0.0f options:UIViewAnimationOptionCurveEaseInOut animations:^
- {
- _flashIconView.alpha = 1.0f;
- _flashIconView.frame = [self _flashIconFrameForActive:active interfaceOrientation:_interfaceOrientation];
- iconSnapshotView.frame = _flashIconView.frame;
-
- if (self.mode != PGCameraFlashModeAuto)
- _autoButton.alpha = 0.0f;
-
- if (self.mode != PGCameraFlashModeOn)
- _onButton.alpha = 0.0f;
-
- if (self.mode != PGCameraFlashModeOff)
- _offButton.alpha = 0.0f;
-
- animatedView.alpha = 1.0f;
- animatedView.frame = [self _selectedButtonFrameForSize:animatedView.frame.size interfaceOrientation:_interfaceOrientation];
- snapshotView.frame = animatedView.frame;
- } completion:^(BOOL finished)
- {
- [snapshotView removeFromSuperview];
- [iconSnapshotView removeFromSuperview];
- if (finished)
- {
- self.userInteractionEnabled = true;
-
- if (self.mode != PGCameraFlashModeAuto)
- _autoButton.hidden = true;
-
- if (self.mode != PGCameraFlashModeOn)
- _onButton.hidden = true;
-
- if (self.mode != PGCameraFlashModeOff)
- _offButton.hidden = true;
- }
- }];
- }
- }
- else
- {
- _flashIconView.frame = [self _flashIconFrameForActive:active interfaceOrientation:_interfaceOrientation];
-
- if (active)
- {
- _flashIconView.selected = false;
-
- _autoButton.frame = [self _autoButtonFrameForInterfaceOrientation:_interfaceOrientation];
- _autoButton.alpha = 1.0f;
- _autoButton.hidden = false;
- _autoButton.selected = (self.mode == PGCameraFlashModeAuto);
-
- _onButton.frame = [self _onButtonFrameForInterfaceOrientation:_interfaceOrientation];
- _onButton.alpha = 1.0f;
- _onButton.hidden = false;
- _onButton.selected = (self.mode == PGCameraFlashModeOn);
-
- _offButton.frame = [self _offButtonFrameForInterfaceOrientation:_interfaceOrientation];
- _offButton.alpha = 1.0f;
- _offButton.hidden = false;
- _offButton.selected = (self.mode == PGCameraFlashModeOff);
- }
- else
- {
- switch (self.mode)
- {
- case PGCameraFlashModeOff:
- {
- _flashIconView.selected = false;
-
- _autoButton.alpha = 0.0f;
- _autoButton.hidden = true;
- _autoButton.selected = false;
-
- _onButton.alpha = 0.0f;
- _onButton.hidden = true;
- _onButton.selected = false;
-
- _offButton.frame = [self _selectedButtonFrameForSize:_offButton.frame.size interfaceOrientation:_interfaceOrientation];
- _offButton.alpha = 1.0f;
- _offButton.hidden = false;
- _offButton.selected = false;
- }
- break;
-
- case PGCameraFlashModeOn:
- {
- _flashIconView.selected = true;
-
- _autoButton.alpha = 0.0f;
- _autoButton.hidden = true;
- _autoButton.selected = false;
-
- _onButton.frame = [self _selectedButtonFrameForSize:_onButton.frame.size interfaceOrientation:_interfaceOrientation];
- _onButton.alpha = 1.0f;
- _onButton.hidden = false;
- _onButton.selected = true;
-
- _offButton.alpha = 0.0f;
- _offButton.hidden = true;
- _offButton.selected = false;
- }
- break;
-
- case PGCameraFlashModeAuto:
- {
- _flashIconView.selected = false;
-
- _autoButton.frame = [self _selectedButtonFrameForSize:_autoButton.frame.size interfaceOrientation:_interfaceOrientation];
- _autoButton.alpha = 1.0f;
- _autoButton.hidden = false;
- _autoButton.selected = false;
-
- _onButton.alpha = 0.0f;
- _onButton.hidden = true;
- _onButton.selected = false;
-
- _offButton.alpha = 0.0f;
- _offButton.hidden = true;
- _offButton.selected = false;
- }
- break;
-
- default:
- break;
- }
- }
- }
-
- if (active && self.becameActive != nil)
- self.becameActive();
+ return;
}
- (void)setMode:(PGCameraFlashMode)mode
@@ -484,130 +143,4 @@ const CGFloat TGCameraFlashControlHeight = 44.0f;
[self setActive:false animated:false];
}
-- (CGRect)_flashIconFrameForActive:(bool)active interfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
-{
- CGPoint origin = CGPointZero;
- CGSize size = self.frame.size;
- if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
- size = CGSizeMake(size.height, size.width);
-
- switch (interfaceOrientation)
- {
- case UIInterfaceOrientationLandscapeLeft:
- {
- if (active)
- origin = CGPointMake(size.width - _flashIconView.frame.size.width - 5, (size.height - _flashIconView.frame.size.height) / 2);
- else
- origin = CGPointMake(size.width - _flashIconView.frame.size.width - 5, (size.height - _flashIconView.frame.size.height) / 2 - 9);
- }
- break;
- case UIInterfaceOrientationLandscapeRight:
- {
- if (active)
- origin = CGPointMake(5, (size.height - _flashIconView.frame.size.height) / 2);
- else
- origin = CGPointMake(5, (size.height - _flashIconView.frame.size.height) / 2 - 9);
- }
- break;
-
- case UIInterfaceOrientationPortraitUpsideDown:
- {
- if (active)
- {
- origin = CGPointMake(0, 0);
- }
- else
- {
- CGFloat maxWidth = MAX(MAX(_offButton.frame.size.width, _onButton.frame.size.width), _autoButton.frame.size.width);
- origin = CGPointMake(size.width - _flashIconView.frame.size.width - maxWidth, 0);
- }
- }
- break;
-
- default:
- {
- origin = CGPointZero;
- }
- break;
- }
-
- return CGRectMake(origin.x, origin.y, _flashIconView.frame.size.width, _flashIconView.frame.size.height);
-}
-
-- (CGRect)_selectedButtonFrameForSize:(CGSize)buttonSize interfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
-{
- CGPoint origin = CGPointZero;
- CGSize size = self.frame.size;
- if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
- size = CGSizeMake(size.height, size.width);
-
- switch (interfaceOrientation)
- {
- case UIInterfaceOrientationLandscapeLeft:
- case UIInterfaceOrientationLandscapeRight:
- {
- origin = CGPointMake(CGRectGetMidX(_flashIconView.frame) - buttonSize.width / 2, 21);
- }
- break;
-
- case UIInterfaceOrientationPortraitUpsideDown:
- {
- CGRect iconFrame = [self _flashIconFrameForActive:false interfaceOrientation:interfaceOrientation];
- origin = CGPointMake(iconFrame.origin.x + iconFrame.size.width - 3, (size.height - buttonSize.height) / 2);
- }
- break;
-
- default:
- {
- origin = CGPointMake(_flashIconView.frame.size.width - 5,
- (size.height - buttonSize.height) / 2);
- }
- break;
- }
-
- return CGRectMake(origin.x, origin.y, buttonSize.width, buttonSize.height);
-}
-
-- (CGRect)_autoButtonFrameForInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
-{
- CGSize size = self.frame.size;
- if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
- size = CGSizeMake(size.height, size.width);
-
- return CGRectMake(size.width / 4 - _autoButton.frame.size.width / 2,
- (size.height - _autoButton.frame.size.height) / 2,
- _autoButton.frame.size.width, _autoButton.frame.size.height);
-}
-
-- (CGRect)_onButtonFrameForInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
-{
- CGSize size = self.frame.size;
- if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
- size = CGSizeMake(size.height, size.width);
-
- return CGRectMake((size.width - _onButton.frame.size.width) / 2,
- (size.height - _onButton.frame.size.height) / 2,
- _onButton.frame.size.width, _onButton.frame.size.height);
-}
-
-- (CGRect)_offButtonFrameForInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
-{
- CGSize size = self.frame.size;
- if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
- size = CGSizeMake(size.height, size.width);
-
- return CGRectMake(size.width / 4 * 3 - _offButton.frame.size.width / 2,
- (size.height - _offButton.frame.size.height) / 2,
- _offButton.frame.size.width, _offButton.frame.size.height);
-}
-
-+ (CGSize)_sizeForModeButtonWithTitle:(NSAttributedString *)title
-{
- CGSize size = title.size;
- CGFloat width = CGCeil(size.width);
- if (iosMajorVersion() < 7)
- width += 2;
- return CGSizeMake(width, 20);
-}
-
@end
diff --git a/submodules/LegacyComponents/Sources/TGCameraFlipButton.m b/submodules/LegacyComponents/Sources/TGCameraFlipButton.m
index 0f204e71ad..b4e05637cb 100644
--- a/submodules/LegacyComponents/Sources/TGCameraFlipButton.m
+++ b/submodules/LegacyComponents/Sources/TGCameraFlipButton.m
@@ -1,18 +1,20 @@
#import "TGCameraFlipButton.h"
+#import "TGCameraInterfaceAssets.h"
#import "LegacyComponentsInternal.h"
#import "TGImageUtils.h"
@implementation TGCameraFlipButton
-- (instancetype)initWithFrame:(CGRect)frame large:(bool)large
+- (instancetype)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self != nil)
{
self.exclusiveTouch = true;
- UIImage *image = large ? TGComponentsImageNamed(@"CameraLargeFlipButton") : TGTintedImage(TGComponentsImageNamed(@"CameraFlipButton"), [UIColor whiteColor]);
- [self setImage:image forState:UIControlStateNormal];
+ self.backgroundColor = [TGCameraInterfaceAssets buttonColor];
+ self.layer.cornerRadius = 24.0;
+ [self setImage:[UIImage imageNamed:@"Camera/Flip"] forState:UIControlStateNormal];
}
return self;
}
@@ -30,17 +32,65 @@
super.hidden = false;
self.userInteractionEnabled = false;
- [UIView animateWithDuration:0.25f
- animations:^
- {
- self.alpha = hidden ? 0.0f : 1.0f;
- } completion:^(BOOL finished)
- {
- self.userInteractionEnabled = true;
+ [UIView animateWithDuration:0.25f animations:^
+ {
+ self.alpha = hidden ? 0.0f : 1.0f;
+ } completion:^(BOOL finished)
+ {
+ self.userInteractionEnabled = true;
- if (finished)
- self.hidden = hidden;
- }];
+ if (finished)
+ self.hidden = hidden;
+ }];
+ }
+ else
+ {
+ self.alpha = hidden ? 0.0f : 1.0f;
+ super.hidden = hidden;
+ }
+}
+
+@end
+
+
+@implementation TGCameraCancelButton
+
+- (instancetype)initWithFrame:(CGRect)frame
+{
+ self = [super initWithFrame:frame];
+ if (self != nil)
+ {
+ self.exclusiveTouch = true;
+ self.backgroundColor = [TGCameraInterfaceAssets buttonColor];
+ self.layer.cornerRadius = 24.0;
+ [self setImage:[UIImage imageNamed:@"Camera/Cancel"] forState:UIControlStateNormal];
+ }
+ return self;
+}
+
+- (void)setHidden:(BOOL)hidden
+{
+ self.alpha = hidden ? 0.0f : 1.0f;
+ super.hidden = hidden;
+}
+
+- (void)setHidden:(bool)hidden animated:(bool)animated
+{
+ if (animated)
+ {
+ super.hidden = false;
+ self.userInteractionEnabled = false;
+
+ [UIView animateWithDuration:0.25f animations:^
+ {
+ self.alpha = hidden ? 0.0f : 1.0f;
+ } completion:^(BOOL finished)
+ {
+ self.userInteractionEnabled = true;
+
+ if (finished)
+ self.hidden = hidden;
+ }];
}
else
{
diff --git a/submodules/LegacyComponents/Sources/TGCameraFocusCrosshairsControl.m b/submodules/LegacyComponents/Sources/TGCameraFocusCrosshairsControl.m
index 6b8407fcc8..ef6413d067 100644
--- a/submodules/LegacyComponents/Sources/TGCameraFocusCrosshairsControl.m
+++ b/submodules/LegacyComponents/Sources/TGCameraFocusCrosshairsControl.m
@@ -412,8 +412,8 @@
- (void)updateExposureIndicatorPositionForOrientation:(UIInterfaceOrientation)orientation
{
- CGRect defaultPositionFrame = _exposureClipView.frame = CGRectMake(45 + _focusIndicatorImageView.frame.size.width + 5, 45 + (_focusIndicatorImageView.frame.size.height - 144) / 2, 25, 144);;
- CGRect mirroredPositionFrame = _exposureClipView.frame = CGRectMake(15, 45 + (_focusIndicatorImageView.frame.size.height - 144) / 2, 25, 144);;
+ CGRect defaultPositionFrame = CGRectMake(45 + _focusIndicatorImageView.frame.size.width + 5, 45 + (_focusIndicatorImageView.frame.size.height - 144) / 2, 25, 144);
+ CGRect mirroredPositionFrame = CGRectMake(15, 45 + (_focusIndicatorImageView.frame.size.height - 144) / 2, 25, 144);
switch (orientation)
{
case UIInterfaceOrientationPortraitUpsideDown:
diff --git a/submodules/LegacyComponents/Sources/TGCameraInterfaceAssets.m b/submodules/LegacyComponents/Sources/TGCameraInterfaceAssets.m
index 68b4fc84d3..f7a98b6e10 100644
--- a/submodules/LegacyComponents/Sources/TGCameraInterfaceAssets.m
+++ b/submodules/LegacyComponents/Sources/TGCameraInterfaceAssets.m
@@ -1,7 +1,22 @@
#import "TGCameraInterfaceAssets.h"
+#import
#import "LegacyComponentsInternal.h"
+static NSString *TGCameraEncodeText(NSString *string, int key)
+{
+ NSMutableString *result = [[NSMutableString alloc] init];
+
+ for (int i = 0; i < (int)[string length]; i++)
+ {
+ unichar c = [string characterAtIndex:i];
+ c += key;
+ [result appendString:[NSString stringWithCharacters:&c length:1]];
+ }
+
+ return result;
+}
+
@implementation TGCameraInterfaceAssets
+ (UIColor *)normalColor
@@ -11,12 +26,12 @@
+ (UIColor *)accentColor
{
- return UIColorRGB(0xffcc00);
+ return UIColorRGB(0xffd60a);
}
+ (UIColor *)redColor
{
- return UIColorRGB(0xf53333);
+ return UIColorRGB(0xfe3b30);
}
+ (UIColor *)panelBackgroundColor
@@ -24,6 +39,11 @@
return [UIColor blackColor];
}
++ (UIColor *)buttonColor
+{
+ return UIColorRGBA(0x393737, 0.6);
+}
+
+ (UIColor *)transparentPanelBackgroundColor
{
return [UIColor colorWithWhite:0.0f alpha:0.5];
@@ -34,9 +54,14 @@
return [UIColor colorWithWhite:0.0f alpha:0.7];
}
-+ (UIFont *)normalFontOfSize:(CGFloat)size
++ (UIFont *)regularFontOfSize:(CGFloat)size
{
- return [UIFont fontWithName:@"DINAlternate-Bold" size:size];
+ return [UIFont fontWithName:TGCameraEncodeText(@"TGDbnfsb.Sfhvmbs", -1) size:size];
+}
+
++ (UIFont *)boldFontOfSize:(CGFloat)size
+{
+ return [UIFont fontWithName:TGCameraEncodeText(@"TGDbnfsb.Tfnjcpme", -1) size:size];
}
@end
diff --git a/submodules/LegacyComponents/Sources/TGCameraMainPhoneView.m b/submodules/LegacyComponents/Sources/TGCameraMainPhoneView.m
index a8cdfcb45a..274e33e4be 100644
--- a/submodules/LegacyComponents/Sources/TGCameraMainPhoneView.m
+++ b/submodules/LegacyComponents/Sources/TGCameraMainPhoneView.m
@@ -19,7 +19,7 @@
#import "TGCameraFlipButton.h"
#import "TGCameraTimeCodeView.h"
#import "TGCameraZoomView.h"
-#import "TGCameraSegmentsView.h"
+#import "TGCameraToastView.h"
#import "TGMenuView.h"
@@ -127,8 +127,8 @@
_topPanelHeight = 44.0f;
_bottomPanelOffset = 94.0f;
_bottomPanelHeight = 123.0f;
- _modeControlOffset = 0.0f;
- _modeControlHeight = 52.0f;
+ _modeControlOffset = -5.0f;
+ _modeControlHeight = 56.0f;
_counterOffset = 7.0f;
shutterButtonWidth = 72.0f;
}
@@ -206,16 +206,7 @@
_bottomPanelBackgroundView.backgroundColor = [TGCameraInterfaceAssets transparentPanelBackgroundColor];
[_bottomPanelView addSubview:_bottomPanelBackgroundView];
- _cancelButton = [[TGModernButton alloc] initWithFrame:CGRectMake(0, 0, 60, 44)];
- _cancelButton.backgroundColor = [UIColor clearColor];
- _cancelButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
- _cancelButton.exclusiveTouch = true;
- _cancelButton.titleLabel.font = TGSystemFontOfSize(18);
- _cancelButton.contentEdgeInsets = UIEdgeInsetsMake(0, 20, 0, 0);
- [_cancelButton setTitle:TGLocalized(@"Common.Cancel") forState:UIControlStateNormal];
- [_cancelButton setTintColor:[TGCameraInterfaceAssets normalColor]];
- [_cancelButton sizeToFit];
- _cancelButton.frame = CGRectMake(0, 0, MAX(60.0f, _cancelButton.frame.size.width), 44);
+ _cancelButton = [[TGCameraCancelButton alloc] initWithFrame:CGRectMake(0, 0, 48, 48)];
[_cancelButton addTarget:self action:@selector(cancelButtonPressed) forControlEvents:UIControlEventTouchUpInside];
[_bottomPanelView addSubview:_cancelButton];
@@ -241,19 +232,19 @@
_modeControl = [[TGCameraModeControl alloc] initWithFrame:CGRectMake(0, 0, frame.size.width, _modeControlHeight) avatar:avatar];
[_bottomPanelView addSubview:_modeControl];
- _flipButton = [[TGCameraFlipButton alloc] initWithFrame:CGRectMake(0, 0, 56, 56) large:true];
+ _flipButton = [[TGCameraFlipButton alloc] initWithFrame:CGRectMake(0, 0, 48, 48)];
[_flipButton addTarget:self action:@selector(flipButtonPressed) forControlEvents:UIControlEventTouchUpInside];
[_bottomPanelView addSubview:_flipButton];
- _flashControl = [[TGCameraFlashControl alloc] initWithFrame:CGRectMake(0, 0, frame.size.width, TGCameraFlashControlHeight)];
+ _flashControl = [[TGCameraFlashControl alloc] initWithFrame:CGRectMake(3.0, 0, TGCameraFlashControlHeight, TGCameraFlashControlHeight)];
[_topPanelView addSubview:_flashControl];
- _topFlipButton = [[TGCameraFlipButton alloc] initWithFrame:CGRectMake(0, 0, 44, 44) large:false];
+ _topFlipButton = [[TGCameraFlipButton alloc] initWithFrame:CGRectMake(0, 0, 44, 44)];
_topFlipButton.hidden = true;
[_topFlipButton addTarget:self action:@selector(flipButtonPressed) forControlEvents:UIControlEventTouchUpInside];
- [_topPanelView addSubview:_topFlipButton];
+// [_topPanelView addSubview:_topFlipButton];
- _timecodeView = [[TGCameraTimeCodeView alloc] initWithFrame:CGRectMake((frame.size.width - 120) / 2, 12, 120, 20)];
+ _timecodeView = [[TGCameraTimeCodeView alloc] initWithFrame:CGRectMake((frame.size.width - 120) / 2, 12, 120, 28)];
_timecodeView.hidden = true;
_timecodeView.requestedRecordingDuration = ^NSTimeInterval
{
@@ -273,7 +264,10 @@
[self addSubview:_videoLandscapePanelView];
_flashActiveView = [[TGCameraFlashActiveView alloc] initWithFrame:CGRectMake((frame.size.width - 40) / 2, frame.size.height - _bottomPanelHeight - 37, 40, 21)];
- [self addSubview:_flashActiveView];
+// [self addSubview:_flashActiveView];
+
+ _toastView = [[TGCameraToastView alloc] initWithFrame:CGRectMake(0, frame.size.height - _bottomPanelHeight - 42, frame.size.width, 32)];
+ [self addSubview:_toastView];
_zoomView = [[TGCameraZoomView alloc] initWithFrame:CGRectMake(10, frame.size.height - _bottomPanelHeight - _bottomPanelOffset - 18, frame.size.width - 20, 1.5f)];
_zoomView.activityChanged = ^(bool active)
@@ -386,9 +380,12 @@
else
{
_hasResults = true;
- _topFlipButton.hidden = false;
+ _topFlipButton.hidden = _modeControl.cameraMode == PGCameraModePhotoScan;
_flipButton.hidden = true;
_doneButton.hidden = false;
+ if (_modeControl.cameraMode == PGCameraModePhotoScan) {
+ _modeControl.hidden = true;
+ }
}
}
@@ -830,18 +827,18 @@
if (superview == _videoLandscapePanelView && superviewSize.width < superviewSize.height)
superviewSize = CGSizeMake(superviewSize.height, superviewSize.width);
- if (UIInterfaceOrientationIsLandscape(orientation) && _flashControl.interfaceOrientation == orientation && _flashControl.superview == _topPanelView)
- {
- if (orientation == UIInterfaceOrientationLandscapeLeft)
- _flashControl.frame = CGRectMake(7, 0, TGCameraFlashControlHeight, 370);
- else if (orientation == UIInterfaceOrientationLandscapeRight)
- _flashControl.frame = CGRectMake(7, 0, TGCameraFlashControlHeight, 370);
- }
- else
- {
- _flashControl.frame = CGRectMake(0, (superviewSize.height - TGCameraFlashControlHeight) / 2, superviewSize.width, TGCameraFlashControlHeight);
- }
- _timecodeView.frame = CGRectMake((superviewSize.width - 120) / 2, (superviewSize.height - 20) / 2, 120, 20);
+// if (UIInterfaceOrientationIsLandscape(orientation) && _flashControl.interfaceOrientation == orientation && _flashControl.superview == _topPanelView)
+// {
+// if (orientation == UIInterfaceOrientationLandscapeLeft)
+// _flashControl.frame = CGRectMake(7, 0, TGCameraFlashControlHeight, 370);
+// else if (orientation == UIInterfaceOrientationLandscapeRight)
+// _flashControl.frame = CGRectMake(7, 0, TGCameraFlashControlHeight, 370);
+// }
+// else
+// {
+// _flashControl.frame = CGRectMake(0, (superviewSize.height - TGCameraFlashControlHeight) / 2, superviewSize.width, TGCameraFlashControlHeight);
+// }
+ _timecodeView.frame = CGRectMake((superviewSize.width - 120) / 2, (superviewSize.height - 28) / 2, 120, 28);
}
- (void)layoutPreviewRelativeViews
@@ -865,13 +862,17 @@
_modeControl.frame = CGRectMake(0, _modeControlOffset, self.frame.size.width, _modeControlHeight);
_shutterButton.frame = CGRectMake(round((self.frame.size.width - _shutterButton.frame.size.width) / 2), _modeControlHeight + _modeControlOffset, _shutterButton.frame.size.width, _shutterButton.frame.size.height);
- _cancelButton.frame = CGRectMake(0, round(_shutterButton.center.y - _cancelButton.frame.size.height / 2.0f), _cancelButton.frame.size.width, _cancelButton.frame.size.height);
+
+ _cancelButton.frame = CGRectMake(20.0, round(_shutterButton.center.y - _cancelButton.frame.size.height / 2.0f), _cancelButton.frame.size.width, _cancelButton.frame.size.height);
+
_doneButton.frame = CGRectMake(_bottomPanelView.frame.size.width - _doneButton.frame.size.width, round(_shutterButton.center.y - _doneButton.frame.size.height / 2.0f), _doneButton.frame.size.width, _doneButton.frame.size.height);
- _flipButton.frame = CGRectMake(self.frame.size.width - _flipButton.frame.size.width - 4.0f - 7.0f, round(_shutterButton.center.y - _flipButton.frame.size.height / 2.0f), _flipButton.frame.size.width, _flipButton.frame.size.height);
+ _flipButton.frame = CGRectMake(self.frame.size.width - _flipButton.frame.size.width - 20.0f, round(_shutterButton.center.y - _flipButton.frame.size.height / 2.0f), _flipButton.frame.size.width, _flipButton.frame.size.height);
_topFlipButton.frame = CGRectMake(self.frame.size.width - _topFlipButton.frame.size.width - 4.0f, 0.0f, _topFlipButton.frame.size.width, _topFlipButton.frame.size.height);
+ _toastView.frame = CGRectMake(0, self.frame.size.height - _bottomPanelHeight - _bottomPanelOffset - 32 - 16, self.frame.size.width, 32);
+
CGFloat photosViewSize = TGPhotoThumbnailSizeForCurrentScreen().height + 4 * 2;
_photoCounterButton.frame = CGRectMake(self.frame.size.width - 56.0f - 10.0f, _counterOffset, 64, 38);
_selectedPhotosView.frame = CGRectMake(4.0f, [_photoCounterButton convertRect:_photoCounterButton.bounds toView:self].origin.y - photosViewSize - 20.0f, self.frame.size.width - 4.0f * 2.0f, photosViewSize);
diff --git a/submodules/LegacyComponents/Sources/TGCameraMainTabletView.m b/submodules/LegacyComponents/Sources/TGCameraMainTabletView.m
index 8c650d195b..a52645e56e 100644
--- a/submodules/LegacyComponents/Sources/TGCameraMainTabletView.m
+++ b/submodules/LegacyComponents/Sources/TGCameraMainTabletView.m
@@ -100,7 +100,7 @@ const CGFloat TGCameraTabletPanelViewWidth = 102.0f;
};
[_panelView addSubview:_timecodeView];
- _flipButton = [[TGCameraFlipButton alloc] initWithFrame:CGRectMake(0, 0, 44, 44) large:true];
+ _flipButton = [[TGCameraFlipButton alloc] initWithFrame:CGRectMake(0, 0, 44, 44)];
[_flipButton addTarget:self action:@selector(flipButtonPressed) forControlEvents:UIControlEventTouchUpInside];
[_panelView addSubview:_flipButton];
diff --git a/submodules/LegacyComponents/Sources/TGCameraMainView.m b/submodules/LegacyComponents/Sources/TGCameraMainView.m
index 4254f41c16..79bc985526 100644
--- a/submodules/LegacyComponents/Sources/TGCameraMainView.m
+++ b/submodules/LegacyComponents/Sources/TGCameraMainView.m
@@ -5,10 +5,11 @@
#import
#import "TGCameraShutterButton.h"
+#import "TGCameraFlipButton.h"
#import "TGCameraModeControl.h"
#import "TGCameraTimeCodeView.h"
#import "TGCameraZoomView.h"
-#import "TGCameraSegmentsView.h"
+#import "TGCameraToastView.h"
#import "TGMediaPickerPhotoCounterButton.h"
#import "TGMediaPickerPhotoStripView.h"
@@ -37,15 +38,22 @@
[self updateForCameraModeChangeWithPreviousMode:previousMode];
}
+- (void)setToastMessage:(NSString *)message animated:(bool)animated
+{
+ [_toastView setText:message animated:animated];
+}
+
- (void)updateForCameraModeChangeWithPreviousMode:(PGCameraMode)__unused previousMode
{
switch (_modeControl.cameraMode)
{
case PGCameraModePhoto:
case PGCameraModeSquarePhoto:
+ case PGCameraModePhotoScan:
{
[_shutterButton setButtonMode:TGCameraShutterButtonNormalMode animated:true];
[_timecodeView setHidden:true animated:true];
+ [_flipButton setHidden:_modeControl.cameraMode == PGCameraModePhotoScan animated:true];
}
break;
diff --git a/submodules/LegacyComponents/Sources/TGCameraModeControl.m b/submodules/LegacyComponents/Sources/TGCameraModeControl.m
index fd6b3cd2ac..7b3b7610a6 100644
--- a/submodules/LegacyComponents/Sources/TGCameraModeControl.m
+++ b/submodules/LegacyComponents/Sources/TGCameraModeControl.m
@@ -26,10 +26,7 @@ const CGFloat TGCameraModeControlVerticalInteritemSpace = 29.0f;
self = [super initWithFrame:frame];
if (self != nil)
{
- if (frame.size.width > frame.size.height)
- _kerning = 3.5f;
- else
- _kerning = 2.0f;
+ _kerning = 0.75f;
_maskView = [[UIView alloc] initWithFrame:self.bounds];
_maskView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
@@ -53,6 +50,7 @@ const CGFloat TGCameraModeControlVerticalInteritemSpace = 29.0f;
[
[self _createButtonForMode:PGCameraModeVideo title:TGLocalized(@"Camera.VideoMode")],
[self _createButtonForMode:PGCameraModePhoto title:TGLocalized(@"Camera.PhotoMode")]
+// [self _createButtonForMode:PGCameraModePhotoScan title:TGLocalized(@"Camera.ScanMode")]
];
}
@@ -72,7 +70,7 @@ const CGFloat TGCameraModeControlVerticalInteritemSpace = 29.0f;
_maskLayer = [CAGradientLayer layer];
_maskLayer.colors = @[ (id)[UIColor clearColor].CGColor, (id)[UIColor whiteColor].CGColor, (id)[UIColor whiteColor].CGColor, (id)[UIColor clearColor].CGColor ];
- _maskLayer.locations = @[ @0.0f, @0.33f, @0.67f, @1.0f ];
+ _maskLayer.locations = @[ @0.0f, @0.4f, @0.6f, @1.0f ];
_maskLayer.startPoint = CGPointMake(0.0f, 0.5f);
_maskLayer.endPoint = CGPointMake(1.0f, 0.5f);
_maskView.layer.mask = _maskLayer;
@@ -94,19 +92,14 @@ const CGFloat TGCameraModeControlVerticalInteritemSpace = 29.0f;
return self;
}
-+ (UIFont *)_buttonFont
-{
- return [UIFont fontWithName:@"SFCompactText-Regular" size:14];
-}
-
+ (CGFloat)_buttonHorizontalSpacing
{
- return 19;
+ return 25;
}
+ (CGFloat)_buttonVerticalSpacing
{
- return 19;
+ return 25;
}
- (UIButton *)_createButtonForMode:(PGCameraMode)mode title:(NSString *)title
@@ -116,11 +109,17 @@ const CGFloat TGCameraModeControlVerticalInteritemSpace = 29.0f;
button.exclusiveTouch = true;
button.hitTestEdgeInsets = UIEdgeInsetsMake(-10, -10, -10, -10);
button.tag = mode;
- button.titleLabel.font = [TGCameraInterfaceAssets normalFontOfSize:13];
- [button setAttributedTitle:[[NSAttributedString alloc] initWithString:title attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets normalColor], NSKernAttributeName: @(_kerning) }] forState:UIControlStateNormal];
- [button setAttributedTitle:[[NSAttributedString alloc] initWithString:title attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets accentColor], NSKernAttributeName: @(_kerning) }] forState:UIControlStateSelected];
+ [button setAttributedTitle:[[NSAttributedString alloc] initWithString:title attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets normalColor], NSKernAttributeName: @(_kerning), NSFontAttributeName: [TGCameraInterfaceAssets regularFontOfSize:14] }] forState:UIControlStateNormal];
+ [button setAttributedTitle:[[NSAttributedString alloc] initWithString:title attributes:@{ NSForegroundColorAttributeName: [TGCameraInterfaceAssets accentColor], NSKernAttributeName: @(_kerning), NSFontAttributeName: [TGCameraInterfaceAssets boldFontOfSize:14] }] forState:UIControlStateSelected];
[button setAttributedTitle:[button attributedTitleForState:UIControlStateSelected] forState:UIControlStateHighlighted | UIControlStateSelected];
[button sizeToFit];
+ button.titleLabel.shadowColor = [UIColor blackColor];
+ button.titleLabel.shadowOffset = CGSizeMake(0.0, 0.0);
+ button.titleLabel.layer.shadowRadius = 2.0;
+ button.titleLabel.layer.shadowOpacity = 0.3;
+ button.titleLabel.layer.masksToBounds = false;
+ button.titleLabel.layer.shouldRasterize = true;
+ button.frame = CGRectMake(0.0, 0.0, button.frame.size.width + 2.0, button.frame.size.height);
[button addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
return button;
@@ -191,7 +190,7 @@ const CGFloat TGCameraModeControlVerticalInteritemSpace = 29.0f;
CGFloat angle = ABS(offset / _wrapperView.frame.size.width * 0.99f);
CGFloat sign = offset > 0 ? 1.0f : -1.0f;
- CATransform3D transform = CATransform3DTranslate(CATransform3DIdentity, -28 * angle * angle * sign, 0.0f, 0.0f);
+ CATransform3D transform = CATransform3DTranslate(CATransform3DIdentity, -2 * angle * angle * sign, 0.0f, 0.0f);
transform = CATransform3DRotate(transform, angle, 0.0f, sign, 0.0f);
return transform;
}
diff --git a/submodules/LegacyComponents/Sources/TGCameraRectangleView.h b/submodules/LegacyComponents/Sources/TGCameraRectangleView.h
new file mode 100644
index 0000000000..3560be793e
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/TGCameraRectangleView.h
@@ -0,0 +1,14 @@
+#import
+
+@class TGCameraPreviewView;
+@class PGRectangle;
+
+@interface TGCameraRectangleView : UIView
+
+@property (nonatomic, weak) TGCameraPreviewView *previewView;
+@property (nonatomic, assign) bool enabled;
+
+- (void)drawRectangle:(PGRectangle *)rectangle;
+
+@end
+
diff --git a/submodules/LegacyComponents/Sources/TGCameraRectangleView.m b/submodules/LegacyComponents/Sources/TGCameraRectangleView.m
new file mode 100644
index 0000000000..bfe77c9928
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/TGCameraRectangleView.m
@@ -0,0 +1,102 @@
+#import "TGCameraRectangleView.h"
+#import "TGCameraInterfaceAssets.h"
+#import "LegacyComponentsInternal.h"
+#import "TGImageUtils.h"
+
+#import "TGCameraPreviewView.h"
+#import "PGRectangleDetector.h"
+
+@interface TGCameraRectangleView ()
+{
+ CAShapeLayer *_quadLayer;
+
+ bool _clearing;
+}
+@end
+
+@implementation TGCameraRectangleView
+
+- (instancetype)initWithFrame:(CGRect)frame
+{
+ self = [super initWithFrame:frame];
+ if (self != nil) {
+ _enabled = true;
+
+ self.backgroundColor = [UIColor clearColor];
+ self.alpha = 0.0f;
+
+ _quadLayer = [[CAShapeLayer alloc] init];
+ _quadLayer.strokeColor = [[TGCameraInterfaceAssets accentColor] colorWithAlphaComponent:0.7].CGColor;
+ _quadLayer.fillColor = [[TGCameraInterfaceAssets accentColor] colorWithAlphaComponent:0.45].CGColor;
+ _quadLayer.lineWidth = 2.0;
+
+ [self.layer addSublayer:_quadLayer];
+ }
+ return self;
+}
+
+- (CGPathRef)pathForRectangle:(PGRectangle *)rectangle
+{
+ CGAffineTransform transform = CGAffineTransformMakeScale(self.previewView.frame.size.width, self.previewView.frame.size.height);
+ PGRectangle *displayRectangle = [[rectangle rotate90] transform:transform];
+
+ UIBezierPath *path = [[UIBezierPath alloc] init];
+ [path moveToPoint:displayRectangle.topLeft];
+ [path addLineToPoint:displayRectangle.topRight];
+ [path addLineToPoint:displayRectangle.bottomRight];
+ [path addLineToPoint:displayRectangle.bottomLeft];
+ [path closePath];
+ return path.CGPath;
+}
+
+- (void)drawRectangle:(PGRectangle *)rectangle
+{
+ if (!_enabled) {
+ return;
+ }
+
+ if (rectangle == nil) {
+ [self clear];
+ return;
+ }
+
+ _clearing = false;
+ [self.layer removeAllAnimations];
+
+ bool animated = _quadLayer.path != nil;
+ if (animated) {
+ CAAnimation *animation = [CABasicAnimation animationWithKeyPath:@"path"];
+ animation.duration = 0.2;
+ [_quadLayer addAnimation:animation forKey:@"path"];
+ } else {
+ self.transform = CGAffineTransformMakeScale(1.1, 1.1);
+ [UIView animateWithDuration:0.2 delay:0.0 options:UIViewAnimationOptionAllowAnimatedContent animations:^{
+ self.transform = CGAffineTransformIdentity;
+ self.alpha = 1.0f;
+ } completion:nil];
+ }
+ _quadLayer.path = [self pathForRectangle:rectangle];
+}
+
+- (void)clear
+{
+ if (_quadLayer.path == nil || _clearing)
+ return;
+
+ _clearing = true;
+ [UIView animateWithDuration:0.2 delay:0.0 options:UIViewAnimationOptionAllowAnimatedContent animations:^{
+ self.alpha = 0.0f;
+ } completion:^(BOOL finished) {
+ if (_clearing) {
+ _quadLayer.path = nil;
+ _clearing = false;
+ }
+ }];
+}
+
+- (void)layoutSubviews
+{
+ _quadLayer.frame = self.bounds;
+}
+
+@end
diff --git a/submodules/LegacyComponents/Sources/TGCameraSegmentsView.m b/submodules/LegacyComponents/Sources/TGCameraSegmentsView.m
deleted file mode 100644
index 6f5ed063cf..0000000000
--- a/submodules/LegacyComponents/Sources/TGCameraSegmentsView.m
+++ /dev/null
@@ -1,260 +0,0 @@
-#import "TGCameraSegmentsView.h"
-
-#import "LegacyComponentsInternal.h"
-#import "TGImageUtils.h"
-
-#import "TGCameraInterfaceAssets.h"
-
-#import
-
-const CGFloat TGCameraSegmentsBackgroundInset = 21.0f;
-const CGFloat TGCameraSegmentsBackgroundHeight = 10.0f;
-const CGFloat TGCameraSegmentsSpacing = 1.5f;
-const CGFloat TGCameraSegmentsMinimumWidth = 4.0f;
-
-@interface TGCameraSegmentView : UIImageView
-
-- (void)setBlinking;
-- (void)setRecording;
-- (void)setCommittingWithCompletion:(void (^)(void))completion;
-
-@end
-
-@interface TGCameraSegmentsView ()
-{
- UIImageView *_backgroundView;
- UIView *_segmentWrapper;
- NSArray *_segmentViews;
-
- TGCameraSegmentView *_currentSegmentView;
- CGFloat _currentSegment;
-
- TGModernButton *_deleteButton;
-}
-@end
-
-@implementation TGCameraSegmentsView
-
-- (instancetype)initWithFrame:(CGRect)frame
-{
- self = [super initWithFrame:frame];
- if (self != nil)
- {
- static dispatch_once_t onceToken;
- static UIImage *segmentImage = nil;
- dispatch_once(&onceToken, ^
- {
- UIGraphicsBeginImageContextWithOptions(CGSizeMake(4, 4), false, 0.0f);
- CGContextRef context = UIGraphicsGetCurrentContext();
- CGContextSetFillColorWithColor(context, [UIColor whiteColor].CGColor);
- [[UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, 0, 4, 4) cornerRadius:0.5f] fill];
- segmentImage = [UIGraphicsGetImageFromCurrentImageContext() resizableImageWithCapInsets:UIEdgeInsetsMake(4, 4, 4, 4)];
- UIGraphicsEndImageContext();
- });
-
- _backgroundView = [[UIImageView alloc] initWithImage:[TGComponentsImageNamed(@"CameraSegmentsBack") resizableImageWithCapInsets:UIEdgeInsetsMake(4, 4, 4, 4)]];
- [self addSubview:_backgroundView];
-
- _segmentWrapper = [[UIView alloc] init];
- [_backgroundView addSubview:_segmentWrapper];
-
- _currentSegmentView = [[TGCameraSegmentView alloc] initWithImage:[TGTintedImage(segmentImage, [TGCameraInterfaceAssets accentColor]) resizableImageWithCapInsets:UIEdgeInsetsMake(4, 4, 4, 4)]];
- [_segmentWrapper addSubview:_currentSegmentView];
-
- _deleteButton = [[TGModernButton alloc] initWithFrame:CGRectMake(0, 0, 32, 32)];
- _deleteButton.exclusiveTouch = true;
- [_deleteButton setImage:TGComponentsImageNamed(@"CameraDeleteIcon") forState:UIControlStateNormal];
- [_deleteButton addTarget:self action:@selector(deleteButtonPressed) forControlEvents:UIControlEventTouchUpInside];
- [self addSubview:_deleteButton];
-
- [self setDeleteButtonHidden:true animated:false];
- }
- return self;
-}
-
-- (void)deleteButtonPressed
-{
- if (self.deletePressed != nil)
- self.deletePressed();
-}
-
-- (void)setSegments:(NSArray *)__unused segments
-{
-
-}
-
-- (void)startCurrentSegment
-{
- [_currentSegmentView setRecording];
-}
-
-- (void)setCurrentSegment:(CGFloat)length
-{
- _currentSegment = length;
- [self _layoutSegmentViews];
-}
-
-- (void)commitCurrentSegmentWithCompletion:(void (^)(void))completion
-{
- __weak TGCameraSegmentView *weakSegmentView = _currentSegmentView;
- [_currentSegmentView setCommittingWithCompletion:^
- {
- __strong TGCameraSegmentView *strongSegmentView = weakSegmentView;
- if (strongSegmentView == nil)
- return;
-
- _currentSegment = 0;
-
- if (completion != nil)
- completion();
-
- [strongSegmentView setBlinking];
- }];
-}
-
-- (void)highlightLastSegment
-{
-
-}
-
-- (void)removeLastSegment
-{
-
-}
-
-- (void)setHidden:(BOOL)hidden
-{
- self.alpha = hidden ? 0.0f : 1.0f;
- super.hidden = hidden;
-
- if (!hidden)
- [_currentSegmentView setBlinking];
-}
-
-- (void)setHidden:(bool)hidden animated:(bool)animated delay:(NSTimeInterval)delay
-{
- if (animated)
- {
- super.hidden = false;
-
- [UIView animateWithDuration:0.25f delay:delay options:UIViewAnimationOptionCurveLinear animations:^
- {
- self.alpha = hidden ? 0.0f : 1.0f;
- } completion:^(BOOL finished)
- {
- if (finished)
- self.hidden = hidden;
-
- if (!hidden)
- [_currentSegmentView setBlinking];
- }];
- }
- else
- {
- [self setHidden:hidden];
- }
-}
-
-- (void)setDeleteButtonHidden:(bool)hidden animated:(bool)animated
-{
- if (animated)
- {
- _deleteButton.hidden = false;
-
- [UIView animateWithDuration:0.25f animations:^
- {
- _deleteButton.alpha = hidden ? 0.0f : 1.0f;
- } completion:^(BOOL finished)
- {
- if (finished)
- _deleteButton.hidden = hidden;
- }];
- }
- else
- {
- _deleteButton.hidden = hidden;
- _deleteButton.alpha = hidden ? 0.0f : 1.0f;
- }
-}
-
-- (void)_layoutBackgroundView
-{
- CGFloat backgroundRightPadding = 0.0f;
- CGFloat deleteButtonMargin = _deleteButton.frame.size.width + 9.0f;
- if (!_deleteButton.hidden)
- backgroundRightPadding = deleteButtonMargin;
-
- _backgroundView.frame = CGRectMake(TGCameraSegmentsBackgroundInset, (self.frame.size.height - TGCameraSegmentsBackgroundHeight) / 2, self.frame.size.width - TGCameraSegmentsBackgroundInset * 2 - backgroundRightPadding, TGCameraSegmentsBackgroundHeight);
- _segmentWrapper.frame = CGRectMake(3, 3, self.frame.size.width - TGCameraSegmentsBackgroundInset * 2 - deleteButtonMargin, TGCameraSegmentsBackgroundHeight - 3 * 2);
-}
-
-- (void)_layoutDeleteButton
-{
- _deleteButton.frame = CGRectMake(CGRectGetMaxX(_backgroundView.frame) + 14, (self.frame.size.height - _deleteButton.frame.size.height) / 2, _deleteButton.frame.size.width, _deleteButton.frame.size.height);
-}
-
-- (void)_layoutSegmentViews
-{
-
-}
-
-- (void)layoutSubviews
-{
- [self _layoutBackgroundView];
- [self _layoutDeleteButton];
-}
-
-@end
-
-@interface TGCameraSegmentView ()
-{
-
-}
-@end
-
-@implementation TGCameraSegmentView
-
-- (instancetype)initWithImage:(UIImage *)image
-{
- self = [super initWithImage:image];
- if (self != nil)
- {
-
- }
- return self;
-}
-
-- (void)setBlinking
-{
- [self _playBlinkAnimation];
-}
-
-- (void)setRecording
-{
- [self _stopBlinkAnimation];
-}
-
-- (void)setCommittingWithCompletion:(void (^)(void))__unused completion
-{
-
-}
-
-- (void)_playBlinkAnimation
-{
- CAKeyframeAnimation *blinkAnim = [CAKeyframeAnimation animationWithKeyPath:@"opacity"];
- blinkAnim.duration = 1.2f;
- blinkAnim.autoreverses = false;
- blinkAnim.fillMode = kCAFillModeForwards;
- blinkAnim.repeatCount = HUGE_VALF;
- blinkAnim.keyTimes = @[ @0.0f, @0.4f, @0.5f, @0.9f, @1.0f ];
- blinkAnim.values = @[ @1.0f, @1.0f, @0.0f, @0.0f, @1.0f ];
-
- [self.layer addAnimation:blinkAnim forKey:@"opacity"];
-}
-
-- (void)_stopBlinkAnimation
-{
- [self.layer removeAllAnimations];
-}
-
-@end
diff --git a/submodules/LegacyComponents/Sources/TGCameraShutterButton.m b/submodules/LegacyComponents/Sources/TGCameraShutterButton.m
index 158bbc6718..4bdf177f9c 100644
--- a/submodules/LegacyComponents/Sources/TGCameraShutterButton.m
+++ b/submodules/LegacyComponents/Sources/TGCameraShutterButton.m
@@ -1,4 +1,5 @@
#import "TGCameraShutterButton.h"
+#import "TGImageUtils.h"
#import
@@ -36,7 +37,7 @@
UIGraphicsBeginImageContextWithOptions(CGSizeMake(frame.size.width, frame.size.height), false, 0.0f);
CGContextRef context = UIGraphicsGetCurrentContext();
- CGFloat thickness = (padding < 8.0f) ? 5.0f : 6.0f;
+ CGFloat thickness = 4.0 - TGScreenPixel;
CGContextSetStrokeColorWithColor(context, [TGCameraInterfaceAssets normalColor].CGColor);
CGContextSetLineWidth(context, thickness);
@@ -70,17 +71,17 @@
- (CGFloat)innerPadding
{
if (self.frame.size.width == 50.0f)
- return 7.0f;
+ return 6.0f;
- return 8.0f;
+ return 6.0f;
}
- (CGFloat)squarePadding
{
if (self.frame.size.width == 50.0f)
- return 15.0f;
+ return 19.0f;
- return 19.0f;
+ return 23.0f;
}
- (void)setButtonMode:(TGCameraShutterButtonMode)mode animated:(bool)animated
diff --git a/submodules/LegacyComponents/Sources/TGCameraTimeCodeView.m b/submodules/LegacyComponents/Sources/TGCameraTimeCodeView.m
index 8a6f5ad331..1fbea1fea1 100644
--- a/submodules/LegacyComponents/Sources/TGCameraTimeCodeView.m
+++ b/submodules/LegacyComponents/Sources/TGCameraTimeCodeView.m
@@ -7,7 +7,7 @@
@interface TGCameraTimeCodeView ()
{
- UIImageView *_dotView;
+ UIView *_backgroundView;
UILabel *_timeLabel;
NSUInteger _recordingDurationSeconds;
@@ -22,29 +22,17 @@
self = [super initWithFrame:frame];
if (self != nil)
{
- static UIImage *dotImage = nil;
- static dispatch_once_t onceToken;
- dispatch_once(&onceToken, ^
- {
- UIGraphicsBeginImageContextWithOptions(CGSizeMake(6, 6), false, 0.0f);
- CGContextRef context = UIGraphicsGetCurrentContext();
-
- CGContextSetFillColorWithColor(context, [TGCameraInterfaceAssets redColor].CGColor);
- CGContextFillEllipseInRect(context, CGRectMake(0, 0, 6, 6));
-
- dotImage = UIGraphicsGetImageFromCurrentImageContext();
- UIGraphicsEndImageContext();
- });
-
- _dotView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 7, 6, 6)];
- _dotView.layer.opacity = 0.0f;
- _dotView.image = dotImage;
- [self addSubview:_dotView];
+ _backgroundView = [[UIView alloc] init];
+ _backgroundView.clipsToBounds = true;
+ _backgroundView.layer.cornerRadius = 4.0;
+ _backgroundView.backgroundColor = [TGCameraInterfaceAssets redColor];
+ _backgroundView.alpha = 0.0;
+ [self addSubview:_backgroundView];
_timeLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
_timeLabel.backgroundColor = [UIColor clearColor];
- _timeLabel.font = [TGCameraInterfaceAssets normalFontOfSize:21];
- _timeLabel.text = @"00:00:00";
+ _timeLabel.font = [TGCameraInterfaceAssets regularFontOfSize:21];
+ _timeLabel.text = @"00:00";
_timeLabel.textAlignment = NSTextAlignmentCenter;
_timeLabel.textColor = [TGCameraInterfaceAssets normalColor];
[self addSubview:_timeLabel];
@@ -59,7 +47,18 @@
- (void)_updateRecordingTime
{
- _timeLabel.text = [NSString stringWithFormat:@"%02d:%02d:%02d", (int)(_recordingDurationSeconds / 3600), (int)(_recordingDurationSeconds / 60) % 60, (int)(_recordingDurationSeconds % 60)];
+ if (_recordingDurationSeconds > 60 * 60) {
+ _timeLabel.text = [NSString stringWithFormat:@"%02d:%02d:%02d", (int)(_recordingDurationSeconds / 3600), (int)(_recordingDurationSeconds / 60) % 60, (int)(_recordingDurationSeconds % 60)];
+ } else {
+ _timeLabel.text = [NSString stringWithFormat:@"%02d:%02d", (int)(_recordingDurationSeconds / 60) % 60, (int)(_recordingDurationSeconds % 60)];
+ }
+ [_timeLabel sizeToFit];
+
+ CGFloat inset = 8.0f;
+ CGFloat backgroundWidth = _timeLabel.frame.size.width + inset * 2.0;
+ _backgroundView.frame = CGRectMake(floor((self.frame.size.width - backgroundWidth) / 2.0), 0.0, backgroundWidth, 28.0);
+
+ _timeLabel.frame = CGRectMake(floor((self.frame.size.width - _timeLabel.frame.size.width) / 2.0), floor((28 - _timeLabel.frame.size.height) / 2.0), _timeLabel.frame.size.width, _timeLabel.frame.size.height);
}
- (void)startRecording
@@ -67,22 +66,18 @@
[self reset];
_recordingTimer = [TGTimerTarget scheduledMainThreadTimerWithTarget:self action:@selector(recordingTimerEvent) interval:1.0 repeat:false];
-
- [self playBlinkAnimation];
}
- (void)stopRecording
{
[_recordingTimer invalidate];
_recordingTimer = nil;
-
- [self stopBlinkAnimation];
}
- (void)reset
{
- _timeLabel.text = @"00:00:00";
_recordingDurationSeconds = 0;
+ [self _updateRecordingTime];
}
- (void)recordingTimerEvent
@@ -108,24 +103,6 @@
}
}
-- (void)playBlinkAnimation
-{
- CAKeyframeAnimation *blinkAnim = [CAKeyframeAnimation animationWithKeyPath:@"opacity"];
- blinkAnim.duration = 0.75f;
- blinkAnim.autoreverses = false;
- blinkAnim.fillMode = kCAFillModeForwards;
- blinkAnim.repeatCount = HUGE_VALF;
- blinkAnim.keyTimes = @[ @0.0f, @0.4f, @0.5f, @0.9f, @1.0f ];
- blinkAnim.values = @[ @1.0f, @1.0f, @0.0f, @0.0f, @1.0f ];
-
- [_dotView.layer addAnimation:blinkAnim forKey:@"opacity"];
-}
-
-- (void)stopBlinkAnimation
-{
- [_dotView.layer removeAllAnimations];
-}
-
- (void)setHidden:(BOOL)hidden
{
self.alpha = hidden ? 0.0f : 1.0f;
@@ -156,7 +133,7 @@
- (void)layoutSubviews
{
- _dotView.frame = CGRectMake(CGFloor(self.frame.size.width / 2 - 48), 7, 6, 6);
+ [self _updateRecordingTime];
}
@end
diff --git a/submodules/LegacyComponents/Sources/TGCameraToastView.h b/submodules/LegacyComponents/Sources/TGCameraToastView.h
new file mode 100644
index 0000000000..d5870d620e
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/TGCameraToastView.h
@@ -0,0 +1,7 @@
+#import
+
+@interface TGCameraToastView : UIView
+
+- (void)setText:(NSString *)text animated:(bool)animated;
+
+@end
diff --git a/submodules/LegacyComponents/Sources/TGCameraToastView.m b/submodules/LegacyComponents/Sources/TGCameraToastView.m
new file mode 100644
index 0000000000..6bb98b597e
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/TGCameraToastView.m
@@ -0,0 +1,70 @@
+#import "TGCameraToastView.h"
+#import "TGCameraInterfaceAssets.h"
+#import "TGFont.h"
+
+@implementation TGCameraToastView
+{
+ UIView *_backgroundView;
+ UILabel *_label;
+}
+
+- (instancetype)initWithFrame:(CGRect)frame
+{
+ self = [super initWithFrame:frame];
+ if (self != nil)
+ {
+ _backgroundView = [[UIView alloc] init];
+ _backgroundView.alpha = 0.0f;
+ _backgroundView.clipsToBounds = true;
+ _backgroundView.layer.cornerRadius = 5.0f;
+ _backgroundView.backgroundColor = [TGCameraInterfaceAssets transparentPanelBackgroundColor];
+ [self addSubview:_backgroundView];
+
+ _label = [[UILabel alloc] init];
+ _label.alpha = 0.0f;
+ _label.textColor = [UIColor whiteColor];
+ _label.font = [TGFont systemFontOfSize:17.0f];
+ [self addSubview:_label];
+ }
+ return self;
+}
+
+- (void)setText:(NSString *)text animated:(bool)animated
+{
+ if (text.length == 0)
+ {
+ if (animated) {
+ [UIView animateWithDuration:0.2 animations:^{
+ _backgroundView.alpha = 0.0f;
+ _label.alpha = 0.0f;
+ }];
+ } else {
+ _backgroundView.alpha = 0.0f;
+ _label.alpha = 0.0f;
+ }
+ return;
+ }
+
+ if (animated) {
+ [UIView animateWithDuration:0.2 animations:^{
+ _backgroundView.alpha = 1.0f;
+ _label.alpha = 1.0f;
+ }];
+ } else {
+ _backgroundView.alpha = 1.0f;
+ _label.alpha = 1.0f;
+ }
+
+ _label.text = text;
+ [_label sizeToFit];
+
+ CGFloat inset = 8.0f;
+ CGFloat backgroundWidth = _label.frame.size.width + inset * 2.0;
+ _backgroundView.frame = CGRectMake(floor((self.frame.size.width - backgroundWidth) / 2.0), 0.0, backgroundWidth, 32.0);
+
+ _label.frame = CGRectMake(floor((self.frame.size.width - _label.frame.size.width) / 2.0), floor((32 - _label.frame.size.height) / 2.0), _label.frame.size.width, _label.frame.size.height);
+
+ [self setNeedsLayout];
+}
+
+@end
diff --git a/submodules/LegacyComponents/Sources/TGFont.mm b/submodules/LegacyComponents/Sources/TGFont.mm
index 9c66d82e67..5d1ccc575e 100644
--- a/submodules/LegacyComponents/Sources/TGFont.mm
+++ b/submodules/LegacyComponents/Sources/TGFont.mm
@@ -117,7 +117,7 @@ UIFont *TGFixedSystemFontOfSize(CGFloat size)
+ (UIFont *)roundedFontOfSize:(CGFloat)size
{
if (@available(iOSApplicationExtension 13.0, iOS 13.0, *)) {
- UIFontDescriptor *descriptor = [UIFont boldSystemFontOfSize: size].fontDescriptor;
+ UIFontDescriptor *descriptor = [UIFont boldSystemFontOfSize:size].fontDescriptor;
descriptor = [descriptor fontDescriptorWithDesign:UIFontDescriptorSystemDesignRounded];
return [UIFont fontWithDescriptor:descriptor size:size];
} else {
diff --git a/submodules/LegacyComponents/Sources/TGMediaVideoConverter.m b/submodules/LegacyComponents/Sources/TGMediaVideoConverter.m
index 65b20a3dd2..f0afb18ed1 100644
--- a/submodules/LegacyComponents/Sources/TGMediaVideoConverter.m
+++ b/submodules/LegacyComponents/Sources/TGMediaVideoConverter.m
@@ -1266,7 +1266,7 @@ static CGFloat progressOfSampleBufferInTimeRange(CMSampleBufferRef sampleBuffer,
return (CGSize){ 1920.0f, 1920.0f };
case TGMediaVideoConversionPresetVideoMessage:
- return (CGSize){ 240.0f, 240.0f };
+ return (CGSize){ 384.0f, 384.0f };
case TGMediaVideoConversionPresetProfileLow:
return (CGSize){ 720.0f, 720.0f };
@@ -1375,7 +1375,7 @@ static CGFloat progressOfSampleBufferInTimeRange(CMSampleBufferRef sampleBuffer,
return 4000;
case TGMediaVideoConversionPresetVideoMessage:
- return 300;
+ return 1000;
case TGMediaVideoConversionPresetProfile:
return 1500;
diff --git a/submodules/LegacyComponents/Sources/TGPhotoAvatarCropController.h b/submodules/LegacyComponents/Sources/TGPhotoAvatarCropController.h
deleted file mode 100644
index 50036f64bf..0000000000
--- a/submodules/LegacyComponents/Sources/TGPhotoAvatarCropController.h
+++ /dev/null
@@ -1,26 +0,0 @@
-#import "TGPhotoEditorTabController.h"
-
-@class PGPhotoEditor;
-@class TGPhotoEditorPreviewView;
-@class AVPlayer;
-
-@interface TGPhotoAvatarCropController : TGPhotoEditorTabController
-
-@property (nonatomic, readonly) UIView *transitionParentView;
-
-@property (nonatomic, assign) bool switching;
-@property (nonatomic, assign) bool skipTransitionIn;
-@property (nonatomic, assign) bool fromCamera;
-
-@property (nonatomic, copy) void (^finishedPhotoProcessing)(void);
-
-- (instancetype)initWithContext:(id)context photoEditor:(PGPhotoEditor *)photoEditor previewView:(TGPhotoEditorPreviewView *)previewView;
-
-- (void)setImage:(UIImage *)image;
-- (void)setPlayer:(AVPlayer *)player;
-- (void)setSnapshotImage:(UIImage *)snapshotImage;
-- (void)setSnapshotView:(UIView *)snapshotView;
-
-- (void)_finishedTransitionIn;
-
-@end
diff --git a/submodules/LegacyComponents/Sources/TGPhotoAvatarCropController.m b/submodules/LegacyComponents/Sources/TGPhotoAvatarCropController.m
deleted file mode 100644
index c1e91bcd7d..0000000000
--- a/submodules/LegacyComponents/Sources/TGPhotoAvatarCropController.m
+++ /dev/null
@@ -1,707 +0,0 @@
-#import "TGPhotoAvatarCropController.h"
-
-#import "LegacyComponentsInternal.h"
-
-#import "TGPhotoEditorInterfaceAssets.h"
-#import
-
-#import
-#import
-
-#import "PGPhotoEditor.h"
-#import "TGPhotoEditorPreviewView.h"
-
-#import "TGPhotoAvatarCropView.h"
-#import
-
-#import "TGPhotoPaintController.h"
-
-const CGFloat TGPhotoAvatarCropButtonsWrapperSize = 61.0f;
-
-@interface TGPhotoAvatarCropController ()
-{
- UIView *_wrapperView;
-
- UIView *_buttonsWrapperView;
- TGModernButton *_rotateButton;
- TGModernButton *_mirrorButton;
- TGModernButton *_resetButton;
-
- TGPhotoAvatarCropView *_cropView;
-
- UIView *_snapshotView;
- UIImage *_snapshotImage;
-
- bool _appeared;
- UIImage *_imagePendingLoad;
-
- dispatch_semaphore_t _waitSemaphore;
-}
-
-@property (nonatomic, weak) PGPhotoEditor *photoEditor;
-@property (nonatomic, weak) TGPhotoEditorPreviewView *previewView;
-
-@end
-
-@implementation TGPhotoAvatarCropController
-
-- (instancetype)initWithContext:(id)context photoEditor:(PGPhotoEditor *)photoEditor previewView:(TGPhotoEditorPreviewView *)previewView
-{
- self = [super initWithContext:context];
- if (self != nil)
- {
- self.photoEditor = photoEditor;
- self.previewView = previewView;
-
- _waitSemaphore = dispatch_semaphore_create(0);
- }
- return self;
-}
-
-- (void)loadView
-{
- [super loadView];
-
- __weak TGPhotoAvatarCropController *weakSelf = self;
- void(^interactionBegan)(void) = ^
- {
- __strong TGPhotoAvatarCropController *strongSelf = weakSelf;
- if (strongSelf == nil)
- return;
-
- self.controlVideoPlayback(false);
- };
- void(^interactionEnded)(void) = ^
- {
- __strong TGPhotoAvatarCropController *strongSelf = weakSelf;
- if (strongSelf == nil)
- return;
-
- if ([strongSelf shouldAutorotate])
- [TGViewController attemptAutorotation];
-
- self.controlVideoPlayback(true);
- };
-
- _wrapperView = [[UIView alloc] initWithFrame:self.view.bounds];
- _wrapperView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
- [self.view addSubview:_wrapperView];
-
- PGPhotoEditor *photoEditor = self.photoEditor;
- _cropView = [[TGPhotoAvatarCropView alloc] initWithOriginalSize:photoEditor.originalSize screenSize:[self referenceViewSize] fullPreviewView:nil fullPaintingView:nil fullEntitiesView:nil];
- [_cropView setCropRect:photoEditor.cropRect];
- [_cropView setCropOrientation:photoEditor.cropOrientation];
- [_cropView setCropMirrored:photoEditor.cropMirrored];
- _cropView.croppingChanged = ^
- {
- __strong TGPhotoAvatarCropController *strongSelf = weakSelf;
- if (strongSelf == nil)
- return;
-
- photoEditor.cropRect = strongSelf->_cropView.cropRect;
- photoEditor.cropOrientation = strongSelf->_cropView.cropOrientation;
- photoEditor.cropMirrored = strongSelf->_cropView.cropMirrored;
- };
- if (_snapshotView != nil)
- {
- [_cropView setSnapshotView:_snapshotView];
- _snapshotView = nil;
- }
- else if (_snapshotImage != nil)
- {
- [_cropView setSnapshotImage:_snapshotImage];
- _snapshotImage = nil;
- }
- _cropView.interactionBegan = interactionBegan;
- _cropView.interactionEnded = interactionEnded;
- [_wrapperView addSubview:_cropView];
-
- _buttonsWrapperView = [[UIView alloc] initWithFrame:CGRectZero];
- [_wrapperView addSubview:_buttonsWrapperView];
-
- _rotateButton = [[TGModernButton alloc] initWithFrame:CGRectMake(0, 0, 36, 36)];
- _rotateButton.exclusiveTouch = true;
- _rotateButton.hitTestEdgeInsets = UIEdgeInsetsMake(-10, -10, -10, -10);
- [_rotateButton addTarget:self action:@selector(rotate) forControlEvents:UIControlEventTouchUpInside];
- [_rotateButton setImage:TGComponentsImageNamed(@"PhotoEditorRotateIcon") forState:UIControlStateNormal];
-// [_buttonsWrapperView addSubview:_rotateButton];
-
- _mirrorButton = [[TGModernButton alloc] initWithFrame:CGRectMake(0, 0, 36, 36)];
- _mirrorButton.exclusiveTouch = true;
- _mirrorButton.imageEdgeInsets = UIEdgeInsetsMake(4.0f, 0.0f, 0.0f, 0.0f);
- _mirrorButton.hitTestEdgeInsets = UIEdgeInsetsMake(-10, -10, -10, -10);
- [_mirrorButton addTarget:self action:@selector(mirror) forControlEvents:UIControlEventTouchUpInside];
- [_mirrorButton setImage:TGComponentsImageNamed(@"PhotoEditorMirrorIcon") forState:UIControlStateNormal];
-// [_buttonsWrapperView addSubview:_mirrorButton];
-
- _resetButton = [[TGModernButton alloc] init];
- _resetButton.contentEdgeInsets = UIEdgeInsetsMake(0.0f, 8.0f, 0.0f, 8.0f);
- _resetButton.exclusiveTouch = true;
- _resetButton.hitTestEdgeInsets = UIEdgeInsetsMake(-10, -10, -10, -10);
- _resetButton.titleLabel.font = [TGFont systemFontOfSize:13];
- [_resetButton addTarget:self action:@selector(reset) forControlEvents:UIControlEventTouchUpInside];
- [_resetButton setTitle:TGLocalized(@"PhotoEditor.CropReset") forState:UIControlStateNormal];
- [_resetButton setTitleColor:[UIColor whiteColor]];
- [_resetButton sizeToFit];
- _resetButton.frame = CGRectMake(0, 0, _resetButton.frame.size.width, 24);
- [_buttonsWrapperView addSubview:_resetButton];
-}
-
-- (void)viewWillAppear:(BOOL)animated
-{
- [super viewWillAppear:animated];
-
- if (_appeared)
- return;
-
- if (self.initialAppearance && self.skipTransitionIn)
- {
- [self _finishedTransitionInWithView:nil];
- if (self.finishedTransitionIn != nil)
- {
- self.finishedTransitionIn();
- self.finishedTransitionIn = nil;
- }
- }
- else
- {
- [self transitionIn];
- }
-}
-
-- (void)viewDidAppear:(BOOL)animated
-{
- [super viewDidAppear:animated];
-
- _appeared = true;
-
- if (_imagePendingLoad != nil)
- [_cropView setImage:_imagePendingLoad];
-}
-
-- (BOOL)shouldAutorotate
-{
- return (!_cropView.isTracking && [super shouldAutorotate]);
-}
-
-- (bool)isDismissAllowed
-{
- return _appeared && !_cropView.isTracking && !_cropView.isAnimating;
-}
-
-#pragma mark -
-
-- (void)setImage:(UIImage *)image
-{
- if (_dismissing && !_switching)
- return;
-
- if (_waitSemaphore != nil)
- dispatch_semaphore_signal(_waitSemaphore);
-
- if (!_appeared)
- {
- _imagePendingLoad = image;
- return;
- }
-
- [_cropView setImage:image];
-}
-
-- (void)setPlayer:(AVPlayer *)player
-{
-}
-
-- (void)setSnapshotImage:(UIImage *)snapshotImage
-{
- _snapshotImage = snapshotImage;
- [_cropView _replaceSnapshotImage:snapshotImage];
-}
-
-- (void)setSnapshotView:(UIView *)snapshotView
-{
- _snapshotView = snapshotView;
-}
-
-#pragma mark - Transition
-
-- (void)prepareTransitionInWithReferenceView:(UIView *)referenceView referenceFrame:(CGRect)referenceFrame parentView:(UIView *)parentView noTransitionView:(bool)noTransitionView
-{
- [super prepareTransitionInWithReferenceView:referenceView referenceFrame:referenceFrame parentView:parentView noTransitionView:noTransitionView];
- [self.view insertSubview:_transitionView belowSubview:_wrapperView];
-}
-
-- (void)transitionIn
-{
- _buttonsWrapperView.alpha = 0.0f;
-
- [UIView animateWithDuration:0.3f animations:^
- {
- _buttonsWrapperView.alpha = 1.0f;
- }];
-
- [_cropView animateTransitionIn];
-}
-
-- (void)animateTransitionIn
-{
- if ([_transitionView isKindOfClass:[TGPhotoEditorPreviewView class]])
- [(TGPhotoEditorPreviewView *)_transitionView performTransitionToCropAnimated:true];
-
- [super animateTransitionIn];
-}
-
-- (void)_finishedTransitionInWithView:(UIView *)transitionView
-{
- if ([transitionView isKindOfClass:[TGPhotoEditorPreviewView class]]) {
-
- } else {
- [transitionView removeFromSuperview];
- }
-
- _buttonsWrapperView.alpha = 1.0f;
- [_cropView transitionInFinishedFromCamera:(self.fromCamera && self.initialAppearance)];
-}
-
-- (void)_finishedTransitionIn
-{
-// [_cropView animateTransitionIn];
- [_cropView transitionInFinishedFromCamera:true];
-
- self.finishedTransitionIn();
- self.finishedTransitionIn = nil;
-}
-
-- (void)prepareForCustomTransitionOut
-{
- [_cropView hideImageForCustomTransition];
- [_cropView animateTransitionOutSwitching:false];
-
- [UIView animateWithDuration:0.3f animations:^
- {
- _buttonsWrapperView.alpha = 0.0f;
- } completion:nil];
-}
-
-- (void)transitionOutSwitching:(bool)switching completion:(void (^)(void))completion
-{
- _dismissing = true;
-
- [_cropView animateTransitionOutSwitching:switching];
-
- if (switching)
- {
- _switching = true;
-
- TGPhotoEditorPreviewView *previewView = self.previewView;
- [previewView performTransitionToCropAnimated:false];
- [previewView setSnapshotView:[_cropView cropSnapshotView]];
-
- PGPhotoEditor *photoEditor = self.photoEditor;
-
- if (self.item.isVideo) {
- if (!previewView.hidden)
- [previewView performTransitionInWithCompletion:nil];
- else
- [previewView setNeedsTransitionIn];
-
- if (self.finishedPhotoProcessing != nil)
- self.finishedPhotoProcessing();
- } else {
- UIImage *image = _cropView.currentImage;
- CGRect cropRect = _cropView.cropRect;
- UIImageOrientation cropOrientation = _cropView.cropOrientation;
- bool cropMirrored = _cropView.cropMirrored;
- CGSize originalSize = _cropView.originalSize;
-
- dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^
- {
- if (dispatch_semaphore_wait(_waitSemaphore, dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3.0 * NSEC_PER_SEC))))
- {
- TGLegacyLog(@"Photo crop on switching failed");
- return;
- }
-
- UIImage *croppedImage = TGPhotoEditorCrop(image, nil, cropOrientation, 0.0f, cropRect, false, TGPhotoEditorScreenImageMaxSize(), originalSize, true);
- [photoEditor setImage:croppedImage forCropRect:cropRect cropRotation:0.0f cropOrientation:cropOrientation cropMirrored:cropMirrored fullSize:false];
-
- [photoEditor processAnimated:false completion:^
- {
- TGDispatchOnMainThread(^
- {
- [previewView setSnapshotImage:croppedImage];
-
- if (!previewView.hidden)
- [previewView performTransitionInWithCompletion:nil];
- else
- [previewView setNeedsTransitionIn];
- });
- }];
-
- if (self.finishedPhotoProcessing != nil)
- self.finishedPhotoProcessing();
- });
- }
-
- UIInterfaceOrientation orientation = self.effectiveOrientation;
-
- CGRect cropRectFrame = [_cropView cropRectFrameForView:self.view];
- CGSize referenceSize = [self referenceViewSizeForOrientation:orientation];
- CGRect referenceBounds = CGRectMake(0, 0, referenceSize.width, referenceSize.height);
- CGRect containerFrame = [TGPhotoEditorTabController photoContainerFrameForParentViewFrame:referenceBounds toolbarLandscapeSize:self.toolbarLandscapeSize orientation:orientation panelSize:TGPhotoEditorPanelSize hasOnScreenNavigation:self.hasOnScreenNavigation];
-
-// if (self.switchingToTab == TGPhotoEditorPreviewTab)
-// {
-// containerFrame = [TGPhotoEditorTabController photoContainerFrameForParentViewFrame:referenceBounds toolbarLandscapeSize:self.toolbarLandscapeSize orientation:orientation panelSize:0 hasOnScreenNavigation:self.hasOnScreenNavigation];
-// }
-// else if (self.switchingToTab == TGPhotoEditorPaintTab)
-// {
-// containerFrame = [TGPhotoPaintController photoContainerFrameForParentViewFrame:referenceBounds toolbarLandscapeSize:self.toolbarLandscapeSize orientation:orientation panelSize:TGPhotoPaintTopPanelSize + TGPhotoPaintBottomPanelSize hasOnScreenNavigation:self.hasOnScreenNavigation];
-// }
-
- CGSize fittedSize = TGScaleToSize(cropRectFrame.size, containerFrame.size);
- CGRect targetFrame = CGRectMake(containerFrame.origin.x + (containerFrame.size.width - fittedSize.width) / 2,
- containerFrame.origin.y + (containerFrame.size.height - fittedSize.height) / 2,
- fittedSize.width,
- fittedSize.height);
-
- UIView *snapshotView = [_cropView cropSnapshotView];
- snapshotView.alpha = 0.0f;
- snapshotView.frame = cropRectFrame;
- [self.view addSubview:snapshotView];
-
- CGRect targetCropViewFrame = [self.view convertRect:targetFrame toView:_wrapperView];
-
- if (!self.item.isVideo) {
- _previewView.hidden = true;
- }
-
- [UIView animateWithDuration:0.3f delay:0.0f options:UIViewAnimationOptionCurveEaseInOut | UIViewAnimationOptionLayoutSubviews animations:^
- {
- snapshotView.frame = targetFrame;
- if (self.item.isVideo) {
- _cropView.alpha = 0.0f;
- } else {
- snapshotView.alpha = 1.0f;
- }
- _cropView.frame = targetCropViewFrame;
- [_cropView invalidateCropRect];
- } completion:^(__unused BOOL finished)
- {
- _previewView.hidden = false;
- if (self.finishedTransitionOut != nil)
- self.finishedTransitionOut();
- }];
- }
-
- [UIView animateWithDuration:0.3f animations:^
- {
- _buttonsWrapperView.alpha = 0.0f;
- } completion:^(__unused BOOL finished)
- {
- if (completion != nil)
- completion();
- }];
-}
-
-- (void)transitionOutSaving:(bool)__unused saving completion:(void (^)(void))completion
-{
- CGRect referenceFrame = [_cropView contentFrameForView:self.view];
-
- CGSize referenceSize = [self referenceViewSize];
-
- UIImageView *snapshotView = [[UIImageView alloc] initWithImage:_cropView.image];
- snapshotView.frame = [_wrapperView convertRect:referenceFrame fromView:nil];
- snapshotView.alpha = 0.0f;
- [_wrapperView insertSubview:snapshotView belowSubview:_cropView];
-
- [self transitionOutSwitching:false completion:nil];
-
- if (self.intent & TGPhotoEditorControllerFromCameraIntent && self.intent & (TGPhotoEditorControllerAvatarIntent | TGPhotoEditorControllerSignupAvatarIntent))
- {
- if (self.interfaceOrientation == UIInterfaceOrientationLandscapeLeft)
- {
- referenceFrame = CGRectMake(referenceSize.height - referenceFrame.size.height - referenceFrame.origin.y,
- referenceSize.width - referenceFrame.size.width - referenceFrame.origin.x,
- referenceFrame.size.height, referenceFrame.size.width);
- }
- else if (self.interfaceOrientation == UIInterfaceOrientationLandscapeRight)
- {
- referenceFrame = CGRectMake(referenceFrame.origin.y,
- referenceFrame.origin.x,
- referenceFrame.size.height, referenceFrame.size.width);
- }
- }
-
- UIView *referenceView = nil;
- UIView *parentView = nil;
- if (self.beginTransitionOut != nil)
- referenceView = self.beginTransitionOut(&referenceFrame, &parentView);
-
- if (self.intent & TGPhotoEditorControllerFromCameraIntent && self.intent & (TGPhotoEditorControllerAvatarIntent | TGPhotoEditorControllerSignupAvatarIntent))
- {
- if (self.interfaceOrientation == UIInterfaceOrientationLandscapeLeft)
- {
- referenceFrame = CGRectMake(referenceSize.width - referenceFrame.size.height - referenceFrame.origin.y,
- referenceFrame.origin.x,
- referenceFrame.size.height, referenceFrame.size.width);
- }
- else if (self.interfaceOrientation == UIInterfaceOrientationLandscapeRight)
- {
- referenceFrame = CGRectMake(referenceFrame.origin.y,
- referenceSize.height - referenceFrame.size.width - referenceFrame.origin.x,
- referenceFrame.size.height, referenceFrame.size.width);
- }
- }
-
- POPSpringAnimation *animation = [TGPhotoEditorAnimation prepareTransitionAnimationForPropertyNamed:kPOPViewFrame];
- animation.fromValue = [NSValue valueWithCGRect:snapshotView.frame];
- animation.toValue = [NSValue valueWithCGRect:[_wrapperView convertRect:referenceFrame fromView:nil]];
-
- POPSpringAnimation *alphaAnimation = [TGPhotoEditorAnimation prepareTransitionAnimationForPropertyNamed:kPOPViewAlpha];
- alphaAnimation.fromValue = @(snapshotView.alpha);
- alphaAnimation.toValue = @(0.0f);
-
- [TGPhotoEditorAnimation performBlock:^(__unused bool allFinished)
- {
- [snapshotView removeFromSuperview];
-
- if (completion != nil)
- completion();
- } whenCompletedAllAnimations:@[ animation, alphaAnimation ]];
-
- [snapshotView pop_addAnimation:animation forKey:@"frame"];
- [snapshotView pop_addAnimation:alphaAnimation forKey:@"alpha"];
-}
-
-- (CGRect)_targetFrameForTransitionInFromFrame:(CGRect)fromFrame
-{
- CGSize referenceSize = [self referenceViewSize];
- UIInterfaceOrientation orientation = self.effectiveOrientation;
-
- CGRect containerFrame = [TGPhotoEditorTabController photoContainerFrameForParentViewFrame:CGRectMake(0, 0, referenceSize.width, referenceSize.height) toolbarLandscapeSize:self.toolbarLandscapeSize orientation:orientation panelSize:0.0f hasOnScreenNavigation:self.hasOnScreenNavigation];
-
- CGRect targetFrame = CGRectZero;
-
- CGFloat shortSide = MIN(referenceSize.width, referenceSize.height);
- CGFloat diameter = shortSide - [TGPhotoAvatarCropView areaInsetSize].width * 2;
- if (self.initialAppearance && (self.fromCamera || !self.skipTransitionIn))
- {
- CGSize referenceSize = fromFrame.size;
- if ([_transitionView isKindOfClass:[UIImageView class]])
- referenceSize = ((UIImageView *)_transitionView).image.size;
-
- CGSize fittedSize = TGScaleToFill(referenceSize, CGSizeMake(diameter, diameter));
-
- targetFrame = CGRectMake(containerFrame.origin.x + (containerFrame.size.width - fittedSize.width) / 2,
- containerFrame.origin.y + (containerFrame.size.height - fittedSize.height) / 2,
- fittedSize.width, fittedSize.height);
- }
- else
- {
- targetFrame = CGRectMake(containerFrame.origin.x + (containerFrame.size.width - diameter) / 2,
- containerFrame.origin.y + (containerFrame.size.height - diameter) / 2,
- diameter, diameter);
- }
-
- return targetFrame;
-}
-
-- (CGRect)transitionOutReferenceFrame
-{
- return [_cropView cropRectFrameForView:self.view];
-}
-
-- (UIView *)transitionOutReferenceView
-{
- return [_cropView cropSnapshotView];
-}
-
-- (id)currentResultRepresentation
-{
- return [_cropView cropSnapshotView];
-}
-
-#pragma mark - Actions
-
-- (void)rotate
-{
- [_cropView rotate90DegreesCCWAnimated:true];
-}
-
-- (void)mirror
-{
- [_cropView mirror];
-}
-
-- (void)reset
-{
- [_cropView resetAnimated:true];
-}
-
-#pragma mark - Layout
-
-- (void)viewWillLayoutSubviews
-{
- [super viewWillLayoutSubviews];
-
- [self updateLayout:[[LegacyComponentsGlobals provider] applicationStatusBarOrientation]];
-}
-
-- (void)updateLayout:(UIInterfaceOrientation)orientation
-{
- if ([self inFormSheet] || [UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad)
- {
- _resetButton.hidden = true;
- }
-
- orientation = [self effectiveOrientation:orientation];
-
- CGSize referenceSize = [self referenceViewSize];
-
- if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad)
- [_cropView updateCircleImageWithReferenceSize:referenceSize];
-
- CGFloat screenSide = MAX(referenceSize.width, referenceSize.height) + 2 * TGPhotoEditorPanelSize;
- _wrapperView.frame = CGRectMake((referenceSize.width - screenSide) / 2, (referenceSize.height - screenSide) / 2, screenSide, screenSide);
-
- bool hasOnScreenNavigation = false;
- if (iosMajorVersion() >= 11)
- hasOnScreenNavigation = (self.viewLoaded && self.view.safeAreaInsets.bottom > FLT_EPSILON) || self.context.safeAreaInset.bottom > FLT_EPSILON;
-
- UIEdgeInsets safeAreaInset = [TGViewController safeAreaInsetForOrientation:orientation hasOnScreenNavigation:hasOnScreenNavigation];
- UIEdgeInsets screenEdges = UIEdgeInsetsMake((screenSide - self.view.frame.size.height) / 2, (screenSide - self.view.frame.size.width) / 2, (screenSide + self.view.frame.size.height) / 2, (screenSide + self.view.frame.size.width) / 2);
-
- UIEdgeInsets initialScreenEdges = screenEdges;
- screenEdges.top += safeAreaInset.top;
- screenEdges.left += safeAreaInset.left;
- screenEdges.bottom -= safeAreaInset.bottom;
- screenEdges.right -= safeAreaInset.right;
-
- switch (orientation)
- {
- case UIInterfaceOrientationLandscapeLeft:
- {
- [UIView performWithoutAnimation:^
- {
- _buttonsWrapperView.frame = CGRectMake(screenEdges.left + self.toolbarLandscapeSize,
- screenEdges.top,
- TGPhotoAvatarCropButtonsWrapperSize,
- referenceSize.height);
-
- _rotateButton.frame = CGRectMake(25 + 2.0f, 10, _rotateButton.frame.size.width, _rotateButton.frame.size.height);
- _mirrorButton.frame = CGRectMake(25, 60, _mirrorButton.frame.size.width, _mirrorButton.frame.size.height);
-
- _resetButton.transform = CGAffineTransformIdentity;
- [_resetButton sizeToFit];
- _resetButton.frame = CGRectMake(0, 0, _resetButton.frame.size.width, 24);
-
- CGFloat xOrigin = 0;
- if (_resetButton.frame.size.width > _buttonsWrapperView.frame.size.width)
- {
- _resetButton.transform = CGAffineTransformMakeRotation((CGFloat)M_PI_2);
- xOrigin = 12;
- }
-
- _resetButton.frame = CGRectMake(_buttonsWrapperView.frame.size.width - _resetButton.frame.size.width - xOrigin,
- (_buttonsWrapperView.frame.size.height - _resetButton.frame.size.height) / 2,
- _resetButton.frame.size.width,
- _resetButton.frame.size.height);
- }];
- }
- break;
-
- case UIInterfaceOrientationLandscapeRight:
- {
- [UIView performWithoutAnimation:^
- {
- _buttonsWrapperView.frame = CGRectMake(screenEdges.right - self.toolbarLandscapeSize - TGPhotoAvatarCropButtonsWrapperSize,
- screenEdges.top,
- TGPhotoAvatarCropButtonsWrapperSize,
- referenceSize.height);
-
- _rotateButton.frame = CGRectMake(_buttonsWrapperView.frame.size.width - _rotateButton.frame.size.width - 25 + 2.0f, 10, _rotateButton.frame.size.width, _rotateButton.frame.size.height);
- _mirrorButton.frame = CGRectMake(_buttonsWrapperView.frame.size.width - _mirrorButton.frame.size.width - 25, 60, _mirrorButton.frame.size.width, _mirrorButton.frame.size.height);
-
- _resetButton.transform = CGAffineTransformIdentity;
- [_resetButton sizeToFit];
- CGSize resetButtonSize = _resetButton.frame.size;
- CGFloat xOrigin = 0;
- if (resetButtonSize.width > _buttonsWrapperView.frame.size.width)
- {
- _resetButton.transform = CGAffineTransformMakeRotation((CGFloat)-M_PI_2);
- xOrigin = 12;
- }
-
- _resetButton.frame = CGRectMake(xOrigin,
- (_buttonsWrapperView.frame.size.height - _resetButton.frame.size.height) / 2,
- _resetButton.frame.size.width,
- _resetButton.frame.size.height);
- }];
- }
- break;
-
- default:
- {
- [UIView performWithoutAnimation:^
- {
- _buttonsWrapperView.frame = CGRectMake(screenEdges.left,
- screenEdges.bottom - TGPhotoEditorToolbarSize - TGPhotoAvatarCropButtonsWrapperSize,
- referenceSize.width,
- TGPhotoAvatarCropButtonsWrapperSize);
-
- _rotateButton.frame = CGRectMake(10, _buttonsWrapperView.frame.size.height - _rotateButton.frame.size.height - 25 + 2.0f, _rotateButton.frame.size.width, _rotateButton.frame.size.height);
- _mirrorButton.frame = CGRectMake(60, _buttonsWrapperView.frame.size.height - _mirrorButton.frame.size.height - 25, _mirrorButton.frame.size.width, _mirrorButton.frame.size.height);
-
- _resetButton.transform = CGAffineTransformIdentity;
- [_resetButton sizeToFit];
- _resetButton.frame = CGRectMake((_buttonsWrapperView.frame.size.width - _resetButton.frame.size.width) / 2,
- 10,
- _resetButton.frame.size.width,
- 24);
- }];
- }
- break;
- }
-
- if (_dismissing)
- return;
-
- CGRect containerFrame = [TGPhotoEditorTabController photoContainerFrameForParentViewFrame:CGRectMake(0, 0, referenceSize.width, referenceSize.height) toolbarLandscapeSize:self.toolbarLandscapeSize orientation:orientation panelSize:0.0f hasOnScreenNavigation:hasOnScreenNavigation];
- containerFrame = CGRectOffset(containerFrame, initialScreenEdges.left, initialScreenEdges.top);
-
- CGFloat shortSide = MIN(referenceSize.width, referenceSize.height);
- CGFloat diameter = shortSide - [TGPhotoAvatarCropView areaInsetSize].width * 2;
- _cropView.frame = CGRectMake(containerFrame.origin.x + (containerFrame.size.width - diameter) / 2,
- containerFrame.origin.y + (containerFrame.size.height - diameter) / 2,
- diameter,
- diameter);
-}
-
-- (TGPhotoEditorTab)availableTabs
-{
- return TGPhotoEditorRotateTab | TGPhotoEditorMirrorTab;
-}
-
-- (void)handleTabAction:(TGPhotoEditorTab)tab
-{
- switch (tab)
- {
- case TGPhotoEditorRotateTab:
- {
- [self rotate];
- }
- break;
-
- case TGPhotoEditorMirrorTab:
- {
- [self mirror];
- }
- break;
-
- default:
- break;
- }
-}
-
-@end
diff --git a/submodules/LegacyComponents/Sources/TGPhotoRectangleCropController.h b/submodules/LegacyComponents/Sources/TGPhotoRectangleCropController.h
new file mode 100644
index 0000000000..3df2af9dd5
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/TGPhotoRectangleCropController.h
@@ -0,0 +1,6 @@
+#import "TGPhotoEditorTabController.h"
+
+@interface TGPhotoRectangleCropController : TGPhotoEditorTabController
+
+@end
+
diff --git a/submodules/LegacyComponents/Sources/TGPhotoRectangleCropController.m b/submodules/LegacyComponents/Sources/TGPhotoRectangleCropController.m
new file mode 100644
index 0000000000..3794d8603d
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/TGPhotoRectangleCropController.m
@@ -0,0 +1,5 @@
+#import "TGPhotoRectangleCropController.h"
+
+@implementation TGPhotoRectangleCropController
+
+@end
diff --git a/submodules/LegacyComponents/Sources/TGWarpedView.h b/submodules/LegacyComponents/Sources/TGWarpedView.h
new file mode 100644
index 0000000000..0d5a7b1bdb
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/TGWarpedView.h
@@ -0,0 +1,7 @@
+#import
+
+@interface TGWarpedView : UIImageView
+
+- (void)transformToFitQuadTopLeft:(CGPoint)tl topRight:(CGPoint)tr bottomLeft:(CGPoint)bl bottomRight:(CGPoint)br;
+
+@end
diff --git a/submodules/LegacyComponents/Sources/TGWarpedView.m b/submodules/LegacyComponents/Sources/TGWarpedView.m
new file mode 100644
index 0000000000..975df28fd2
--- /dev/null
+++ b/submodules/LegacyComponents/Sources/TGWarpedView.m
@@ -0,0 +1,92 @@
+#import "TGWarpedView.h"
+
+@implementation TGWarpedView
+
+- (void)transformToFitQuadTopLeft:(CGPoint)tl topRight:(CGPoint)tr bottomLeft:(CGPoint)bl bottomRight:(CGPoint)br
+{
+ CGRect boundingBox = [[self class] boundingBoxForQuadTR:tr tl:tl bl:bl br:br];
+ self.frame = boundingBox;
+
+ CGPoint frameTopLeft = boundingBox.origin;
+ CATransform3D transform = [[self class] rectToQuad:self.bounds
+ quadTL:CGPointMake(tl.x-frameTopLeft.x, tl.y-frameTopLeft.y)
+ quadTR:CGPointMake(tr.x-frameTopLeft.x, tr.y-frameTopLeft.y)
+ quadBL:CGPointMake(bl.x-frameTopLeft.x, bl.y-frameTopLeft.y)
+ quadBR:CGPointMake(br.x-frameTopLeft.x, br.y-frameTopLeft.y)];
+
+ self.layer.transform = transform;
+
+}
+
++ (CGRect)boundingBoxForQuadTR:(CGPoint)tr tl:(CGPoint)tl bl:(CGPoint)bl br:(CGPoint)br
+{
+ CGRect boundingBox = CGRectZero;
+
+ CGFloat xmin = MIN(MIN(MIN(tr.x, tl.x), bl.x),br.x);
+ CGFloat ymin = MIN(MIN(MIN(tr.y, tl.y), bl.y),br.y);
+ CGFloat xmax = MAX(MAX(MAX(tr.x, tl.x), bl.x),br.x);
+ CGFloat ymax = MAX(MAX(MAX(tr.y, tl.y), bl.y),br.y);
+
+ boundingBox.origin.x = xmin;
+ boundingBox.origin.y = ymin;
+ boundingBox.size.width = xmax - xmin;
+ boundingBox.size.height = ymax - ymin;
+
+ return boundingBox;
+}
+
++ (CATransform3D)rectToQuad:(CGRect)rect
+ quadTL:(CGPoint)topLeft
+ quadTR:(CGPoint)topRight
+ quadBL:(CGPoint)bottomLeft
+ quadBR:(CGPoint)bottomRight
+{
+ return [self rectToQuad:rect quadTLX:topLeft.x quadTLY:topLeft.y quadTRX:topRight.x quadTRY:topRight.y quadBLX:bottomLeft.x quadBLY:bottomLeft.y quadBRX:bottomRight.x quadBRY:bottomRight.y];
+}
+
+// http://stackoverflow.com/questions/9470493/transforming-a-rectangle-image-into-a-quadrilateral-using-a-catransform3d
++ (CATransform3D)rectToQuad:(CGRect)rect
+ quadTLX:(CGFloat)x1a
+ quadTLY:(CGFloat)y1a
+ quadTRX:(CGFloat)x2a
+ quadTRY:(CGFloat)y2a
+ quadBLX:(CGFloat)x3a
+ quadBLY:(CGFloat)y3a
+ quadBRX:(CGFloat)x4a
+ quadBRY:(CGFloat)y4a
+{
+ CGFloat X = rect.origin.x;
+ CGFloat Y = rect.origin.y;
+ CGFloat W = rect.size.width;
+ CGFloat H = rect.size.height;
+
+ CGFloat y21 = y2a - y1a;
+ CGFloat y32 = y3a - y2a;
+ CGFloat y43 = y4a - y3a;
+ CGFloat y14 = y1a - y4a;
+ CGFloat y31 = y3a - y1a;
+ CGFloat y42 = y4a - y2a;
+
+ CGFloat a = -H*(x2a*x3a*y14 + x2a*x4a*y31 - x1a*x4a*y32 + x1a*x3a*y42);
+ CGFloat b = W*(x2a*x3a*y14 + x3a*x4a*y21 + x1a*x4a*y32 + x1a*x2a*y43);
+ CGFloat c = H*X*(x2a*x3a*y14 + x2a*x4a*y31 - x1a*x4a*y32 + x1a*x3a*y42) - H*W*x1a*(x4a*y32 - x3a*y42 + x2a*y43) - W*Y*(x2a*x3a*y14 + x3a*x4a*y21 + x1a*x4a*y32 + x1a*x2a*y43);
+
+ CGFloat d = H*(-x4a*y21*y3a + x2a*y1a*y43 - x1a*y2a*y43 - x3a*y1a*y4a + x3a*y2a*y4a);
+ CGFloat e = W*(x4a*y2a*y31 - x3a*y1a*y42 - x2a*y31*y4a + x1a*y3a*y42);
+ CGFloat f = -(W*(x4a*(Y*y2a*y31 + H*y1a*y32) - x3a*(H + Y)*y1a*y42 + H*x2a*y1a*y43 + x2a*Y*(y1a - y3a)*y4a + x1a*Y*y3a*(-y2a + y4a)) - H*X*(x4a*y21*y3a - x2a*y1a*y43 + x3a*(y1a - y2a)*y4a + x1a*y2a*(-y3a + y4a)));
+
+ CGFloat g = H*(x3a*y21 - x4a*y21 + (-x1a + x2a)*y43);
+ CGFloat h = W*(-x2a*y31 + x4a*y31 + (x1a - x3a)*y42);
+ CGFloat i = W*Y*(x2a*y31 - x4a*y31 - x1a*y42 + x3a*y42) + H*(X*(-(x3a*y21) + x4a*y21 + x1a*y43 - x2a*y43) + W*(-(x3a*y2a) + x4a*y2a + x2a*y3a - x4a*y3a - x2a*y4a + x3a*y4a));
+
+ const double kEpsilon = 0.0001;
+
+ if (fabs(i) < kEpsilon)
+ i = kEpsilon* (i > 0 ? 1.0 : -1.0);
+
+ CATransform3D transform = {a/i, d/i, 0, g/i, b/i, e/i, 0, h/i, 0, 0, 1, 0, c/i, f/i, 0, 1.0};
+
+ return transform;
+}
+
+@end
diff --git a/submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickers.swift b/submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickers.swift
index 9860b34a9f..32a05ef281 100644
--- a/submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickers.swift
+++ b/submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickers.swift
@@ -419,10 +419,21 @@ public func legacyAssetPickerEnqueueMessages(account: Account, signals: [Any]) -
case let .file(data, thumbnail, mimeType, name, caption):
switch data {
case let .tempFile(path):
+ var previewRepresentations: [TelegramMediaImageRepresentation] = []
+ if let thumbnail = thumbnail {
+ let resource = LocalFileMediaResource(fileId: Int64.random(in: Int64.min ... Int64.max))
+ let thumbnailSize = thumbnail.size.aspectFitted(CGSize(width: 320.0, height: 320.0))
+ let thumbnailImage = TGScaleImageToPixelSize(thumbnail, thumbnailSize)!
+ if let thumbnailData = thumbnailImage.jpegData(compressionQuality: 0.4) {
+ account.postbox.mediaBox.storeResourceData(resource.id, data: thumbnailData)
+ previewRepresentations.append(TelegramMediaImageRepresentation(dimensions: PixelDimensions(thumbnailSize), resource: resource, progressiveSizes: [], immediateThumbnailData: nil))
+ }
+ }
+
var randomId: Int64 = 0
arc4random_buf(&randomId, 8)
let resource = LocalFileReferenceMediaResource(localFilePath: path, randomId: randomId)
- let media = TelegramMediaFile(fileId: MediaId(namespace: Namespaces.Media.LocalFile, id: randomId), partialReference: nil, resource: resource, previewRepresentations: [], videoThumbnails: [], immediateThumbnailData: nil, mimeType: mimeType, size: nil, attributes: [.FileName(fileName: name)])
+ let media = TelegramMediaFile(fileId: MediaId(namespace: Namespaces.Media.LocalFile, id: randomId), partialReference: nil, resource: resource, previewRepresentations: previewRepresentations, videoThumbnails: [], immediateThumbnailData: nil, mimeType: mimeType, size: nil, attributes: [.FileName(fileName: name)])
messages.append(LegacyAssetPickerEnqueueMessage(message: .message(text: caption ?? "", attributes: [], mediaReference: .standalone(media: media), replyToMessageId: nil, localGroupingKey: item.groupedId, correlationId: nil), uniqueId: item.uniqueId))
case let .asset(asset):
var randomId: Int64 = 0
diff --git a/submodules/ManagedAnimationNode/Sources/ManagedAnimationNode.swift b/submodules/ManagedAnimationNode/Sources/ManagedAnimationNode.swift
index 1dde44442a..d584c7a7e9 100644
--- a/submodules/ManagedAnimationNode/Sources/ManagedAnimationNode.swift
+++ b/submodules/ManagedAnimationNode/Sources/ManagedAnimationNode.swift
@@ -20,6 +20,13 @@ public final class ManagedAnimationState {
var relativeTime: Double = 0.0
public var frameIndex: Int?
+ public var position: CGFloat {
+ if let frameIndex = frameIndex {
+ return CGFloat(frameIndex) / CGFloat(frameCount)
+ } else {
+ return 0.0
+ }
+ }
public var executedCallbacks = Set()
diff --git a/submodules/SemanticStatusNode/Sources/SemanticStatusNode.swift b/submodules/SemanticStatusNode/Sources/SemanticStatusNode.swift
index dcf38e6d72..970de65856 100644
--- a/submodules/SemanticStatusNode/Sources/SemanticStatusNode.swift
+++ b/submodules/SemanticStatusNode/Sources/SemanticStatusNode.swift
@@ -93,11 +93,13 @@ private final class SemanticStatusNodeIconContext: SemanticStatusNodeStateContex
let transitionFraction: CGFloat
let icon: SemanticStatusNodeIcon
let iconImage: UIImage?
-
- init(transitionFraction: CGFloat, icon: SemanticStatusNodeIcon, iconImage: UIImage?) {
+ let iconOffset: CGFloat
+
+ init(transitionFraction: CGFloat, icon: SemanticStatusNodeIcon, iconImage: UIImage?, iconOffset: CGFloat) {
self.transitionFraction = transitionFraction
self.icon = icon
self.iconImage = iconImage
+ self.iconOffset = iconOffset
super.init()
}
@@ -125,11 +127,11 @@ private final class SemanticStatusNodeIconContext: SemanticStatusNodeStateContex
let diameter = size.width
let factor = diameter / 50.0
-
let size: CGSize
var offset: CGFloat = 0.0
if let iconImage = self.iconImage {
size = iconImage.size
+ offset = self.iconOffset
} else {
offset = 1.5
size = CGSize(width: 15.0, height: 18.0)
@@ -161,12 +163,15 @@ private final class SemanticStatusNodeIconContext: SemanticStatusNodeStateContex
let factor = diameter / 50.0
let size: CGSize
+ let offset: CGFloat
if let iconImage = self.iconImage {
size = iconImage.size
+ offset = self.iconOffset
} else {
size = CGSize(width: 15.0, height: 16.0)
+ offset = 0.0
}
- context.translateBy(x: (diameter - size.width) / 2.0, y: (diameter - size.height) / 2.0)
+ context.translateBy(x: (diameter - size.width) / 2.0 + offset, y: (diameter - size.height) / 2.0)
if (diameter < 40.0) {
context.translateBy(x: size.width / 2.0, y: size.height / 2.0)
context.scaleBy(x: factor, y: factor)
@@ -248,6 +253,7 @@ private final class SemanticStatusNodeIconContext: SemanticStatusNodeStateContex
var animationNode: PlayPauseIconNode?
var iconImage: UIImage?
+ var iconOffset: CGFloat = 0.0
init(icon: SemanticStatusNodeIcon) {
self.icon = icon
@@ -255,10 +261,20 @@ private final class SemanticStatusNodeIconContext: SemanticStatusNodeStateContex
if [.play, .pause].contains(icon) {
self.animationNode = PlayPauseIconNode()
self.animationNode?.imageUpdated = { [weak self] image in
- self?.iconImage = image
- self?.requestUpdate()
+ if let strongSelf = self {
+ strongSelf.iconImage = image
+ if var position = strongSelf.animationNode?.state?.position {
+ position = position * 2.0
+ if position > 1.0 {
+ position = 2.0 - position
+ }
+ strongSelf.iconOffset = (1.0 - position) * 1.5
+ }
+ strongSelf.requestUpdate()
+ }
}
self.iconImage = self.animationNode?.image
+ self.iconOffset = 1.5
}
}
@@ -269,7 +285,7 @@ private final class SemanticStatusNodeIconContext: SemanticStatusNodeStateContex
var requestUpdate: () -> Void = {}
func drawingState(transitionFraction: CGFloat) -> SemanticStatusNodeStateDrawingState {
- return DrawingState(transitionFraction: transitionFraction, icon: self.icon, iconImage: self.iconImage)
+ return DrawingState(transitionFraction: transitionFraction, icon: self.icon, iconImage: self.iconImage, iconOffset: self.iconOffset)
}
}
diff --git a/submodules/TelegramCallsUI/Sources/CallControllerNode.swift b/submodules/TelegramCallsUI/Sources/CallControllerNode.swift
index ded0d56666..6c38c737c8 100644
--- a/submodules/TelegramCallsUI/Sources/CallControllerNode.swift
+++ b/submodules/TelegramCallsUI/Sources/CallControllerNode.swift
@@ -26,7 +26,7 @@ private func interpolate(from: CGFloat, to: CGFloat, value: CGFloat) -> CGFloat
return (1.0 - value) * from + value * to
}
-private final class CallVideoNode: ASDisplayNode {
+private final class CallVideoNode: ASDisplayNode, PreviewVideoNode {
private let videoTransformContainer: ASDisplayNode
private let videoView: PresentationCallVideoView
@@ -40,6 +40,11 @@ private final class CallVideoNode: ASDisplayNode {
private(set) var isReady: Bool = false
private var isReadyTimer: SwiftSignalKit.Timer?
+ private let readyPromise = ValuePromise(false)
+ var ready: Signal {
+ return self.readyPromise.get()
+ }
+
private let isFlippedUpdated: (CallVideoNode) -> Void
private(set) var currentOrientation: PresentationCallVideoView.Orientation
@@ -87,6 +92,7 @@ private final class CallVideoNode: ASDisplayNode {
}
if !strongSelf.isReady {
strongSelf.isReady = true
+ strongSelf.readyPromise.set(true)
strongSelf.isReadyTimer?.invalidate()
strongSelf.isReadyUpdated()
}
@@ -122,6 +128,7 @@ private final class CallVideoNode: ASDisplayNode {
}
if !strongSelf.isReady {
strongSelf.isReady = true
+ strongSelf.readyPromise.set(true)
strongSelf.isReadyUpdated()
}
}, queue: .mainQueue())
@@ -177,6 +184,10 @@ private final class CallVideoNode: ASDisplayNode {
})
}
+ func updateLayout(size: CGSize, layoutMode: VideoNodeLayoutMode, transition: ContainedViewLayoutTransition) {
+ self.updateLayout(size: size, cornerRadius: self.currentCornerRadius, isOutgoing: true, deviceOrientation: .portrait, isCompactLayout: false, transition: transition)
+ }
+
func updateLayout(size: CGSize, cornerRadius: CGFloat, isOutgoing: Bool, deviceOrientation: UIDeviceOrientation, isCompactLayout: Bool, transition: ContainedViewLayoutTransition) {
self.currentCornerRadius = cornerRadius
@@ -582,13 +593,58 @@ final class CallControllerNode: ViewControllerTracingNode, CallControllerNodePro
strongSelf.call.requestVideo()
}
- if strongSelf.displayedCameraConfirmation {
- proceed()
- } else {
- strongSelf.present?(textAlertController(sharedContext: strongSelf.sharedContext, title: nil, text: strongSelf.presentationData.strings.Call_CameraConfirmationText, actions: [TextAlertAction(type: .genericAction, title: presentationData.strings.Common_Cancel, action: {}), TextAlertAction(type: .defaultAction, title: strongSelf.presentationData.strings.Call_CameraConfirmationConfirm, action: {
- proceed()
- })]))
- }
+ strongSelf.call.makeOutgoingVideoView(completion: { [weak self] outgoingVideoView in
+ guard let strongSelf = self else {
+ return
+ }
+
+ if let outgoingVideoView = outgoingVideoView {
+ outgoingVideoView.view.backgroundColor = .black
+ outgoingVideoView.view.clipsToBounds = true
+
+ var updateLayoutImpl: ((ContainerViewLayout, CGFloat) -> Void)?
+
+ let outgoingVideoNode = CallVideoNode(videoView: outgoingVideoView, disabledText: nil, assumeReadyAfterTimeout: true, isReadyUpdated: {
+ guard let strongSelf = self, let (layout, navigationBarHeight) = strongSelf.validLayout else {
+ return
+ }
+ updateLayoutImpl?(layout, navigationBarHeight)
+ }, orientationUpdated: {
+ guard let strongSelf = self, let (layout, navigationBarHeight) = strongSelf.validLayout else {
+ return
+ }
+ updateLayoutImpl?(layout, navigationBarHeight)
+ }, isFlippedUpdated: { _ in
+ guard let strongSelf = self, let (layout, navigationBarHeight) = strongSelf.validLayout else {
+ return
+ }
+ updateLayoutImpl?(layout, navigationBarHeight)
+ })
+
+ let controller = VoiceChatCameraPreviewController(sharedContext: strongSelf.sharedContext, cameraNode: outgoingVideoNode, shareCamera: { [weak self] _, _ in
+ if let strongSelf = self {
+ proceed()
+ }
+ }, switchCamera: { [weak self] in
+ Queue.mainQueue().after(0.1) {
+ self?.call.switchVideoCamera()
+ }
+ })
+ strongSelf.present?(controller)
+
+ updateLayoutImpl = { [weak controller] layout, navigationBarHeight in
+ controller?.containerLayoutUpdated(layout, transition: .immediate)
+ }
+ }
+ })
+
+// if strongSelf.displayedCameraConfirmation {
+// proceed()
+// } else {
+// strongSelf.present?(textAlertController(sharedContext: strongSelf.sharedContext, title: nil, text: strongSelf.presentationData.strings.Call_CameraConfirmationText, actions: [TextAlertAction(type: .genericAction, title: presentationData.strings.Common_Cancel, action: {}), TextAlertAction(type: .defaultAction, title: strongSelf.presentationData.strings.Call_CameraConfirmationConfirm, action: {
+// proceed()
+// })]))
+// }
})
} else {
strongSelf.call.disableVideo()
diff --git a/submodules/TelegramCallsUI/Sources/GroupVideoNode.swift b/submodules/TelegramCallsUI/Sources/GroupVideoNode.swift
index 3167b142ed..b18ea38665 100644
--- a/submodules/TelegramCallsUI/Sources/GroupVideoNode.swift
+++ b/submodules/TelegramCallsUI/Sources/GroupVideoNode.swift
@@ -6,22 +6,20 @@ import SwiftSignalKit
import AccountContext
import ContextUI
-final class GroupVideoNode: ASDisplayNode {
- static let useBlurTransparency: Bool = !UIAccessibility.isReduceTransparencyEnabled
+enum VideoNodeLayoutMode {
+ case fillOrFitToSquare
+ case fillHorizontal
+ case fillVertical
+ case fit
+}
+final class GroupVideoNode: ASDisplayNode, PreviewVideoNode {
enum Position {
case tile
case list
case mainstage
}
- enum LayoutMode {
- case fillOrFitToSquare
- case fillHorizontal
- case fillVertical
- case fit
- }
-
let sourceContainerNode: PinchSourceContainerNode
private let containerNode: ASDisplayNode
private let videoViewContainer: UIView
@@ -29,15 +27,14 @@ final class GroupVideoNode: ASDisplayNode {
private let backdropVideoViewContainer: UIView
private let backdropVideoView: VideoRenderingView?
- private var backdropEffectView: UIVisualEffectView?
-
+
private var effectView: UIVisualEffectView?
private var isBlurred: Bool = false
private var isEnabled: Bool = false
private var isBlurEnabled: Bool = false
- private var validLayout: (CGSize, LayoutMode)?
+ private var validLayout: (CGSize, VideoNodeLayoutMode)?
var tapped: (() -> Void)?
@@ -61,21 +58,6 @@ final class GroupVideoNode: ASDisplayNode {
super.init()
- if let backdropVideoView = backdropVideoView {
- self.backdropVideoViewContainer.addSubview(backdropVideoView)
- self.view.addSubview(self.backdropVideoViewContainer)
-
- let effect: UIVisualEffect
- if #available(iOS 13.0, *) {
- effect = UIBlurEffect(style: .systemThinMaterialDark)
- } else {
- effect = UIBlurEffect(style: .dark)
- }
- //let backdropEffectView = UIVisualEffectView(effect: effect)
- //self.view.addSubview(backdropEffectView)
- //self.backdropEffectView = backdropEffectView
- }
-
self.videoViewContainer.addSubview(self.videoView)
self.addSubnode(self.sourceContainerNode)
self.containerNode.view.addSubview(self.videoViewContainer)
@@ -204,7 +186,7 @@ final class GroupVideoNode: ASDisplayNode {
return rotatedAspect
}
- func updateLayout(size: CGSize, layoutMode: LayoutMode, transition: ContainedViewLayoutTransition) {
+ func updateLayout(size: CGSize, layoutMode: VideoNodeLayoutMode, transition: ContainedViewLayoutTransition) {
self.validLayout = (size, layoutMode)
let bounds = CGRect(origin: CGPoint(), size: size)
self.sourceContainerNode.update(size: size, transition: .immediate)
@@ -310,20 +292,6 @@ final class GroupVideoNode: ASDisplayNode {
self.backdropVideoView?.updateIsEnabled(self.isEnabled && self.isBlurEnabled)
- if self.isBlurEnabled {
- self.backdropVideoView?.isHidden = false
- self.backdropEffectView?.isHidden = false
- }
- transition.updatePosition(layer: backdropVideoView.layer, position: rotatedVideoFrame.center, force: true, completion: { [weak self] value in
- guard let strongSelf = self, value else {
- return
- }
- if !strongSelf.isBlurEnabled {
- strongSelf.backdropVideoView?.updateIsEnabled(false)
- strongSelf.backdropVideoView?.isHidden = true
- strongSelf.backdropEffectView?.isHidden = false
- }
- })
transition.updateBounds(layer: backdropVideoView.layer, bounds: CGRect(origin: CGPoint(), size: normalizedVideoSize))
let transformScale: CGFloat = rotatedVideoFrame.width / normalizedVideoSize.width
@@ -334,21 +302,6 @@ final class GroupVideoNode: ASDisplayNode {
transition.updateTransformRotation(view: backdropVideoView, angle: angle)
}
- if let backdropEffectView = self.backdropEffectView {
- let maxSide = max(bounds.width, bounds.height) + 32.0
- let squareBounds = CGRect(x: (bounds.width - maxSide) / 2.0, y: (bounds.height - maxSide) / 2.0, width: maxSide, height: maxSide)
-
- if case let .animated(duration, .spring) = transition {
- UIView.animate(withDuration: duration, delay: 0.0, usingSpringWithDamping: 500.0, initialSpringVelocity: 0.0, options: .layoutSubviews, animations: {
- backdropEffectView.frame = squareBounds
- })
- } else {
- transition.animateView {
- backdropEffectView.frame = squareBounds
- }
- }
- }
-
if let effectView = self.effectView {
if case let .animated(duration, .spring) = transition {
UIView.animate(withDuration: duration, delay: 0.0, usingSpringWithDamping: 500.0, initialSpringVelocity: 0.0, options: .layoutSubviews, animations: {
diff --git a/submodules/TelegramCallsUI/Sources/PresentationCall.swift b/submodules/TelegramCallsUI/Sources/PresentationCall.swift
index 6d1867ab59..77788a7da1 100644
--- a/submodules/TelegramCallsUI/Sources/PresentationCall.swift
+++ b/submodules/TelegramCallsUI/Sources/PresentationCall.swift
@@ -13,6 +13,7 @@ import TelegramPresentationData
import DeviceAccess
import UniversalMediaPlayer
import AccountContext
+import DeviceProximity
final class PresentationCallToneRenderer {
let queue: Queue
@@ -287,6 +288,8 @@ public final class PresentationCallImpl: PresentationCall {
private var useFrontCamera: Bool = true
private var videoCapturer: OngoingCallVideoCapturer?
+ private var proximityManagerIndex: Int?
+
init(
account: Account,
audioSession: ManagedAudioSession,
@@ -455,6 +458,11 @@ public final class PresentationCallImpl: PresentationCall {
strongSelf.updateIsAudioSessionActive(value)
}
})
+
+ if callKitIntegration == nil {
+ self.proximityManagerIndex = DeviceProximityManager.shared().add { _ in
+ }
+ }
}
deinit {
@@ -473,6 +481,10 @@ public final class PresentationCallImpl: PresentationCall {
self.callKitIntegration?.dropCall(uuid: self.internalId)
}
}
+
+ if let proximityManagerIndex = self.proximityManagerIndex {
+ DeviceProximityManager.shared().remove(proximityManagerIndex)
+ }
}
private func updateSessionState(sessionState: CallSession, callContextState: OngoingCallContextState?, reception: Int32?, audioSessionControl: ManagedAudioSessionControl?) {
diff --git a/submodules/TelegramCallsUI/Sources/VoiceChatCameraPreviewController.swift b/submodules/TelegramCallsUI/Sources/VoiceChatCameraPreviewController.swift
index 05b5d1185a..f2cfea7c54 100644
--- a/submodules/TelegramCallsUI/Sources/VoiceChatCameraPreviewController.swift
+++ b/submodules/TelegramCallsUI/Sources/VoiceChatCameraPreviewController.swift
@@ -15,23 +15,32 @@ import ReplayKit
private let accentColor: UIColor = UIColor(rgb: 0x007aff)
+protocol PreviewVideoNode: ASDisplayNode {
+ var ready: Signal { get }
+
+ func flip(withBackground: Bool)
+ func updateIsBlurred(isBlurred: Bool, light: Bool, animated: Bool)
+
+ func updateLayout(size: CGSize, layoutMode: VideoNodeLayoutMode, transition: ContainedViewLayoutTransition)
+}
+
final class VoiceChatCameraPreviewController: ViewController {
private var controllerNode: VoiceChatCameraPreviewControllerNode {
return self.displayNode as! VoiceChatCameraPreviewControllerNode
}
- private let context: AccountContext
+ private let sharedContext: SharedAccountContext
private var animatedIn = false
- private let cameraNode: GroupVideoNode
+ private let cameraNode: PreviewVideoNode
private let shareCamera: (ASDisplayNode, Bool) -> Void
private let switchCamera: () -> Void
private var presentationDataDisposable: Disposable?
- init(context: AccountContext, cameraNode: GroupVideoNode, shareCamera: @escaping (ASDisplayNode, Bool) -> Void, switchCamera: @escaping () -> Void) {
- self.context = context
+ init(sharedContext: SharedAccountContext, cameraNode: PreviewVideoNode, shareCamera: @escaping (ASDisplayNode, Bool) -> Void, switchCamera: @escaping () -> Void) {
+ self.sharedContext = sharedContext
self.cameraNode = cameraNode
self.shareCamera = shareCamera
self.switchCamera = switchCamera
@@ -42,7 +51,7 @@ final class VoiceChatCameraPreviewController: ViewController {
self.blocksBackgroundWhenInOverlay = true
- self.presentationDataDisposable = (context.sharedContext.presentationData
+ self.presentationDataDisposable = (sharedContext.presentationData
|> deliverOnMainQueue).start(next: { [weak self] presentationData in
if let strongSelf = self {
strongSelf.controllerNode.updatePresentationData(presentationData)
@@ -61,7 +70,7 @@ final class VoiceChatCameraPreviewController: ViewController {
}
override public func loadDisplayNode() {
- self.displayNode = VoiceChatCameraPreviewControllerNode(controller: self, context: self.context, cameraNode: self.cameraNode)
+ self.displayNode = VoiceChatCameraPreviewControllerNode(controller: self, sharedContext: self.sharedContext, cameraNode: self.cameraNode)
self.controllerNode.shareCamera = { [weak self] unmuted in
if let strongSelf = self {
strongSelf.shareCamera(strongSelf.cameraNode, unmuted)
@@ -106,10 +115,10 @@ final class VoiceChatCameraPreviewController: ViewController {
private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, UIScrollViewDelegate {
private weak var controller: VoiceChatCameraPreviewController?
- private let context: AccountContext
+ private let sharedContext: SharedAccountContext
private var presentationData: PresentationData
- private let cameraNode: GroupVideoNode
+ private let cameraNode: PreviewVideoNode
private let dimNode: ASDisplayNode
private let wrappingScrollNode: ASScrollNode
private let contentContainerNode: ASDisplayNode
@@ -119,18 +128,19 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
private let titleNode: ASTextNode
private let previewContainerNode: ASDisplayNode
private let shimmerNode: ShimmerEffectForegroundNode
- private let cameraButton: SolidRoundedButtonNode
- private let screenButton: SolidRoundedButtonNode
+ private let doneButton: SolidRoundedButtonNode
private var broadcastPickerView: UIView?
private let cancelButton: SolidRoundedButtonNode
private let microphoneButton: HighlightTrackingButtonNode
private let microphoneEffectView: UIVisualEffectView
private let microphoneIconNode: VoiceChatMicrophoneNode
+
+ private let placeholderTextNode: ImmediateTextNode
+ private let placeholderIconNode: ASImageNode
- private let switchCameraButton: HighlightTrackingButtonNode
- private let switchCameraEffectView: UIVisualEffectView
- private let switchCameraIconNode: ASImageNode
+ private let tabsNode: TabsSegmentedControlNode
+ private var selectedTabIndex: Int = 0
private var containerLayout: (ContainerViewLayout, CGFloat)?
@@ -145,10 +155,10 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
var dismiss: (() -> Void)?
var cancel: (() -> Void)?
- init(controller: VoiceChatCameraPreviewController, context: AccountContext, cameraNode: GroupVideoNode) {
+ init(controller: VoiceChatCameraPreviewController, sharedContext: SharedAccountContext, cameraNode: PreviewVideoNode) {
self.controller = controller
- self.context = context
- self.presentationData = context.sharedContext.currentPresentationData.with { $0 }
+ self.sharedContext = sharedContext
+ self.presentationData = sharedContext.currentPresentationData.with { $0 }
self.cameraNode = cameraNode
@@ -185,16 +195,14 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
self.titleNode = ASTextNode()
self.titleNode.attributedText = NSAttributedString(string: title, font: Font.bold(17.0), textColor: textColor)
- self.cameraButton = SolidRoundedButtonNode(theme: SolidRoundedButtonTheme(backgroundColor: accentColor, foregroundColor: .white), font: .bold, height: 52.0, cornerRadius: 11.0, gloss: false)
- self.cameraButton.title = self.presentationData.strings.VoiceChat_VideoPreviewShareCamera
+ self.doneButton = SolidRoundedButtonNode(theme: SolidRoundedButtonTheme(backgroundColor: accentColor, foregroundColor: .white), font: .bold, height: 52.0, cornerRadius: 11.0, gloss: false)
+ self.doneButton.title = self.presentationData.strings.VoiceChat_VideoPreviewContinue
- self.screenButton = SolidRoundedButtonNode(theme: SolidRoundedButtonTheme(backgroundColor: buttonColor, foregroundColor: buttonTextColor), font: .bold, height: 52.0, cornerRadius: 11.0, gloss: false)
- self.screenButton.title = self.presentationData.strings.VoiceChat_VideoPreviewShareScreen
-
if #available(iOS 12.0, *) {
let broadcastPickerView = RPSystemBroadcastPickerView(frame: CGRect(x: 0, y: 0, width: 50, height: 52.0))
broadcastPickerView.alpha = 0.02
- broadcastPickerView.preferredExtension = "\(self.context.sharedContext.applicationBindings.appBundleId).BroadcastUpload"
+ broadcastPickerView.isHidden = true
+ broadcastPickerView.preferredExtension = "\(self.sharedContext.applicationBindings.appBundleId).BroadcastUpload"
broadcastPickerView.showsMicrophoneButton = false
self.broadcastPickerView = broadcastPickerView
}
@@ -209,27 +217,29 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
self.shimmerNode = ShimmerEffectForegroundNode(size: 200.0)
self.previewContainerNode.addSubnode(self.shimmerNode)
-
+
self.microphoneButton = HighlightTrackingButtonNode()
self.microphoneButton.isSelected = true
- self.microphoneEffectView = UIVisualEffectView(effect: UIBlurEffect(style: .dark))
+ self.microphoneEffectView = UIVisualEffectView(effect: UIBlurEffect(style: .light))
self.microphoneEffectView.clipsToBounds = true
self.microphoneEffectView.layer.cornerRadius = 24.0
self.microphoneEffectView.isUserInteractionEnabled = false
self.microphoneIconNode = VoiceChatMicrophoneNode()
+// self.microphoneIconNode.alpha = 0.75
self.microphoneIconNode.update(state: .init(muted: false, filled: true, color: .white), animated: false)
- self.switchCameraButton = HighlightTrackingButtonNode()
- self.switchCameraEffectView = UIVisualEffectView(effect: UIBlurEffect(style: .dark))
- self.switchCameraEffectView.clipsToBounds = true
- self.switchCameraEffectView.layer.cornerRadius = 24.0
- self.switchCameraEffectView.isUserInteractionEnabled = false
+ self.tabsNode = TabsSegmentedControlNode(items: [TabsSegmentedControlNode.Item(title: "Front Camera"), TabsSegmentedControlNode.Item(title: "Back Camera"), TabsSegmentedControlNode.Item(title: "Share Screen")], selectedIndex: 0)
- self.switchCameraIconNode = ASImageNode()
- self.switchCameraIconNode.displaysAsynchronously = false
- self.switchCameraIconNode.image = generateTintedImage(image: UIImage(bundleImageName: "Call/SwitchCameraIcon"), color: .white)
- self.switchCameraIconNode.contentMode = .center
+ self.placeholderTextNode = ImmediateTextNode()
+ self.placeholderTextNode.alpha = 0.0
+ self.placeholderTextNode.maximumNumberOfLines = 3
+ self.placeholderTextNode.textAlignment = .center
+
+ self.placeholderIconNode = ASImageNode()
+ self.placeholderIconNode.alpha = 0.0
+ self.placeholderIconNode.contentMode = .scaleAspectFit
+ self.placeholderIconNode.displaysAsynchronously = false
super.init()
@@ -248,8 +258,7 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
self.backgroundNode.addSubnode(self.effectNode)
self.backgroundNode.addSubnode(self.contentBackgroundNode)
self.contentContainerNode.addSubnode(self.titleNode)
- self.contentContainerNode.addSubnode(self.cameraButton)
- self.contentContainerNode.addSubnode(self.screenButton)
+ self.contentContainerNode.addSubnode(self.doneButton)
if let broadcastPickerView = self.broadcastPickerView {
self.contentContainerNode.view.addSubview(broadcastPickerView)
}
@@ -258,14 +267,40 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
self.contentContainerNode.addSubnode(self.previewContainerNode)
self.previewContainerNode.addSubnode(self.cameraNode)
- self.previewContainerNode.addSubnode(self.microphoneButton)
- self.microphoneButton.view.addSubview(self.microphoneEffectView)
- self.microphoneButton.addSubnode(self.microphoneIconNode)
- self.previewContainerNode.addSubnode(self.switchCameraButton)
- self.switchCameraButton.view.addSubview(self.switchCameraEffectView)
- self.switchCameraButton.addSubnode(self.switchCameraIconNode)
- self.cameraButton.pressed = { [weak self] in
+ self.previewContainerNode.addSubnode(self.placeholderIconNode)
+ self.previewContainerNode.addSubnode(self.placeholderTextNode)
+
+ if self.cameraNode is GroupVideoNode {
+ self.previewContainerNode.addSubnode(self.microphoneButton)
+ self.microphoneButton.view.addSubview(self.microphoneEffectView)
+ self.microphoneButton.addSubnode(self.microphoneIconNode)
+ }
+ self.previewContainerNode.addSubnode(self.tabsNode)
+
+ self.tabsNode.selectedIndexChanged = { [weak self] index in
+ if let strongSelf = self {
+ if (index == 0 && strongSelf.selectedTabIndex == 1) || (index == 1 && strongSelf.selectedTabIndex == 0) {
+ strongSelf.switchCamera?()
+ }
+ if index == 2 && [0, 1].contains(strongSelf.selectedTabIndex) {
+ strongSelf.broadcastPickerView?.isHidden = false
+ strongSelf.cameraNode.updateIsBlurred(isBlurred: true, light: false, animated: true)
+ let transition = ContainedViewLayoutTransition.animated(duration: 0.3, curve: .easeInOut)
+ transition.updateAlpha(node: strongSelf.placeholderTextNode, alpha: 1.0)
+ transition.updateAlpha(node: strongSelf.placeholderIconNode, alpha: 1.0)
+ } else if [0, 1].contains(index) && strongSelf.selectedTabIndex == 2 {
+ strongSelf.broadcastPickerView?.isHidden = true
+ strongSelf.cameraNode.updateIsBlurred(isBlurred: false, light: false, animated: true)
+ let transition = ContainedViewLayoutTransition.animated(duration: 0.3, curve: .easeInOut)
+ transition.updateAlpha(node: strongSelf.placeholderTextNode, alpha: 0.0)
+ transition.updateAlpha(node: strongSelf.placeholderIconNode, alpha: 0.0)
+ }
+ strongSelf.selectedTabIndex = index
+ }
+ }
+
+ self.doneButton.pressed = { [weak self] in
if let strongSelf = self {
strongSelf.shareCamera?(strongSelf.microphoneButton.isSelected)
}
@@ -289,19 +324,6 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
}
}
- self.switchCameraButton.addTarget(self, action: #selector(self.switchCameraPressed), forControlEvents: .touchUpInside)
- self.switchCameraButton.highligthedChanged = { [weak self] highlighted in
- if let strongSelf = self {
- if highlighted {
- let transition: ContainedViewLayoutTransition = .animated(duration: 0.3, curve: .spring)
- transition.updateSublayerTransformScale(node: strongSelf.switchCameraButton, scale: 0.9)
- } else {
- let transition: ContainedViewLayoutTransition = .animated(duration: 0.5, curve: .spring)
- transition.updateSublayerTransformScale(node: strongSelf.switchCameraButton, scale: 1.0)
- }
- }
- }
-
self.readyDisposable.set(self.cameraNode.ready.start(next: { [weak self] ready in
if let strongSelf = self, ready {
Queue.mainQueue().after(0.07) {
@@ -322,19 +344,7 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
self.microphoneButton.isSelected = !self.microphoneButton.isSelected
self.microphoneIconNode.update(state: .init(muted: !self.microphoneButton.isSelected, filled: true, color: .white), animated: true)
}
-
- @objc private func switchCameraPressed() {
- self.hapticFeedback.impact(.light)
- self.switchCamera?()
-
- let springDuration: Double = 0.7
- let springDamping: CGFloat = 100.0
- self.switchCameraButton.isUserInteractionEnabled = false
- self.switchCameraIconNode.layer.animateSpring(from: 0.0 as NSNumber, to: CGFloat.pi as NSNumber, keyPath: "transform.rotation.z", duration: springDuration, damping: springDamping, completion: { [weak self] _ in
- self?.switchCameraButton.isUserInteractionEnabled = true
- })
- }
-
+
func updatePresentationData(_ presentationData: PresentationData) {
self.presentationData = presentationData
}
@@ -368,7 +378,7 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
self.dimNode.position = dimPosition
})
- self.applicationStateDisposable = (self.context.sharedContext.applicationBindings.applicationIsActive
+ self.applicationStateDisposable = (self.sharedContext.applicationBindings.applicationIsActive
|> filter { !$0 }
|> take(1)
|> deliverOnMainQueue).start(next: { [weak self] _ in
@@ -443,9 +453,6 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
insets.top = max(10.0, insets.top)
var buttonOffset: CGFloat = 60.0
- if let _ = self.broadcastPickerView {
- buttonOffset *= 2.0
- }
let bottomInset: CGFloat = isTablet ? 31.0 : 10.0 + cleanInsets.bottom
let titleHeight: CGFloat = 54.0
var contentHeight = titleHeight + bottomInset + 52.0 + 17.0
@@ -522,24 +529,27 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
self.cameraNode.frame = CGRect(origin: CGPoint(), size: previewSize)
self.cameraNode.updateLayout(size: previewSize, layoutMode: isLandscape ? .fillHorizontal : .fillVertical, transition: .immediate)
- let microphoneFrame = CGRect(x: 16.0, y: previewSize.height - 48.0 - 16.0, width: 48.0, height: 48.0)
+ let microphoneFrame = CGRect(x: 8.0, y: previewSize.height - 48.0 - 8.0 - 48.0, width: 48.0, height: 48.0)
transition.updateFrame(node: self.microphoneButton, frame: microphoneFrame)
transition.updateFrame(view: self.microphoneEffectView, frame: CGRect(origin: CGPoint(), size: microphoneFrame.size))
transition.updateFrameAsPositionAndBounds(node: self.microphoneIconNode, frame: CGRect(origin: CGPoint(x: 1.0, y: 0.0), size: microphoneFrame.size).insetBy(dx: 6.0, dy: 6.0))
self.microphoneIconNode.transform = CATransform3DMakeScale(1.2, 1.2, 1.0)
- let switchCameraFrame = CGRect(x: previewSize.width - 48.0 - 16.0, y: previewSize.height - 48.0 - 16.0, width: 48.0, height: 48.0)
- transition.updateFrame(node: self.switchCameraButton, frame: switchCameraFrame)
- transition.updateFrame(view: self.switchCameraEffectView, frame: CGRect(origin: CGPoint(), size: switchCameraFrame.size))
- transition.updateFrame(node: self.switchCameraIconNode, frame: CGRect(origin: CGPoint(), size: switchCameraFrame.size))
+ let tabsFrame = CGRect(x: 8.0, y: previewSize.height - 40.0 - 8.0, width: previewSize.width - 16.0, height: 40.0)
+ self.tabsNode.updateLayout(size: tabsFrame.size, transition: transition)
+ transition.updateFrame(node: self.tabsNode, frame: tabsFrame)
+
+ self.placeholderTextNode.attributedText = NSAttributedString(string: presentationData.strings.VoiceChat_VideoPreviewShareScreenInfo, font: Font.semibold(14.0), textColor: .white)
+ self.placeholderIconNode.image = generateTintedImage(image: UIImage(bundleImageName: isTablet ? "Call/ScreenShareTablet" : "Call/ScreenSharePhone"), color: .white)
+
+ let placeholderTextSize = self.placeholderTextNode.updateLayout(CGSize(width: previewSize.width - 80.0, height: 100.0))
+ transition.updateFrame(node: self.placeholderTextNode, frame: CGRect(origin: CGPoint(x: floor((previewSize.width - placeholderTextSize.width) / 2.0), y: floorToScreenPixels(previewSize.height / 2.0) + 10.0), size: placeholderTextSize))
+ if let imageSize = self.placeholderIconNode.image?.size {
+ transition.updateFrame(node: self.placeholderIconNode, frame: CGRect(origin: CGPoint(x: floor((previewSize.width - imageSize.width) / 2.0), y: floorToScreenPixels(previewSize.height / 2.0) - imageSize.height - 8.0), size: imageSize))
+ }
if isLandscape {
var buttonsCount: Int = 2
- if let _ = self.broadcastPickerView {
- buttonsCount += 1
- } else {
- self.screenButton.isHidden = true
- }
let buttonInset: CGFloat = 6.0
var leftButtonInset = buttonInset
@@ -552,33 +562,19 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
}
let buttonWidth = floorToScreenPixels((availableWidth - CGFloat(buttonsCount + 1) * buttonInset) / CGFloat(buttonsCount))
- let cameraButtonHeight = self.cameraButton.updateLayout(width: buttonWidth, transition: transition)
- let screenButtonHeight = self.screenButton.updateLayout(width: buttonWidth, transition: transition)
+ let cameraButtonHeight = self.doneButton.updateLayout(width: buttonWidth, transition: transition)
let cancelButtonHeight = self.cancelButton.updateLayout(width: buttonWidth, transition: transition)
transition.updateFrame(node: self.cancelButton, frame: CGRect(x: layout.safeInsets.left + leftButtonInset, y: previewFrame.maxY + 10.0, width: buttonWidth, height: cancelButtonHeight))
- if let broadcastPickerView = self.broadcastPickerView {
- transition.updateFrame(node: self.screenButton, frame: CGRect(x: layout.safeInsets.left + leftButtonInset + buttonWidth + buttonInset, y: previewFrame.maxY + 10.0, width: buttonWidth, height: screenButtonHeight))
- broadcastPickerView.frame = CGRect(x: layout.safeInsets.left + leftButtonInset + buttonWidth + buttonInset, y: previewFrame.maxY + 10.0, width: buttonWidth, height: screenButtonHeight)
- transition.updateFrame(node: self.cameraButton, frame: CGRect(x: layout.safeInsets.left + leftButtonInset + buttonWidth + buttonInset + buttonWidth + buttonInset, y: previewFrame.maxY + 10.0, width: buttonWidth, height: cameraButtonHeight))
- } else {
- transition.updateFrame(node: self.cameraButton, frame: CGRect(x: layout.safeInsets.left + leftButtonInset + buttonWidth + buttonInset, y: previewFrame.maxY + 10.0, width: buttonWidth, height: cameraButtonHeight))
- }
-
+ transition.updateFrame(node: self.doneButton, frame: CGRect(x: layout.safeInsets.left + leftButtonInset + buttonWidth + buttonInset, y: previewFrame.maxY + 10.0, width: buttonWidth, height: cameraButtonHeight))
+ self.broadcastPickerView?.frame = self.doneButton.frame
} else {
let bottomInset = isTablet ? 21.0 : insets.bottom + 16.0
let buttonInset: CGFloat = 16.0
- let cameraButtonHeight = self.cameraButton.updateLayout(width: contentFrame.width - buttonInset * 2.0, transition: transition)
- transition.updateFrame(node: self.cameraButton, frame: CGRect(x: buttonInset, y: contentHeight - cameraButtonHeight - bottomInset - buttonOffset, width: contentFrame.width, height: cameraButtonHeight))
-
- let screenButtonHeight = self.screenButton.updateLayout(width: contentFrame.width - buttonInset * 2.0, transition: transition)
- transition.updateFrame(node: self.screenButton, frame: CGRect(x: buttonInset, y: contentHeight - cameraButtonHeight - 8.0 - screenButtonHeight - bottomInset, width: contentFrame.width, height: screenButtonHeight))
- if let broadcastPickerView = self.broadcastPickerView {
- broadcastPickerView.frame = CGRect(x: buttonInset, y: contentHeight - cameraButtonHeight - 8.0 - screenButtonHeight - bottomInset, width: contentFrame.width + 1000.0, height: screenButtonHeight)
- } else {
- self.screenButton.isHidden = true
- }
-
+ let cameraButtonHeight = self.doneButton.updateLayout(width: contentFrame.width - buttonInset * 2.0, transition: transition)
+ transition.updateFrame(node: self.doneButton, frame: CGRect(x: buttonInset, y: contentHeight - cameraButtonHeight - bottomInset - buttonOffset, width: contentFrame.width, height: cameraButtonHeight))
+ self.broadcastPickerView?.frame = self.doneButton.frame
+
let cancelButtonHeight = self.cancelButton.updateLayout(width: contentFrame.width - buttonInset * 2.0, transition: transition)
transition.updateFrame(node: self.cancelButton, frame: CGRect(x: buttonInset, y: contentHeight - cancelButtonHeight - bottomInset, width: contentFrame.width, height: cancelButtonHeight))
}
@@ -586,3 +582,303 @@ private class VoiceChatCameraPreviewControllerNode: ViewControllerTracingNode, U
transition.updateFrame(node: self.contentContainerNode, frame: contentFrame)
}
}
+
+private let textFont = Font.medium(14.0)
+
+class TabsSegmentedControlNode: ASDisplayNode, UIGestureRecognizerDelegate {
+ struct Item: Equatable {
+ public let title: String
+
+ public init(title: String) {
+ self.title = title
+ }
+ }
+
+ private var blurEffectView: UIVisualEffectView?
+ private var vibrancyEffectView: UIVisualEffectView?
+
+ private let selectionNode: ASDisplayNode
+ private var itemNodes: [HighlightTrackingButtonNode]
+ private var highlightedItemNodes: [HighlightTrackingButtonNode]
+
+ private var validLayout: CGSize?
+
+ private var _items: [Item]
+ private var _selectedIndex: Int = 0
+
+ public var selectedIndex: Int {
+ get {
+ return self._selectedIndex
+ }
+ set {
+ guard newValue != self._selectedIndex else {
+ return
+ }
+ self._selectedIndex = newValue
+ if let size = self.validLayout {
+ self.updateLayout(size: size, transition: .immediate)
+ }
+ }
+ }
+
+ public func setSelectedIndex(_ index: Int, animated: Bool) {
+ guard index != self._selectedIndex else {
+ return
+ }
+ self._selectedIndex = index
+ if let size = self.validLayout {
+ self.updateLayout(size: size, transition: .animated(duration: 0.2, curve: .easeInOut))
+ }
+ }
+
+ public var selectedIndexChanged: (Int) -> Void = { _ in }
+
+ private var gestureRecognizer: UIPanGestureRecognizer?
+ private var gestureSelectedIndex: Int?
+
+ public init(items: [Item], selectedIndex: Int) {
+ self._items = items
+ self._selectedIndex = selectedIndex
+
+ self.selectionNode = ASDisplayNode()
+ self.selectionNode.clipsToBounds = true
+ self.selectionNode.backgroundColor = .black
+ self.selectionNode.alpha = 0.75
+
+ self.itemNodes = items.map { item in
+ let itemNode = HighlightTrackingButtonNode()
+ itemNode.contentEdgeInsets = UIEdgeInsets(top: 0.0, left: 8.0, bottom: 0.0, right: 8.0)
+ itemNode.imageNode.isHidden = true
+ itemNode.titleNode.maximumNumberOfLines = 1
+ itemNode.titleNode.truncationMode = .byTruncatingTail
+ itemNode.titleNode.alpha = 0.75
+ itemNode.accessibilityLabel = item.title
+ itemNode.accessibilityTraits = [.button]
+ itemNode.setTitle(item.title, with: textFont, with: .black, for: .normal)
+ return itemNode
+ }
+
+ self.highlightedItemNodes = items.map { item in
+ let itemNode = HighlightTrackingButtonNode()
+ itemNode.isUserInteractionEnabled = false
+ itemNode.isHidden = true
+ itemNode.contentEdgeInsets = UIEdgeInsets(top: 0.0, left: 8.0, bottom: 0.0, right: 8.0)
+ itemNode.imageNode.isHidden = true
+ itemNode.titleNode.maximumNumberOfLines = 1
+ itemNode.titleNode.truncationMode = .byTruncatingTail
+ itemNode.setTitle(item.title, with: textFont, with: .white, for: .normal)
+ return itemNode
+ }
+
+ super.init()
+
+ self.clipsToBounds = true
+ if #available(iOS 13.0, *) {
+ self.layer.cornerCurve = .continuous
+ self.selectionNode.layer.cornerCurve = .continuous
+ }
+
+ self.setupButtons()
+ }
+
+ override func didLoad() {
+ super.didLoad()
+
+ self.view.disablesInteractiveTransitionGestureRecognizer = true
+
+ let gestureRecognizer = UIPanGestureRecognizer(target: self, action: #selector(self.panGesture(_:)))
+ gestureRecognizer.delegate = self
+ self.view.addGestureRecognizer(gestureRecognizer)
+ self.gestureRecognizer = gestureRecognizer
+
+ let blurEffect = UIBlurEffect(style: .light)
+ let blurEffectView = UIVisualEffectView(effect: blurEffect)
+ self.blurEffectView = blurEffectView
+ self.view.addSubview(blurEffectView)
+
+ let vibrancyEffect: UIVibrancyEffect
+ if #available(iOS 13.0, *) {
+ vibrancyEffect = UIVibrancyEffect(blurEffect: blurEffect, style: .label)
+ } else {
+ vibrancyEffect = UIVibrancyEffect(blurEffect: blurEffect)
+ }
+ let vibrancyEffectView = UIVisualEffectView(effect: vibrancyEffect)
+ self.vibrancyEffectView = vibrancyEffectView
+
+ blurEffectView.contentView.addSubview(vibrancyEffectView)
+
+ self.itemNodes.forEach(vibrancyEffectView.contentView.addSubnode(_:))
+ vibrancyEffectView.contentView.addSubnode(self.selectionNode)
+
+ self.highlightedItemNodes.forEach(self.addSubnode(_:))
+ }
+
+ func updateLayout(size: CGSize, transition: ContainedViewLayoutTransition) {
+ self.validLayout = size
+
+ let bounds = CGRect(origin: CGPoint(), size: size)
+
+ self.cornerRadius = size.height / 2.0
+
+ if let blurEffectView = self.blurEffectView {
+ transition.updateFrame(view: blurEffectView, frame: bounds)
+ }
+
+ if let vibrancyEffectView = self.vibrancyEffectView {
+ transition.updateFrame(view: vibrancyEffectView, frame: bounds)
+ }
+
+ let selectedIndex: Int
+ if let gestureSelectedIndex = self.gestureSelectedIndex {
+ selectedIndex = gestureSelectedIndex
+ } else {
+ selectedIndex = self.selectedIndex
+ }
+
+ if !self.itemNodes.isEmpty {
+ let itemSize = CGSize(width: floorToScreenPixels(size.width / CGFloat(self.itemNodes.count)), height: size.height)
+
+ let selectionFrame = CGRect(origin: CGPoint(x: itemSize.width * CGFloat(selectedIndex), y: 0.0), size: itemSize).insetBy(dx: 4.0, dy: 4.0)
+ transition.updateFrameAsPositionAndBounds(node: self.selectionNode, frame: selectionFrame)
+ self.selectionNode.cornerRadius = selectionFrame.height / 2.0
+
+ for i in 0 ..< self.itemNodes.count {
+ let itemNode = self.itemNodes[i]
+ let highlightedItemNode = self.highlightedItemNodes[i]
+ let _ = itemNode.measure(itemSize)
+ transition.updateFrame(node: itemNode, frame: CGRect(origin: CGPoint(x: itemSize.width * CGFloat(i), y: (size.height - itemSize.height) / 2.0), size: itemSize))
+ transition.updateFrame(node: highlightedItemNode, frame: CGRect(origin: CGPoint(x: itemSize.width * CGFloat(i), y: (size.height - itemSize.height) / 2.0), size: itemSize))
+
+ let isSelected = selectedIndex == i
+ if itemNode.isSelected != isSelected {
+ if case .animated = transition {
+ UIView.transition(with: itemNode.view, duration: 0.2, options: .transitionCrossDissolve, animations: {
+ itemNode.isSelected = isSelected
+ highlightedItemNode.isHidden = !isSelected
+ }, completion: nil)
+ } else {
+ itemNode.isSelected = isSelected
+ highlightedItemNode.isHidden = !isSelected
+ }
+ if isSelected {
+ itemNode.accessibilityTraits.insert(.selected)
+ } else {
+ itemNode.accessibilityTraits.remove(.selected)
+ }
+ }
+ }
+ }
+ }
+
+ private func setupButtons() {
+ for i in 0 ..< self.itemNodes.count {
+ let itemNode = self.itemNodes[i]
+ itemNode.addTarget(self, action: #selector(self.buttonPressed(_:)), forControlEvents: .touchUpInside)
+ itemNode.highligthedChanged = { [weak self, weak itemNode] highlighted in
+ if let strongSelf = self, let itemNode = itemNode {
+ let transition = ContainedViewLayoutTransition.animated(duration: 0.25, curve: .easeInOut)
+ if strongSelf.selectedIndex == i {
+ if let gestureRecognizer = strongSelf.gestureRecognizer, case .began = gestureRecognizer.state {
+ } else {
+ strongSelf.updateButtonsHighlights(highlightedIndex: highlighted ? i : nil, gestureSelectedIndex: strongSelf.gestureSelectedIndex)
+ }
+ } else if highlighted {
+ transition.updateAlpha(node: itemNode, alpha: 0.4)
+ }
+ if !highlighted {
+ transition.updateAlpha(node: itemNode, alpha: 1.0)
+ }
+ }
+ }
+ }
+ }
+
+ private func updateButtonsHighlights(highlightedIndex: Int?, gestureSelectedIndex: Int?) {
+ let transition = ContainedViewLayoutTransition.animated(duration: 0.25, curve: .easeInOut)
+ if highlightedIndex == nil && gestureSelectedIndex == nil {
+ transition.updateTransformScale(node: self.selectionNode, scale: 1.0)
+ } else {
+ transition.updateTransformScale(node: self.selectionNode, scale: 0.96)
+ }
+ for i in 0 ..< self.itemNodes.count {
+ let itemNode = self.itemNodes[i]
+ let highlightedItemNode = self.highlightedItemNodes[i]
+ if i == highlightedIndex || i == gestureSelectedIndex {
+ transition.updateTransformScale(node: itemNode, scale: 0.96)
+ transition.updateTransformScale(node: highlightedItemNode, scale: 0.96)
+ } else {
+ transition.updateTransformScale(node: itemNode, scale: 1.0)
+ transition.updateTransformScale(node: highlightedItemNode, scale: 1.0)
+ }
+ }
+ }
+
+ private func updateButtonsHighlights() {
+ let transition = ContainedViewLayoutTransition.animated(duration: 0.25, curve: .easeInOut)
+ if let gestureSelectedIndex = self.gestureSelectedIndex {
+ for i in 0 ..< self.itemNodes.count {
+ let itemNode = self.itemNodes[i]
+ let highlightedItemNode = self.highlightedItemNodes[i]
+ transition.updateTransformScale(node: itemNode, scale: i == gestureSelectedIndex ? 0.96 : 1.0)
+ transition.updateTransformScale(node: highlightedItemNode, scale: i == gestureSelectedIndex ? 0.96 : 1.0)
+ }
+ } else {
+ for itemNode in self.itemNodes {
+ transition.updateTransformScale(node: itemNode, scale: 1.0)
+ }
+ for itemNode in self.highlightedItemNodes {
+ transition.updateTransformScale(node: itemNode, scale: 1.0)
+ }
+ }
+ }
+
+ @objc private func buttonPressed(_ button: HighlightTrackingButtonNode) {
+ guard let index = self.itemNodes.firstIndex(of: button) else {
+ return
+ }
+
+ self._selectedIndex = index
+ self.selectedIndexChanged(index)
+ if let size = self.validLayout {
+ self.updateLayout(size: size, transition: .animated(duration: 0.2, curve: .slide))
+ }
+ }
+
+ public override func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
+ return self.selectionNode.frame.contains(gestureRecognizer.location(in: self.view))
+ }
+
+ @objc private func panGesture(_ recognizer: UIPanGestureRecognizer) {
+ let location = recognizer.location(in: self.view)
+ switch recognizer.state {
+ case .changed:
+ if !self.selectionNode.frame.contains(location) {
+ let point = CGPoint(x: max(0.0, min(self.bounds.width, location.x)), y: 1.0)
+ for i in 0 ..< self.itemNodes.count {
+ let itemNode = self.itemNodes[i]
+ if itemNode.frame.contains(point) {
+ if i != self.gestureSelectedIndex {
+ self.gestureSelectedIndex = i
+ self.updateButtonsHighlights(highlightedIndex: nil, gestureSelectedIndex: i)
+ if let size = self.validLayout {
+ self.updateLayout(size: size, transition: .animated(duration: 0.35, curve: .slide))
+ }
+ }
+ break
+ }
+ }
+ }
+ case .ended:
+ if let gestureSelectedIndex = self.gestureSelectedIndex {
+ if gestureSelectedIndex != self.selectedIndex {
+ self._selectedIndex = gestureSelectedIndex
+ self.selectedIndexChanged(gestureSelectedIndex)
+ }
+ self.gestureSelectedIndex = nil
+ }
+ self.updateButtonsHighlights(highlightedIndex: nil, gestureSelectedIndex: nil)
+ default:
+ break
+ }
+ }
+}
diff --git a/submodules/TelegramCallsUI/Sources/VoiceChatController.swift b/submodules/TelegramCallsUI/Sources/VoiceChatController.swift
index 64d5481825..ddb53a75b6 100644
--- a/submodules/TelegramCallsUI/Sources/VoiceChatController.swift
+++ b/submodules/TelegramCallsUI/Sources/VoiceChatController.swift
@@ -3495,7 +3495,7 @@ public final class VoiceChatController: ViewController {
let input = videoCapturer.video()
if let videoView = strongSelf.videoRenderingContext.makeView(input: input, blur: false) {
let cameraNode = GroupVideoNode(videoView: videoView, backdropVideoView: nil)
- let controller = VoiceChatCameraPreviewController(context: strongSelf.context, cameraNode: cameraNode, shareCamera: { [weak self] _, unmuted in
+ let controller = VoiceChatCameraPreviewController(sharedContext: strongSelf.context.sharedContext, cameraNode: cameraNode, shareCamera: { [weak self] _, unmuted in
if let strongSelf = self {
strongSelf.call.setIsMuted(action: unmuted ? .unmuted : .muted(isPushToTalkActive: false))
(strongSelf.call as! PresentationGroupCallImpl).requestVideo(capturer: videoCapturer)
@@ -3512,29 +3512,6 @@ public final class VoiceChatController: ViewController {
})
strongSelf.controller?.present(controller, in: .window(.root))
}
-
- /*strongSelf.call.makeOutgoingVideoView(requestClone: false, completion: { [weak self] view, _ in
- guard let strongSelf = self, let view = view else {
- return
- }
- let cameraNode = GroupVideoNode(videoView: view, backdropVideoView: nil)
- let controller = VoiceChatCameraPreviewController(context: strongSelf.context, cameraNode: cameraNode, shareCamera: { [weak self] videoNode, unmuted in
- if let strongSelf = self {
- strongSelf.call.setIsMuted(action: unmuted ? .unmuted : .muted(isPushToTalkActive: false))
- strongSelf.call.requestVideo()
-
- if let (layout, navigationHeight) = strongSelf.validLayout {
- strongSelf.animatingButtonsSwap = true
- strongSelf.containerLayoutUpdated(layout, navigationHeight: navigationHeight, transition: .animated(duration: 0.4, curve: .spring))
- }
- }
- }, switchCamera: { [weak self] in
- Queue.mainQueue().after(0.1) {
- self?.call.switchVideoCamera()
- }
- })
- strongSelf.controller?.present(controller, in: .window(.root))
- })*/
})
}
}
diff --git a/submodules/TelegramCallsUI/Sources/VoiceChatMainStageNode.swift b/submodules/TelegramCallsUI/Sources/VoiceChatMainStageNode.swift
index c4bde166a4..4b1225344d 100644
--- a/submodules/TelegramCallsUI/Sources/VoiceChatMainStageNode.swift
+++ b/submodules/TelegramCallsUI/Sources/VoiceChatMainStageNode.swift
@@ -1090,7 +1090,7 @@ final class VoiceChatMainStageNode: ASDisplayNode {
let initialBottomInset = bottomInset
var bottomInset = bottomInset
- let layoutMode: GroupVideoNode.LayoutMode
+ let layoutMode: VideoNodeLayoutMode
if case .immediate = transition, self.animatingIn {
layoutMode = .fillOrFitToSquare
bottomInset = 0.0
diff --git a/submodules/TelegramPresentationData/Sources/PresentationStrings.swift b/submodules/TelegramPresentationData/Sources/PresentationStrings.swift
index e701e90889..e136a2154f 100644
--- a/submodules/TelegramPresentationData/Sources/PresentationStrings.swift
+++ b/submodules/TelegramPresentationData/Sources/PresentationStrings.swift
@@ -1033,5518 +1033,5522 @@ public final class PresentationStrings: Equatable {
public func PUSH_CHAT_VOICECHAT_START(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[782]!, self._r[782]!, [_1, _2])
}
- public var ChatListFolder_NameGroups: String { return self._s[783]! }
- public var SocksProxySetup_ProxyDetailsTitle: String { return self._s[784]! }
- public var VoiceChat_EditDescriptionSave: String { return self._s[785]! }
+ public var VoiceChat_VideoPreviewContinue: String { return self._s[783]! }
+ public var ChatListFolder_NameGroups: String { return self._s[784]! }
+ public var SocksProxySetup_ProxyDetailsTitle: String { return self._s[785]! }
+ public var VoiceChat_EditDescriptionSave: String { return self._s[786]! }
public func Channel_AdminLog_MessageChangedLinkedGroup(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[786]!, self._r[786]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[787]!, self._r[787]!, [_1, _2])
}
- public var Watch_Suggestion_TalkLater: String { return self._s[787]! }
- public var Checkout_ShippingOption_Title: String { return self._s[788]! }
- public var Conversation_TitleRepliesEmpty: String { return self._s[789]! }
- public var CreatePoll_TextHeader: String { return self._s[790]! }
- public var VoiceOver_Chat_Message: String { return self._s[792]! }
- public var InfoPlist_NSLocationWhenInUseUsageDescription: String { return self._s[793]! }
- public var ContactInfo_Note: String { return self._s[795]! }
- public var Channel_AdminLog_InfoPanelAlertText: String { return self._s[796]! }
- public var Checkout_NewCard_CardholderNameTitle: String { return self._s[797]! }
- public var AutoDownloadSettings_Photos: String { return self._s[798]! }
- public var UserInfo_NotificationsDefaultDisabled: String { return self._s[799]! }
+ public var Watch_Suggestion_TalkLater: String { return self._s[788]! }
+ public var Checkout_ShippingOption_Title: String { return self._s[789]! }
+ public var Conversation_TitleRepliesEmpty: String { return self._s[790]! }
+ public var CreatePoll_TextHeader: String { return self._s[791]! }
+ public var VoiceOver_Chat_Message: String { return self._s[793]! }
+ public var InfoPlist_NSLocationWhenInUseUsageDescription: String { return self._s[794]! }
+ public var ContactInfo_Note: String { return self._s[796]! }
+ public var Channel_AdminLog_InfoPanelAlertText: String { return self._s[797]! }
+ public var Checkout_NewCard_CardholderNameTitle: String { return self._s[798]! }
+ public var AutoDownloadSettings_Photos: String { return self._s[799]! }
+ public var UserInfo_NotificationsDefaultDisabled: String { return self._s[800]! }
public func Conversation_ForwardTooltip_Chat_One(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[800]!, self._r[800]!, [_0])
+ return formatWithArgumentRanges(self._s[801]!, self._r[801]!, [_0])
}
- public var Channel_Info_Subscribers: String { return self._s[801]! }
- public var ChatList_DeleteForCurrentUser: String { return self._s[802]! }
- public var ChatListFolderSettings_FoldersSection: String { return self._s[803]! }
- public var ChannelInfo_ScheduleVoiceChat: String { return self._s[804]! }
- public var VoiceOver_ChatList_OutgoingMessage: String { return self._s[805]! }
+ public var Channel_Info_Subscribers: String { return self._s[802]! }
+ public var ChatList_DeleteForCurrentUser: String { return self._s[803]! }
+ public var ChatListFolderSettings_FoldersSection: String { return self._s[804]! }
+ public var ChannelInfo_ScheduleVoiceChat: String { return self._s[805]! }
+ public var VoiceOver_ChatList_OutgoingMessage: String { return self._s[806]! }
public func Time_PreciseDate_m9(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[809]!, self._r[809]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[810]!, self._r[810]!, [_1, _2, _3])
}
- public var AutoNightTheme_System: String { return self._s[810]! }
- public var Call_StatusWaiting: String { return self._s[811]! }
- public var GroupInfo_GroupHistoryHidden: String { return self._s[812]! }
+ public var AutoNightTheme_System: String { return self._s[811]! }
+ public var Call_StatusWaiting: String { return self._s[812]! }
+ public var GroupInfo_GroupHistoryHidden: String { return self._s[813]! }
public func CHAT_MESSAGE_INVOICE(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[813]!, self._r[813]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[814]!, self._r[814]!, [_1, _2, _3])
}
- public var Conversation_ContextMenuCopy: String { return self._s[815]! }
- public var Notifications_MessageNotificationsPreview: String { return self._s[816]! }
- public var Notifications_InAppNotificationsVibrate: String { return self._s[817]! }
+ public var Conversation_ContextMenuCopy: String { return self._s[816]! }
+ public var Notifications_MessageNotificationsPreview: String { return self._s[817]! }
+ public var Notifications_InAppNotificationsVibrate: String { return self._s[818]! }
public func Conversation_RestrictedTextTimed(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[818]!, self._r[818]!, [_0])
+ return formatWithArgumentRanges(self._s[819]!, self._r[819]!, [_0])
}
- public var Group_Status: String { return self._s[820]! }
- public var Group_Setup_HistoryVisible: String { return self._s[821]! }
- public var Conversation_UploadFileTooLarge: String { return self._s[822]! }
- public var Conversation_DiscardVoiceMessageAction: String { return self._s[823]! }
- public var Paint_Edit: String { return self._s[824]! }
- public var PeerInfo_AutoremoveMessages: String { return self._s[825]! }
+ public var Group_Status: String { return self._s[821]! }
+ public var Group_Setup_HistoryVisible: String { return self._s[822]! }
+ public var Conversation_UploadFileTooLarge: String { return self._s[823]! }
+ public var Conversation_DiscardVoiceMessageAction: String { return self._s[824]! }
+ public var Paint_Edit: String { return self._s[825]! }
+ public var PeerInfo_AutoremoveMessages: String { return self._s[826]! }
public func ChatImport_SelectionConfirmationGroupWithoutTitle(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[827]!, self._r[827]!, [_0])
+ return formatWithArgumentRanges(self._s[828]!, self._r[828]!, [_0])
}
- public var Channel_EditAdmin_CannotEdit: String { return self._s[828]! }
- public var Username_InvalidTooShort: String { return self._s[829]! }
- public var ClearCache_StorageOtherApps: String { return self._s[831]! }
- public var Conversation_ViewMessage: String { return self._s[832]! }
- public var GroupInfo_PublicLinkAdd: String { return self._s[834]! }
+ public var Channel_EditAdmin_CannotEdit: String { return self._s[829]! }
+ public var Username_InvalidTooShort: String { return self._s[830]! }
+ public var ClearCache_StorageOtherApps: String { return self._s[832]! }
+ public var Conversation_ViewMessage: String { return self._s[833]! }
+ public var GroupInfo_PublicLinkAdd: String { return self._s[835]! }
public func Notification_RemovedGroupPhoto(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[835]!, self._r[835]!, [_0])
+ return formatWithArgumentRanges(self._s[836]!, self._r[836]!, [_0])
}
- public var CallSettings_Title: String { return self._s[836]! }
+ public var CallSettings_Title: String { return self._s[837]! }
public func Conversation_BotInteractiveUrlAlert(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[837]!, self._r[837]!, [_0])
+ return formatWithArgumentRanges(self._s[838]!, self._r[838]!, [_0])
}
public func VoiceOver_Chat_ContactFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[840]!, self._r[840]!, [_0])
+ return formatWithArgumentRanges(self._s[841]!, self._r[841]!, [_0])
}
- public var PUSH_SENDER_YOU: String { return self._s[843]! }
+ public var PUSH_SENDER_YOU: String { return self._s[844]! }
public func Conversation_DeletedFromContacts(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[844]!, self._r[844]!, [_0])
+ return formatWithArgumentRanges(self._s[845]!, self._r[845]!, [_0])
}
- public var Profile_ShareContactButton: String { return self._s[845]! }
- public var GroupInfo_Permissions_SectionTitle: String { return self._s[846]! }
+ public var Profile_ShareContactButton: String { return self._s[846]! }
+ public var GroupInfo_Permissions_SectionTitle: String { return self._s[847]! }
public func VoiceOver_Chat_StickerFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[847]!, self._r[847]!, [_0])
+ return formatWithArgumentRanges(self._s[848]!, self._r[848]!, [_0])
}
- public var Map_ShareLiveLocation: String { return self._s[848]! }
- public var ChatListFolder_TitleEdit: String { return self._s[849]! }
+ public var Map_ShareLiveLocation: String { return self._s[849]! }
+ public var ChatListFolder_TitleEdit: String { return self._s[850]! }
public func VoiceOver_Chat_AnimatedStickerFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[850]!, self._r[850]!, [_0])
+ return formatWithArgumentRanges(self._s[851]!, self._r[851]!, [_0])
}
- public var Passport_Address_Address: String { return self._s[852]! }
- public var LastSeen_JustNow: String { return self._s[854]! }
+ public var Passport_Address_Address: String { return self._s[853]! }
+ public var LastSeen_JustNow: String { return self._s[855]! }
public func SecretImage_NotViewedYet(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[855]!, self._r[855]!, [_0])
+ return formatWithArgumentRanges(self._s[856]!, self._r[856]!, [_0])
}
- public var ContactInfo_PhoneLabelOther: String { return self._s[856]! }
- public var PasscodeSettings_DoNotMatch: String { return self._s[857]! }
- public var Weekday_Today: String { return self._s[860]! }
- public var DialogList_Title: String { return self._s[861]! }
- public var SettingsSearch_Synonyms_Notifications_MessageNotificationsPreview: String { return self._s[862]! }
- public var Cache_ClearCache: String { return self._s[863]! }
- public var CreatePoll_ExplanationInfo: String { return self._s[864]! }
- public var Notifications_ResetAllNotificationsHelp: String { return self._s[866]! }
- public var Stats_MessageTitle: String { return self._s[867]! }
- public var Passport_Address_Street: String { return self._s[869]! }
+ public var ContactInfo_PhoneLabelOther: String { return self._s[857]! }
+ public var PasscodeSettings_DoNotMatch: String { return self._s[858]! }
+ public var Weekday_Today: String { return self._s[861]! }
+ public var DialogList_Title: String { return self._s[862]! }
+ public var SettingsSearch_Synonyms_Notifications_MessageNotificationsPreview: String { return self._s[863]! }
+ public var Cache_ClearCache: String { return self._s[864]! }
+ public var CreatePoll_ExplanationInfo: String { return self._s[865]! }
+ public var Notifications_ResetAllNotificationsHelp: String { return self._s[867]! }
+ public var Stats_MessageTitle: String { return self._s[868]! }
+ public var Passport_Address_Street: String { return self._s[870]! }
public func Channel_AdminLog_MessageRemovedGroupUsername(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[870]!, self._r[870]!, [_0])
+ return formatWithArgumentRanges(self._s[871]!, self._r[871]!, [_0])
}
- public var Channel_AdminLog_ChannelEmptyText: String { return self._s[871]! }
+ public var Channel_AdminLog_ChannelEmptyText: String { return self._s[872]! }
public func Login_PhoneGenericEmailSubject(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[872]!, self._r[872]!, [_0])
+ return formatWithArgumentRanges(self._s[873]!, self._r[873]!, [_0])
}
- public var TwoStepAuth_Email: String { return self._s[874]! }
- public var Conversation_SecretLinkPreviewAlert: String { return self._s[875]! }
- public var PrivacySettings_PasscodeOn: String { return self._s[876]! }
- public var Camera_SquareMode: String { return self._s[878]! }
- public var SocksProxySetup_Port: String { return self._s[879]! }
- public var Watch_LastSeen_JustNow: String { return self._s[881]! }
+ public var TwoStepAuth_Email: String { return self._s[875]! }
+ public var Conversation_SecretLinkPreviewAlert: String { return self._s[876]! }
+ public var PrivacySettings_PasscodeOn: String { return self._s[877]! }
+ public var Camera_SquareMode: String { return self._s[879]! }
+ public var SocksProxySetup_Port: String { return self._s[880]! }
+ public var Watch_LastSeen_JustNow: String { return self._s[882]! }
public func Location_ProximityAlertSetText(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[882]!, self._r[882]!, [_1, _2])
- }
- public func PUSH_MESSAGE_GAME(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[883]!, self._r[883]!, [_1, _2])
}
+ public func PUSH_MESSAGE_GAME(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[884]!, self._r[884]!, [_1, _2])
+ }
public func Watch_LastSeen_YesterdayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[884]!, self._r[884]!, [_0])
+ return formatWithArgumentRanges(self._s[885]!, self._r[885]!, [_0])
}
- public var VoiceChat_CancelVoiceChat: String { return self._s[885]! }
- public var EditTheme_Expand_Preview_OutgoingText: String { return self._s[886]! }
- public var Channel_AdminLogFilter_EventsTitle: String { return self._s[887]! }
- public var Watch_Suggestion_HoldOn: String { return self._s[890]! }
+ public var VoiceChat_CancelVoiceChat: String { return self._s[886]! }
+ public var EditTheme_Expand_Preview_OutgoingText: String { return self._s[887]! }
+ public var Channel_AdminLogFilter_EventsTitle: String { return self._s[888]! }
+ public var Watch_Suggestion_HoldOn: String { return self._s[891]! }
public func PUSH_CHANNEL_MESSAGE_GEOLIVE(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[891]!, self._r[891]!, [_1])
+ return formatWithArgumentRanges(self._s[892]!, self._r[892]!, [_1])
}
- public var CallSettings_TabIcon: String { return self._s[892]! }
- public var ScheduledMessages_SendNow: String { return self._s[893]! }
- public var Stats_GroupTopWeekdaysTitle: String { return self._s[894]! }
- public var ImportStickerPack_NamePlaceholder: String { return self._s[895]! }
- public var UserInfo_PhoneCall: String { return self._s[896]! }
- public var Month_GenMarch: String { return self._s[897]! }
- public var Camera_Discard: String { return self._s[898]! }
- public var InfoPlist_NSFaceIDUsageDescription: String { return self._s[899]! }
- public var Passport_RequestedInformation: String { return self._s[900]! }
- public var VoiceChat_RecordingTitlePlaceholder: String { return self._s[902]! }
+ public var CallSettings_TabIcon: String { return self._s[893]! }
+ public var ScheduledMessages_SendNow: String { return self._s[894]! }
+ public var Stats_GroupTopWeekdaysTitle: String { return self._s[895]! }
+ public var ImportStickerPack_NamePlaceholder: String { return self._s[896]! }
+ public var UserInfo_PhoneCall: String { return self._s[897]! }
+ public var Month_GenMarch: String { return self._s[898]! }
+ public var Camera_Discard: String { return self._s[899]! }
+ public var InfoPlist_NSFaceIDUsageDescription: String { return self._s[900]! }
+ public var Passport_RequestedInformation: String { return self._s[901]! }
+ public var VoiceChat_RecordingTitlePlaceholder: String { return self._s[903]! }
public func Notification_ProximityYouReached(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[903]!, self._r[903]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[904]!, self._r[904]!, [_1, _2])
}
- public var Passport_Language_ro: String { return self._s[904]! }
+ public var Passport_Language_ro: String { return self._s[905]! }
public func PUSH_CHAT_MESSAGE_DOC(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[905]!, self._r[905]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[906]!, self._r[906]!, [_1, _2])
}
- public var AutoDownloadSettings_ResetHelp: String { return self._s[906]! }
- public var Passport_Identity_DocumentDetails: String { return self._s[908]! }
- public var Passport_Address_ScansHelp: String { return self._s[909]! }
- public var Location_LiveLocationRequired_Title: String { return self._s[910]! }
- public var WallpaperPreview_PreviewBottomTextAnimatable: String { return self._s[911]! }
- public var ClearCache_StorageCache: String { return self._s[912]! }
- public var Theme_Colors_ColorWallpaperWarningProceed: String { return self._s[913]! }
- public var Conversation_RestrictedText: String { return self._s[914]! }
- public var Notifications_MessageNotifications: String { return self._s[916]! }
- public var Passport_Scans: String { return self._s[917]! }
+ public var AutoDownloadSettings_ResetHelp: String { return self._s[907]! }
+ public var Passport_Identity_DocumentDetails: String { return self._s[909]! }
+ public var Passport_Address_ScansHelp: String { return self._s[910]! }
+ public var Location_LiveLocationRequired_Title: String { return self._s[911]! }
+ public var WallpaperPreview_PreviewBottomTextAnimatable: String { return self._s[912]! }
+ public var ClearCache_StorageCache: String { return self._s[913]! }
+ public var Theme_Colors_ColorWallpaperWarningProceed: String { return self._s[914]! }
+ public var Conversation_RestrictedText: String { return self._s[915]! }
+ public var Notifications_MessageNotifications: String { return self._s[917]! }
+ public var Passport_Scans: String { return self._s[918]! }
public func VoiceChat_StatusStartsIn(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[919]!, self._r[919]!, [_0])
+ return formatWithArgumentRanges(self._s[920]!, self._r[920]!, [_0])
}
- public var TwoStepAuth_SetupHintTitle: String { return self._s[920]! }
- public var LogoutOptions_ContactSupportTitle: String { return self._s[921]! }
- public var Passport_Identity_SelfieHelp: String { return self._s[922]! }
- public var Permissions_NotificationsUnreachableText_v0: String { return self._s[923]! }
- public var Privacy_PaymentsClear_PaymentInfo: String { return self._s[924]! }
- public var ShareMenu_CopyShareLinkGame: String { return self._s[925]! }
- public var PeerInfo_ButtonSearch: String { return self._s[926]! }
+ public var TwoStepAuth_SetupHintTitle: String { return self._s[921]! }
+ public var LogoutOptions_ContactSupportTitle: String { return self._s[922]! }
+ public var Passport_Identity_SelfieHelp: String { return self._s[923]! }
+ public var Permissions_NotificationsUnreachableText_v0: String { return self._s[924]! }
+ public var Privacy_PaymentsClear_PaymentInfo: String { return self._s[925]! }
+ public var ShareMenu_CopyShareLinkGame: String { return self._s[926]! }
+ public var PeerInfo_ButtonSearch: String { return self._s[927]! }
public func Notification_ProximityReachedYou(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[929]!, self._r[929]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[930]!, self._r[930]!, [_1, _2])
}
- public var SettingsSearch_Synonyms_Privacy_Data_ClearPaymentsInfo: String { return self._s[930]! }
- public var Passport_FieldIdentityTranslationHelp: String { return self._s[932]! }
- public var Conversation_InputTextSilentBroadcastPlaceholder: String { return self._s[933]! }
- public var Month_GenSeptember: String { return self._s[934]! }
+ public var SettingsSearch_Synonyms_Privacy_Data_ClearPaymentsInfo: String { return self._s[931]! }
+ public var Passport_FieldIdentityTranslationHelp: String { return self._s[933]! }
+ public var Conversation_InputTextSilentBroadcastPlaceholder: String { return self._s[934]! }
+ public var Month_GenSeptember: String { return self._s[935]! }
public func Call_GroupFormat(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[936]!, self._r[936]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[937]!, self._r[937]!, [_1, _2])
}
- public var StickerPacksSettings_ArchivedPacks: String { return self._s[937]! }
+ public var StickerPacksSettings_ArchivedPacks: String { return self._s[938]! }
public func Notification_VoiceChatInvitation(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[939]!, self._r[939]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[940]!, self._r[940]!, [_1, _2])
}
public func Channel_Username_LinkHint(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[940]!, self._r[940]!, [_0])
+ return formatWithArgumentRanges(self._s[941]!, self._r[941]!, [_0])
}
public func PUSH_PINNED_CONTACT(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[942]!, self._r[942]!, [_1, _2])
- }
- public func PUSH_MESSAGE_VIDEOS(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[943]!, self._r[943]!, [_1, _2])
}
- public var Calls_NotNow: String { return self._s[945]! }
- public var Settings_ChatFolders: String { return self._s[950]! }
- public var Login_PadPhoneHelpTitle: String { return self._s[951]! }
- public var TwoStepAuth_EnterPasswordInvalid: String { return self._s[952]! }
- public var Widget_MessageAutoremoveTimerRemoved: String { return self._s[953]! }
- public var VoiceChat_RecordingSaved: String { return self._s[954]! }
- public var Settings_ChatBackground: String { return self._s[955]! }
+ public func PUSH_MESSAGE_VIDEOS(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[944]!, self._r[944]!, [_1, _2])
+ }
+ public var Calls_NotNow: String { return self._s[946]! }
+ public var Settings_ChatFolders: String { return self._s[951]! }
+ public var Login_PadPhoneHelpTitle: String { return self._s[952]! }
+ public var TwoStepAuth_EnterPasswordInvalid: String { return self._s[953]! }
+ public var Widget_MessageAutoremoveTimerRemoved: String { return self._s[954]! }
+ public var VoiceChat_RecordingSaved: String { return self._s[955]! }
+ public var Settings_ChatBackground: String { return self._s[956]! }
public func PUSH_CHAT_MESSAGE_CONTACT(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[957]!, self._r[957]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[958]!, self._r[958]!, [_1, _2])
}
- public var ProxyServer_VoiceOver_Active: String { return self._s[958]! }
- public var Call_StatusBusy: String { return self._s[959]! }
- public var Conversation_MessageDeliveryFailed: String { return self._s[960]! }
- public var Login_NetworkError: String { return self._s[962]! }
- public var TwoStepAuth_SetupPasswordDescription: String { return self._s[963]! }
- public var Privacy_Calls_Integration: String { return self._s[964]! }
- public var DialogList_SearchSectionMessages: String { return self._s[965]! }
- public var AutoDownloadSettings_VideosTitle: String { return self._s[966]! }
- public var Preview_DeletePhoto: String { return self._s[967]! }
- public var VoiceChat_Video: String { return self._s[968]! }
- public var PrivacySettings_PhoneNumber: String { return self._s[970]! }
- public var Forward_ErrorDisabledForChat: String { return self._s[971]! }
- public var Watch_Compose_CurrentLocation: String { return self._s[972]! }
- public var Settings_CallSettings: String { return self._s[973]! }
- public var TwoFactorRemember_Done_Action: String { return self._s[974]! }
- public var AutoDownloadSettings_TypePrivateChats: String { return self._s[975]! }
- public var Conversation_StickerRemovedFromFavorites: String { return self._s[976]! }
- public var ChatList_Context_MarkAllAsRead: String { return self._s[977]! }
- public var ChatSettings_AutoPlayAnimations: String { return self._s[978]! }
- public var SaveIncomingPhotosSettings_Title: String { return self._s[979]! }
- public var OwnershipTransfer_SecurityRequirements: String { return self._s[980]! }
- public var Map_LiveLocationFor1Hour: String { return self._s[981]! }
+ public var ProxyServer_VoiceOver_Active: String { return self._s[959]! }
+ public var Call_StatusBusy: String { return self._s[960]! }
+ public var Conversation_MessageDeliveryFailed: String { return self._s[961]! }
+ public var Login_NetworkError: String { return self._s[963]! }
+ public var TwoStepAuth_SetupPasswordDescription: String { return self._s[964]! }
+ public var Privacy_Calls_Integration: String { return self._s[965]! }
+ public var DialogList_SearchSectionMessages: String { return self._s[966]! }
+ public var AutoDownloadSettings_VideosTitle: String { return self._s[967]! }
+ public var Preview_DeletePhoto: String { return self._s[968]! }
+ public var VoiceChat_Video: String { return self._s[969]! }
+ public var PrivacySettings_PhoneNumber: String { return self._s[971]! }
+ public var Forward_ErrorDisabledForChat: String { return self._s[972]! }
+ public var Watch_Compose_CurrentLocation: String { return self._s[973]! }
+ public var Settings_CallSettings: String { return self._s[974]! }
+ public var TwoFactorRemember_Done_Action: String { return self._s[975]! }
+ public var AutoDownloadSettings_TypePrivateChats: String { return self._s[976]! }
+ public var Conversation_StickerRemovedFromFavorites: String { return self._s[977]! }
+ public var ChatList_Context_MarkAllAsRead: String { return self._s[978]! }
+ public var ChatSettings_AutoPlayAnimations: String { return self._s[979]! }
+ public var SaveIncomingPhotosSettings_Title: String { return self._s[980]! }
+ public var OwnershipTransfer_SecurityRequirements: String { return self._s[981]! }
+ public var Map_LiveLocationFor1Hour: String { return self._s[982]! }
public func Privacy_GroupsAndChannels_InviteToGroupError(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[982]!, self._r[982]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[983]!, self._r[983]!, [_0, _1])
}
- public var VoiceChat_MutedByAdmin: String { return self._s[983]! }
+ public var VoiceChat_MutedByAdmin: String { return self._s[984]! }
public func Notification_PinnedLiveLocationMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[984]!, self._r[984]!, [_0])
+ return formatWithArgumentRanges(self._s[985]!, self._r[985]!, [_0])
}
- public var Conversation_UnvotePoll: String { return self._s[985]! }
- public var TwoStepAuth_EnterEmailCode: String { return self._s[986]! }
+ public var Conversation_UnvotePoll: String { return self._s[986]! }
+ public var TwoStepAuth_EnterEmailCode: String { return self._s[987]! }
public func LOCAL_MESSAGE_FWDS(_ _1: String, _ _2: Int) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[987]!, self._r[987]!, [_1, "\(_2)"])
+ return formatWithArgumentRanges(self._s[988]!, self._r[988]!, [_1, "\(_2)"])
}
- public var Passport_InfoTitle: String { return self._s[988]! }
+ public var Passport_InfoTitle: String { return self._s[989]! }
public func Conversation_Bytes(_ _0: Int) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[989]!, self._r[989]!, ["\(_0)"])
+ return formatWithArgumentRanges(self._s[990]!, self._r[990]!, ["\(_0)"])
}
- public var AccentColor_Title: String { return self._s[990]! }
+ public var AccentColor_Title: String { return self._s[991]! }
public func PUSH_MESSAGE_INVOICE(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[991]!, self._r[991]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[992]!, self._r[992]!, [_1, _2])
}
public func Notification_JoinedChannel(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[994]!, self._r[994]!, [_0])
+ return formatWithArgumentRanges(self._s[995]!, self._r[995]!, [_0])
}
- public var AutoDownloadSettings_DataUsageCustom: String { return self._s[995]! }
- public var Conversation_ShareBotLocationConfirmation: String { return self._s[996]! }
- public var PrivacyPhoneNumberSettings_WhoCanSeeMyPhoneNumber: String { return self._s[997]! }
- public var VoiceOver_Editing_ClearText: String { return self._s[998]! }
- public var Conversation_Unarchive: String { return self._s[999]! }
- public var Notification_CallOutgoing: String { return self._s[1000]! }
- public var Channel_Setup_PublicNoLink: String { return self._s[1001]! }
- public var Passport_Identity_GenderPlaceholder: String { return self._s[1002]! }
- public var Message_Animation: String { return self._s[1003]! }
- public var SettingsSearch_Synonyms_Appearance_Animations: String { return self._s[1004]! }
- public var ChatSettings_ConnectionType_Title: String { return self._s[1005]! }
+ public var AutoDownloadSettings_DataUsageCustom: String { return self._s[996]! }
+ public var Conversation_ShareBotLocationConfirmation: String { return self._s[997]! }
+ public var PrivacyPhoneNumberSettings_WhoCanSeeMyPhoneNumber: String { return self._s[998]! }
+ public var VoiceOver_Editing_ClearText: String { return self._s[999]! }
+ public var Conversation_Unarchive: String { return self._s[1000]! }
+ public var Notification_CallOutgoing: String { return self._s[1001]! }
+ public var Channel_Setup_PublicNoLink: String { return self._s[1002]! }
+ public var Passport_Identity_GenderPlaceholder: String { return self._s[1003]! }
+ public var Message_Animation: String { return self._s[1004]! }
+ public var SettingsSearch_Synonyms_Appearance_Animations: String { return self._s[1005]! }
+ public var ChatSettings_ConnectionType_Title: String { return self._s[1006]! }
public func Watch_Time_ShortFullAt(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1006]!, self._r[1006]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1007]!, self._r[1007]!, [_1, _2])
}
public func VoiceChat_StatusSpeakingVolume(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1007]!, self._r[1007]!, [_0])
+ return formatWithArgumentRanges(self._s[1008]!, self._r[1008]!, [_0])
}
- public var Notification_CallBack: String { return self._s[1008]! }
- public var Appearance_Title: String { return self._s[1011]! }
- public var NotificationsSound_Glass: String { return self._s[1013]! }
- public var AutoDownloadSettings_CellularTitle: String { return self._s[1015]! }
- public var Notifications_PermissionsSuppressWarningTitle: String { return self._s[1017]! }
- public var ChatSearch_SearchPlaceholder: String { return self._s[1018]! }
- public var Passport_Identity_AddPassport: String { return self._s[1019]! }
- public var GroupPermission_NoAddMembers: String { return self._s[1021]! }
- public var ContactList_Context_SendMessage: String { return self._s[1022]! }
- public var PhotoEditor_GrainTool: String { return self._s[1023]! }
- public var Settings_CopyPhoneNumber: String { return self._s[1024]! }
- public var Passport_Address_City: String { return self._s[1025]! }
- public var VoiceChat_LeaveAndCancelVoiceChat: String { return self._s[1026]! }
- public var ChannelRemoved_RemoveInfo: String { return self._s[1027]! }
- public var SocksProxySetup_Password: String { return self._s[1029]! }
- public var Settings_Passport: String { return self._s[1030]! }
- public var Channel_MessagePhotoUpdated: String { return self._s[1032]! }
- public var Stats_LanguagesTitle: String { return self._s[1033]! }
- public var ChatList_PeerTypeGroup: String { return self._s[1034]! }
- public var Privacy_Calls_P2PHelp: String { return self._s[1035]! }
- public var VoiceOver_Chat_PollNoVotes: String { return self._s[1036]! }
- public var Embed_PlayingInPIP: String { return self._s[1037]! }
- public var ImportStickerPack_GeneratingLink: String { return self._s[1039]! }
- public var BlockedUsers_BlockUser: String { return self._s[1041]! }
- public var Login_CancelPhoneVerificationContinue: String { return self._s[1042]! }
+ public var Notification_CallBack: String { return self._s[1009]! }
+ public var Appearance_Title: String { return self._s[1012]! }
+ public var NotificationsSound_Glass: String { return self._s[1014]! }
+ public var AutoDownloadSettings_CellularTitle: String { return self._s[1016]! }
+ public var Notifications_PermissionsSuppressWarningTitle: String { return self._s[1018]! }
+ public var ChatSearch_SearchPlaceholder: String { return self._s[1019]! }
+ public var Passport_Identity_AddPassport: String { return self._s[1020]! }
+ public var GroupPermission_NoAddMembers: String { return self._s[1022]! }
+ public var ContactList_Context_SendMessage: String { return self._s[1023]! }
+ public var PhotoEditor_GrainTool: String { return self._s[1024]! }
+ public var Settings_CopyPhoneNumber: String { return self._s[1025]! }
+ public var Passport_Address_City: String { return self._s[1026]! }
+ public var VoiceChat_LeaveAndCancelVoiceChat: String { return self._s[1027]! }
+ public var ChannelRemoved_RemoveInfo: String { return self._s[1028]! }
+ public var SocksProxySetup_Password: String { return self._s[1030]! }
+ public var Settings_Passport: String { return self._s[1031]! }
+ public var Channel_MessagePhotoUpdated: String { return self._s[1033]! }
+ public var Stats_LanguagesTitle: String { return self._s[1034]! }
+ public var ChatList_PeerTypeGroup: String { return self._s[1035]! }
+ public var Privacy_Calls_P2PHelp: String { return self._s[1036]! }
+ public var VoiceOver_Chat_PollNoVotes: String { return self._s[1037]! }
+ public var Embed_PlayingInPIP: String { return self._s[1038]! }
+ public var ImportStickerPack_GeneratingLink: String { return self._s[1040]! }
+ public var BlockedUsers_BlockUser: String { return self._s[1042]! }
+ public var Login_CancelPhoneVerificationContinue: String { return self._s[1043]! }
public func PUSH_CHANNEL_MESSAGE(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1043]!, self._r[1043]!, [_1])
+ return formatWithArgumentRanges(self._s[1044]!, self._r[1044]!, [_1])
}
- public var AuthSessions_LoggedIn: String { return self._s[1044]! }
- public var Channel_AdminLog_MessagePreviousCaption: String { return self._s[1045]! }
- public var Activity_UploadingDocument: String { return self._s[1046]! }
- public var PeopleNearby_NoMembers: String { return self._s[1047]! }
- public var TwoFactorRemember_Text: String { return self._s[1049]! }
- public var SettingsSearch_Synonyms_Stickers_Masks: String { return self._s[1051]! }
- public var ChatSettings_AutoPlayVideos: String { return self._s[1052]! }
- public var VoiceOver_Chat_OpenLinkHint: String { return self._s[1053]! }
- public var InstantPage_VoiceOver_IncreaseFontSize: String { return self._s[1054]! }
- public var Settings_ViewVideo: String { return self._s[1055]! }
- public var Map_ShowPlaces: String { return self._s[1057]! }
- public var Passport_Phone_UseTelegramNumberHelp: String { return self._s[1058]! }
- public var InviteLink_Create_Title: String { return self._s[1059]! }
- public var Notification_CreatedGroup: String { return self._s[1060]! }
- public var SettingsSearch_Synonyms_Appearance_ChatBackground_Custom: String { return self._s[1061]! }
+ public var AuthSessions_LoggedIn: String { return self._s[1045]! }
+ public var Channel_AdminLog_MessagePreviousCaption: String { return self._s[1046]! }
+ public var Activity_UploadingDocument: String { return self._s[1047]! }
+ public var PeopleNearby_NoMembers: String { return self._s[1048]! }
+ public var TwoFactorRemember_Text: String { return self._s[1050]! }
+ public var SettingsSearch_Synonyms_Stickers_Masks: String { return self._s[1052]! }
+ public var ChatSettings_AutoPlayVideos: String { return self._s[1053]! }
+ public var VoiceOver_Chat_OpenLinkHint: String { return self._s[1054]! }
+ public var InstantPage_VoiceOver_IncreaseFontSize: String { return self._s[1055]! }
+ public var Settings_ViewVideo: String { return self._s[1056]! }
+ public var Map_ShowPlaces: String { return self._s[1058]! }
+ public var Passport_Phone_UseTelegramNumberHelp: String { return self._s[1059]! }
+ public var InviteLink_Create_Title: String { return self._s[1060]! }
+ public var Notification_CreatedGroup: String { return self._s[1061]! }
+ public var SettingsSearch_Synonyms_Appearance_ChatBackground_Custom: String { return self._s[1062]! }
public func PrivacySettings_LastSeenContactsPlus(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1062]!, self._r[1062]!, [_0])
+ return formatWithArgumentRanges(self._s[1063]!, self._r[1063]!, [_0])
}
- public var Conversation_StatusLeftGroup: String { return self._s[1063]! }
- public var Theme_Colors_Messages: String { return self._s[1064]! }
- public var AuthSessions_EmptyText: String { return self._s[1065]! }
+ public var Conversation_StatusLeftGroup: String { return self._s[1064]! }
+ public var Theme_Colors_Messages: String { return self._s[1065]! }
+ public var AuthSessions_EmptyText: String { return self._s[1066]! }
public func PUSH_MESSAGE_CONTACT(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1066]!, self._r[1066]!, [_1])
+ return formatWithArgumentRanges(self._s[1067]!, self._r[1067]!, [_1])
}
- public var UserInfo_StartSecretChat: String { return self._s[1067]! }
- public var ChatListFolderSettings_EditFoldersInfo: String { return self._s[1068]! }
- public var Channel_Edit_PrivatePublicLinkAlert: String { return self._s[1069]! }
- public var TwoFactorSetup_ResetDone_Title: String { return self._s[1070]! }
- public var Conversation_ReportSpamGroupConfirmation: String { return self._s[1071]! }
- public var Conversation_PrivateMessageLinkCopied: String { return self._s[1073]! }
- public var PeerInfo_PaneFiles: String { return self._s[1074]! }
- public var VoiceChat_DisplayAs: String { return self._s[1075]! }
- public var PrivacySettings_AutoArchive: String { return self._s[1076]! }
- public var Camera_VideoMode: String { return self._s[1077]! }
- public var NotificationsSound_Alert: String { return self._s[1078]! }
- public var Privacy_Forwards_NeverAllow_Title: String { return self._s[1079]! }
- public var Appearance_AutoNightTheme: String { return self._s[1080]! }
- public var Passport_Language_he: String { return self._s[1081]! }
- public var Passport_InvalidPasswordError: String { return self._s[1082]! }
- public var Conversation_PinMessageAlert_OnlyPin: String { return self._s[1083]! }
- public var UserInfo_InviteBotToGroup: String { return self._s[1084]! }
- public var Conversation_SilentBroadcastTooltipOff: String { return self._s[1085]! }
- public var Common_TakePhoto: String { return self._s[1086]! }
+ public var UserInfo_StartSecretChat: String { return self._s[1068]! }
+ public var ChatListFolderSettings_EditFoldersInfo: String { return self._s[1069]! }
+ public var Channel_Edit_PrivatePublicLinkAlert: String { return self._s[1070]! }
+ public var TwoFactorSetup_ResetDone_Title: String { return self._s[1071]! }
+ public var Conversation_ReportSpamGroupConfirmation: String { return self._s[1072]! }
+ public var Conversation_PrivateMessageLinkCopied: String { return self._s[1074]! }
+ public var PeerInfo_PaneFiles: String { return self._s[1075]! }
+ public var VoiceChat_DisplayAs: String { return self._s[1076]! }
+ public var PrivacySettings_AutoArchive: String { return self._s[1077]! }
+ public var Camera_VideoMode: String { return self._s[1078]! }
+ public var NotificationsSound_Alert: String { return self._s[1079]! }
+ public var Privacy_Forwards_NeverAllow_Title: String { return self._s[1080]! }
+ public var Appearance_AutoNightTheme: String { return self._s[1081]! }
+ public var Passport_Language_he: String { return self._s[1082]! }
+ public var Passport_InvalidPasswordError: String { return self._s[1083]! }
+ public var Conversation_PinMessageAlert_OnlyPin: String { return self._s[1084]! }
+ public var UserInfo_InviteBotToGroup: String { return self._s[1085]! }
+ public var Conversation_SilentBroadcastTooltipOff: String { return self._s[1086]! }
+ public var Common_TakePhoto: String { return self._s[1087]! }
public func Channel_AdminLog_RevokedInviteLink(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1087]!, self._r[1087]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1088]!, self._r[1088]!, [_1, _2])
}
- public var Passport_Email_UseTelegramEmailHelp: String { return self._s[1088]! }
- public var ChatList_Context_JoinChannel: String { return self._s[1089]! }
- public var MediaPlayer_UnknownArtist: String { return self._s[1090]! }
- public var VoiceChat_EditDescriptionText: String { return self._s[1091]! }
- public var KeyCommand_JumpToPreviousUnreadChat: String { return self._s[1094]! }
- public var Channel_OwnershipTransfer_Title: String { return self._s[1095]! }
- public var EditTheme_UploadEditedTheme: String { return self._s[1096]! }
- public var Settings_SetProfilePhotoOrVideo: String { return self._s[1098]! }
- public var Passport_FieldOneOf_Delimeter: String { return self._s[1099]! }
- public var MessagePoll_ViewResults: String { return self._s[1100]! }
- public var Group_Setup_TypePrivateHelp: String { return self._s[1101]! }
+ public var Passport_Email_UseTelegramEmailHelp: String { return self._s[1089]! }
+ public var ChatList_Context_JoinChannel: String { return self._s[1090]! }
+ public var MediaPlayer_UnknownArtist: String { return self._s[1091]! }
+ public var VoiceChat_EditDescriptionText: String { return self._s[1092]! }
+ public var KeyCommand_JumpToPreviousUnreadChat: String { return self._s[1095]! }
+ public var Channel_OwnershipTransfer_Title: String { return self._s[1096]! }
+ public var EditTheme_UploadEditedTheme: String { return self._s[1097]! }
+ public var Settings_SetProfilePhotoOrVideo: String { return self._s[1099]! }
+ public var Passport_FieldOneOf_Delimeter: String { return self._s[1100]! }
+ public var MessagePoll_ViewResults: String { return self._s[1101]! }
+ public var Group_Setup_TypePrivateHelp: String { return self._s[1102]! }
public func UserInfo_ContactForwardTooltip_Chat_One(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1102]!, self._r[1102]!, [_0])
+ return formatWithArgumentRanges(self._s[1103]!, self._r[1103]!, [_0])
}
- public var Passport_Address_OneOfTypeUtilityBill: String { return self._s[1103]! }
- public var Privacy_PaymentsClear_ShippingInfoCleared: String { return self._s[1104]! }
- public var ChatList_Search_ShowLess: String { return self._s[1105]! }
- public var InviteLink_Create_UsersLimitNoLimit: String { return self._s[1106]! }
- public var UserInfo_ShareBot: String { return self._s[1107]! }
- public var Privacy_Calls_P2P: String { return self._s[1109]! }
- public var WebBrowser_InAppSafari: String { return self._s[1110]! }
- public var SharedMedia_EmptyFilesText: String { return self._s[1113]! }
- public var Channel_AdminLog_MessagePreviousMessage: String { return self._s[1114]! }
- public var GroupInfo_SetSound: String { return self._s[1115]! }
- public var Permissions_PeopleNearbyAllowInSettings_v0: String { return self._s[1116]! }
+ public var Passport_Address_OneOfTypeUtilityBill: String { return self._s[1104]! }
+ public var Privacy_PaymentsClear_ShippingInfoCleared: String { return self._s[1105]! }
+ public var ChatList_Search_ShowLess: String { return self._s[1106]! }
+ public var InviteLink_Create_UsersLimitNoLimit: String { return self._s[1107]! }
+ public var UserInfo_ShareBot: String { return self._s[1108]! }
+ public var Privacy_Calls_P2P: String { return self._s[1110]! }
+ public var WebBrowser_InAppSafari: String { return self._s[1111]! }
+ public var SharedMedia_EmptyFilesText: String { return self._s[1114]! }
+ public var Channel_AdminLog_MessagePreviousMessage: String { return self._s[1115]! }
+ public var GroupInfo_SetSound: String { return self._s[1116]! }
+ public var Permissions_PeopleNearbyAllowInSettings_v0: String { return self._s[1117]! }
public func Conversation_AutoremoveRemainingTime(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1117]!, self._r[1117]!, [_0])
+ return formatWithArgumentRanges(self._s[1118]!, self._r[1118]!, [_0])
}
- public var Channel_AdminLog_MessagePreviousDescription: String { return self._s[1118]! }
- public var Channel_AdminLogFilter_EventsAll: String { return self._s[1119]! }
- public var CallSettings_UseLessData: String { return self._s[1120]! }
- public var InfoPlist_NSCameraUsageDescription: String { return self._s[1121]! }
- public var NotificationsSound_Chord: String { return self._s[1122]! }
- public var PhotoEditor_CurvesTool: String { return self._s[1123]! }
- public var Appearance_ThemePreview_Chat_2_Text: String { return self._s[1124]! }
- public var Resolve_ErrorNotFound: String { return self._s[1125]! }
- public var Activity_PlayingGame: String { return self._s[1126]! }
+ public var Channel_AdminLog_MessagePreviousDescription: String { return self._s[1119]! }
+ public var Channel_AdminLogFilter_EventsAll: String { return self._s[1120]! }
+ public var CallSettings_UseLessData: String { return self._s[1121]! }
+ public var InfoPlist_NSCameraUsageDescription: String { return self._s[1122]! }
+ public var NotificationsSound_Chord: String { return self._s[1123]! }
+ public var PhotoEditor_CurvesTool: String { return self._s[1124]! }
+ public var Appearance_ThemePreview_Chat_2_Text: String { return self._s[1125]! }
+ public var Resolve_ErrorNotFound: String { return self._s[1126]! }
+ public var Activity_PlayingGame: String { return self._s[1127]! }
public func VoiceChat_InvitedPeerText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1130]!, self._r[1130]!, [_0])
+ return formatWithArgumentRanges(self._s[1131]!, self._r[1131]!, [_0])
}
- public var StickerPacksSettings_AnimatedStickersInfo: String { return self._s[1131]! }
+ public var StickerPacksSettings_AnimatedStickersInfo: String { return self._s[1132]! }
public func PUSH_CHANNEL_MESSAGE_GEO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1132]!, self._r[1132]!, [_1])
+ return formatWithArgumentRanges(self._s[1133]!, self._r[1133]!, [_1])
}
- public var Conversation_ShareBotContactConfirmationTitle: String { return self._s[1133]! }
- public var Notification_CallIncoming: String { return self._s[1134]! }
- public var Stats_EnabledNotifications: String { return self._s[1135]! }
- public var Notification_VoiceChatStartedChannel: String { return self._s[1136]! }
- public var Notifications_PermissionsOpenSettings: String { return self._s[1137]! }
- public var Checkout_ErrorProviderAccountTimeout: String { return self._s[1138]! }
+ public var Conversation_ShareBotContactConfirmationTitle: String { return self._s[1134]! }
+ public var Notification_CallIncoming: String { return self._s[1135]! }
+ public var Stats_EnabledNotifications: String { return self._s[1136]! }
+ public var Notification_VoiceChatStartedChannel: String { return self._s[1137]! }
+ public var Notifications_PermissionsOpenSettings: String { return self._s[1138]! }
+ public var Checkout_ErrorProviderAccountTimeout: String { return self._s[1139]! }
public func Activity_RemindAboutChannel(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1139]!, self._r[1139]!, [_0])
+ return formatWithArgumentRanges(self._s[1140]!, self._r[1140]!, [_0])
}
- public var VoiceChat_StatusMutedYou: String { return self._s[1140]! }
- public var VoiceOver_Chat_ReplyToYourMessage: String { return self._s[1141]! }
- public var Channel_DiscussionGroup_MakeHistoryPublic: String { return self._s[1142]! }
- public var StickerPacksSettings_Title: String { return self._s[1143]! }
+ public var VoiceChat_StatusMutedYou: String { return self._s[1141]! }
+ public var VoiceOver_Chat_ReplyToYourMessage: String { return self._s[1142]! }
+ public var Channel_DiscussionGroup_MakeHistoryPublic: String { return self._s[1143]! }
+ public var StickerPacksSettings_Title: String { return self._s[1144]! }
public func Channel_AdminLog_MessageGroupPreHistoryVisible(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1144]!, self._r[1144]!, [_0])
+ return formatWithArgumentRanges(self._s[1145]!, self._r[1145]!, [_0])
}
- public var Watch_NoConnection: String { return self._s[1145]! }
- public var EncryptionKey_Title: String { return self._s[1146]! }
- public var Widget_AuthRequired: String { return self._s[1147]! }
+ public var Watch_NoConnection: String { return self._s[1146]! }
+ public var EncryptionKey_Title: String { return self._s[1147]! }
+ public var Widget_AuthRequired: String { return self._s[1148]! }
public func PUSH_MESSAGE_ROUND(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1148]!, self._r[1148]!, [_1])
+ return formatWithArgumentRanges(self._s[1149]!, self._r[1149]!, [_1])
}
- public var Notifications_ExceptionsTitle: String { return self._s[1149]! }
- public var EditTheme_Expand_TopInfo: String { return self._s[1150]! }
+ public var Notifications_ExceptionsTitle: String { return self._s[1150]! }
+ public var EditTheme_Expand_TopInfo: String { return self._s[1151]! }
public func Contacts_AddPhoneNumber(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1151]!, self._r[1151]!, [_0])
+ return formatWithArgumentRanges(self._s[1152]!, self._r[1152]!, [_0])
}
- public var Channel_AdminLogFilter_EventsRestrictions: String { return self._s[1153]! }
- public var Notifications_GroupNotificationsSound: String { return self._s[1154]! }
- public var VoiceChat_SpeakPermissionAdmin: String { return self._s[1155]! }
- public var Passport_Email_EnterOtherEmail: String { return self._s[1156]! }
+ public var Channel_AdminLogFilter_EventsRestrictions: String { return self._s[1154]! }
+ public var Notifications_GroupNotificationsSound: String { return self._s[1155]! }
+ public var VoiceChat_SpeakPermissionAdmin: String { return self._s[1156]! }
+ public var Passport_Email_EnterOtherEmail: String { return self._s[1157]! }
public func VoiceChat_RemovePeerConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1159]!, self._r[1159]!, [_0])
+ return formatWithArgumentRanges(self._s[1160]!, self._r[1160]!, [_0])
}
- public var Conversation_AddToContacts: String { return self._s[1160]! }
- public var AutoDownloadSettings_DataUsageMedium: String { return self._s[1161]! }
- public var AuthSessions_LogOutApplications: String { return self._s[1163]! }
- public var VoiceChat_LeaveVoiceChat: String { return self._s[1164]! }
- public var ChatList_Context_Unpin: String { return self._s[1165]! }
- public var PeopleNearby_DiscoverDescription: String { return self._s[1166]! }
- public var UserInfo_FakeBotWarning: String { return self._s[1167]! }
- public var Notification_MessageLifetime1d: String { return self._s[1168]! }
- public var PrivacyLastSeenSettings_NeverShareWith_Title: String { return self._s[1169]! }
- public var ChatListFolder_CategoryChannels: String { return self._s[1170]! }
- public var VoiceOver_Chat_SeenByRecipient: String { return self._s[1171]! }
- public var Notifications_PermissionsAllow: String { return self._s[1172]! }
- public var Undo_ScheduledMessagesCleared: String { return self._s[1173]! }
- public var AutoDownloadSettings_PrivateChats: String { return self._s[1175]! }
- public var VoiceChat_ImproveYourProfileText: String { return self._s[1176]! }
- public var ApplyLanguage_ChangeLanguageAction: String { return self._s[1177]! }
- public var ChatImportActivity_ErrorInvalidChatType: String { return self._s[1178]! }
+ public var Conversation_AddToContacts: String { return self._s[1161]! }
+ public var AutoDownloadSettings_DataUsageMedium: String { return self._s[1162]! }
+ public var AuthSessions_LogOutApplications: String { return self._s[1164]! }
+ public var VoiceChat_LeaveVoiceChat: String { return self._s[1165]! }
+ public var ChatList_Context_Unpin: String { return self._s[1166]! }
+ public var PeopleNearby_DiscoverDescription: String { return self._s[1167]! }
+ public var UserInfo_FakeBotWarning: String { return self._s[1168]! }
+ public var Notification_MessageLifetime1d: String { return self._s[1169]! }
+ public var PrivacyLastSeenSettings_NeverShareWith_Title: String { return self._s[1170]! }
+ public var ChatListFolder_CategoryChannels: String { return self._s[1171]! }
+ public var VoiceOver_Chat_SeenByRecipient: String { return self._s[1172]! }
+ public var Notifications_PermissionsAllow: String { return self._s[1173]! }
+ public var Undo_ScheduledMessagesCleared: String { return self._s[1174]! }
+ public var AutoDownloadSettings_PrivateChats: String { return self._s[1176]! }
+ public var VoiceChat_ImproveYourProfileText: String { return self._s[1177]! }
+ public var ApplyLanguage_ChangeLanguageAction: String { return self._s[1178]! }
+ public var ChatImportActivity_ErrorInvalidChatType: String { return self._s[1179]! }
public func Conversation_ScheduledVoiceChatStartsToday(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1179]!, self._r[1179]!, [_0])
- }
- public func PrivacySettings_LastSeenNobodyPlus(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[1180]!, self._r[1180]!, [_0])
}
- public var Conversation_AutoremoveTimerRemovedChannel: String { return self._s[1182]! }
- public var Notifications_MessageNotificationsHelp: String { return self._s[1184]! }
- public var WallpaperSearch_ColorPink: String { return self._s[1185]! }
- public var ContactInfo_PhoneNumberHidden: String { return self._s[1186]! }
- public var Passport_Identity_IssueDate: String { return self._s[1188]! }
+ public func PrivacySettings_LastSeenNobodyPlus(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[1181]!, self._r[1181]!, [_0])
+ }
+ public var Conversation_AutoremoveTimerRemovedChannel: String { return self._s[1183]! }
+ public var Notifications_MessageNotificationsHelp: String { return self._s[1185]! }
+ public var WallpaperSearch_ColorPink: String { return self._s[1186]! }
+ public var ContactInfo_PhoneNumberHidden: String { return self._s[1187]! }
+ public var Passport_Identity_IssueDate: String { return self._s[1189]! }
public func PUSH_CHAT_MESSAGE_GIF(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1189]!, self._r[1189]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1190]!, self._r[1190]!, [_1, _2])
}
- public var ChatList_DeleteForAllSubscribersConfirmationText: String { return self._s[1190]! }
- public var Channel_Info_Description: String { return self._s[1191]! }
- public var PrivacySettings_DeleteAccountIfAwayFor: String { return self._s[1192]! }
- public var Weekday_ShortTuesday: String { return self._s[1193]! }
- public var Common_Back: String { return self._s[1194]! }
- public var Chat_PinnedMessagesHiddenTitle: String { return self._s[1196]! }
- public var ChatListFolder_AddChats: String { return self._s[1197]! }
- public var Common_Close: String { return self._s[1199]! }
- public var Map_OpenIn: String { return self._s[1200]! }
- public var Group_Setup_HistoryTitle: String { return self._s[1201]! }
- public var SettingsSearch_Synonyms_Data_AutoDownloadUsingWifi: String { return self._s[1202]! }
- public var Notification_MessageLifetime1h: String { return self._s[1203]! }
+ public var ChatList_DeleteForAllSubscribersConfirmationText: String { return self._s[1191]! }
+ public var Channel_Info_Description: String { return self._s[1192]! }
+ public var PrivacySettings_DeleteAccountIfAwayFor: String { return self._s[1193]! }
+ public var Weekday_ShortTuesday: String { return self._s[1194]! }
+ public var Common_Back: String { return self._s[1195]! }
+ public var Chat_PinnedMessagesHiddenTitle: String { return self._s[1197]! }
+ public var ChatListFolder_AddChats: String { return self._s[1198]! }
+ public var Common_Close: String { return self._s[1200]! }
+ public var Map_OpenIn: String { return self._s[1201]! }
+ public var Group_Setup_HistoryTitle: String { return self._s[1202]! }
+ public var SettingsSearch_Synonyms_Data_AutoDownloadUsingWifi: String { return self._s[1203]! }
+ public var Notification_MessageLifetime1h: String { return self._s[1204]! }
public func CancelResetAccount_Success(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1204]!, self._r[1204]!, [_0])
+ return formatWithArgumentRanges(self._s[1205]!, self._r[1205]!, [_0])
}
- public var Watch_Contacts_NoResults: String { return self._s[1206]! }
- public var TwoStepAuth_SetupResendEmailCode: String { return self._s[1207]! }
- public var Checkout_Phone: String { return self._s[1208]! }
- public var OwnershipTransfer_ComeBackLater: String { return self._s[1209]! }
+ public var Watch_Contacts_NoResults: String { return self._s[1207]! }
+ public var TwoStepAuth_SetupResendEmailCode: String { return self._s[1208]! }
+ public var Checkout_Phone: String { return self._s[1209]! }
+ public var OwnershipTransfer_ComeBackLater: String { return self._s[1210]! }
public func Channel_CommentsGroup_HeaderGroupSet(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1210]!, self._r[1210]!, [_0])
+ return formatWithArgumentRanges(self._s[1211]!, self._r[1211]!, [_0])
}
public func DialogList_MultipleTypingSuffix(_ _0: Int) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1211]!, self._r[1211]!, ["\(_0)"])
+ return formatWithArgumentRanges(self._s[1212]!, self._r[1212]!, ["\(_0)"])
}
- public var Conversation_AudioRateTooltipSpeedUp: String { return self._s[1212]! }
- public var ChatAdmins_Title: String { return self._s[1213]! }
- public var Appearance_ThemePreview_Chat_7_Text: String { return self._s[1214]! }
+ public var Conversation_AudioRateTooltipSpeedUp: String { return self._s[1213]! }
+ public var ChatAdmins_Title: String { return self._s[1214]! }
+ public var Appearance_ThemePreview_Chat_7_Text: String { return self._s[1215]! }
public func PUSH_CHANNEL_MESSAGE_POLL(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1215]!, self._r[1215]!, [_1])
+ return formatWithArgumentRanges(self._s[1216]!, self._r[1216]!, [_1])
}
- public var Common_Done: String { return self._s[1216]! }
- public var ChatList_HeaderImportIntoAnExistingGroup: String { return self._s[1217]! }
- public var Appearance_AppIconNew2: String { return self._s[1218]! }
+ public var Common_Done: String { return self._s[1217]! }
+ public var ChatList_HeaderImportIntoAnExistingGroup: String { return self._s[1218]! }
+ public var Appearance_AppIconNew2: String { return self._s[1219]! }
public func PUSH_PINNED_VIDEO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1222]!, self._r[1222]!, [_1])
+ return formatWithArgumentRanges(self._s[1223]!, self._r[1223]!, [_1])
}
- public var Appearance_ThemeCarouselNight: String { return self._s[1223]! }
- public var InviteLink_Expired: String { return self._s[1225]! }
- public var Preview_OpenInInstagram: String { return self._s[1226]! }
- public var Wallpaper_SetColor: String { return self._s[1231]! }
- public var VoiceOver_Media_PlaybackRate: String { return self._s[1232]! }
- public var ChatSettings_Groups: String { return self._s[1233]! }
+ public var Appearance_ThemeCarouselNight: String { return self._s[1224]! }
+ public var InviteLink_Expired: String { return self._s[1226]! }
+ public var Preview_OpenInInstagram: String { return self._s[1227]! }
+ public var Wallpaper_SetColor: String { return self._s[1232]! }
+ public var VoiceOver_Media_PlaybackRate: String { return self._s[1233]! }
+ public var ChatSettings_Groups: String { return self._s[1234]! }
public func VoiceOver_Chat_VoiceMessageFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1234]!, self._r[1234]!, [_0])
+ return formatWithArgumentRanges(self._s[1235]!, self._r[1235]!, [_0])
}
- public var Contacts_SortedByName: String { return self._s[1235]! }
- public var SettingsSearch_Synonyms_Notifications_ContactJoined: String { return self._s[1236]! }
- public var Channel_Management_LabelCreator: String { return self._s[1237]! }
- public var Contacts_PermissionsSuppressWarningTitle: String { return self._s[1238]! }
+ public var Contacts_SortedByName: String { return self._s[1236]! }
+ public var SettingsSearch_Synonyms_Notifications_ContactJoined: String { return self._s[1237]! }
+ public var Channel_Management_LabelCreator: String { return self._s[1238]! }
+ public var Contacts_PermissionsSuppressWarningTitle: String { return self._s[1239]! }
public func PrivacySettings_LastSeenContactsMinusPlus(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1239]!, self._r[1239]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[1240]!, self._r[1240]!, [_0, _1])
}
- public var Group_GroupMembersHeader: String { return self._s[1240]! }
- public var Group_PublicLink_Title: String { return self._s[1241]! }
- public var Channel_OwnershipTransfer_ErrorAdminsTooMuch: String { return self._s[1242]! }
- public var VoiceOver_Chat_Photo: String { return self._s[1243]! }
- public var TwoFactorSetup_EmailVerification_Placeholder: String { return self._s[1244]! }
- public var IntentsSettings_SuggestBy: String { return self._s[1245]! }
- public var Privacy_Calls_AlwaysAllow_Placeholder: String { return self._s[1246]! }
- public var Appearance_ThemePreview_ChatList_1_Name: String { return self._s[1247]! }
- public var PhoneNumberHelp_ChangeNumber: String { return self._s[1248]! }
- public var LogoutOptions_SetPasscodeText: String { return self._s[1249]! }
- public var Map_OpenInMaps: String { return self._s[1250]! }
- public var ContactInfo_PhoneLabelWorkFax: String { return self._s[1251]! }
- public var BlockedUsers_Unblock: String { return self._s[1252]! }
+ public var Group_GroupMembersHeader: String { return self._s[1241]! }
+ public var Group_PublicLink_Title: String { return self._s[1242]! }
+ public var Channel_OwnershipTransfer_ErrorAdminsTooMuch: String { return self._s[1243]! }
+ public var VoiceOver_Chat_Photo: String { return self._s[1244]! }
+ public var TwoFactorSetup_EmailVerification_Placeholder: String { return self._s[1245]! }
+ public var IntentsSettings_SuggestBy: String { return self._s[1246]! }
+ public var Privacy_Calls_AlwaysAllow_Placeholder: String { return self._s[1247]! }
+ public var Appearance_ThemePreview_ChatList_1_Name: String { return self._s[1248]! }
+ public var PhoneNumberHelp_ChangeNumber: String { return self._s[1249]! }
+ public var LogoutOptions_SetPasscodeText: String { return self._s[1250]! }
+ public var Map_OpenInMaps: String { return self._s[1251]! }
+ public var ContactInfo_PhoneLabelWorkFax: String { return self._s[1252]! }
+ public var BlockedUsers_Unblock: String { return self._s[1253]! }
public func Settings_ApplyProxyAlert(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1253]!, self._r[1253]!, [_1, _2])
- }
- public func Channel_AdminLog_MessageRestrictedNameUsername(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[1254]!, self._r[1254]!, [_1, _2])
}
- public var ChatImport_CreateGroupAlertTitle: String { return self._s[1256]! }
- public var Conversation_Block: String { return self._s[1257]! }
- public var VoiceChat_PersonalAccount: String { return self._s[1258]! }
- public var Passport_Scans_UploadNew: String { return self._s[1259]! }
- public var Share_Title: String { return self._s[1260]! }
- public var Conversation_ApplyLocalization: String { return self._s[1261]! }
- public var SharedMedia_EmptyLinksText: String { return self._s[1262]! }
- public var Settings_NotificationsAndSounds: String { return self._s[1263]! }
- public var Stats_ViewsByHoursTitle: String { return self._s[1264]! }
- public var PhotoEditor_QualityMedium: String { return self._s[1265]! }
- public var Conversation_ContextMenuCancelSending: String { return self._s[1266]! }
+ public func Channel_AdminLog_MessageRestrictedNameUsername(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[1255]!, self._r[1255]!, [_1, _2])
+ }
+ public var ChatImport_CreateGroupAlertTitle: String { return self._s[1257]! }
+ public var Conversation_Block: String { return self._s[1258]! }
+ public var VoiceChat_PersonalAccount: String { return self._s[1259]! }
+ public var Passport_Scans_UploadNew: String { return self._s[1260]! }
+ public var Share_Title: String { return self._s[1261]! }
+ public var Conversation_ApplyLocalization: String { return self._s[1262]! }
+ public var SharedMedia_EmptyLinksText: String { return self._s[1263]! }
+ public var Settings_NotificationsAndSounds: String { return self._s[1264]! }
+ public var Stats_ViewsByHoursTitle: String { return self._s[1265]! }
+ public var PhotoEditor_QualityMedium: String { return self._s[1266]! }
+ public var Conversation_ContextMenuCancelSending: String { return self._s[1267]! }
public func PUSH_CHANNEL_MESSAGE_GAME(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1267]!, self._r[1267]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1268]!, self._r[1268]!, [_1, _2])
}
- public var Conversation_RestrictedInline: String { return self._s[1268]! }
- public var Passport_Language_tr: String { return self._s[1269]! }
- public var Call_Mute: String { return self._s[1270]! }
+ public var Conversation_RestrictedInline: String { return self._s[1269]! }
+ public var Passport_Language_tr: String { return self._s[1270]! }
+ public var Call_Mute: String { return self._s[1271]! }
public func Conversation_NoticeInvitedByInGroup(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1271]!, self._r[1271]!, [_0])
+ return formatWithArgumentRanges(self._s[1272]!, self._r[1272]!, [_0])
}
- public var Passport_Language_bn: String { return self._s[1272]! }
- public var Common_Save: String { return self._s[1274]! }
- public var AccessDenied_LocationTracking: String { return self._s[1276]! }
- public var Month_ShortOctober: String { return self._s[1277]! }
- public var AutoDownloadSettings_WiFi: String { return self._s[1278]! }
- public var ProfilePhoto_SetMainPhoto: String { return self._s[1280]! }
- public var ChangePhoneNumberNumber_NewNumber: String { return self._s[1281]! }
+ public var Passport_Language_bn: String { return self._s[1273]! }
+ public var Common_Save: String { return self._s[1275]! }
+ public var AccessDenied_LocationTracking: String { return self._s[1277]! }
+ public var Month_ShortOctober: String { return self._s[1278]! }
+ public var AutoDownloadSettings_WiFi: String { return self._s[1279]! }
+ public var ProfilePhoto_SetMainPhoto: String { return self._s[1281]! }
+ public var ChangePhoneNumberNumber_NewNumber: String { return self._s[1282]! }
public func Time_MonthOfYear_m3(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1282]!, self._r[1282]!, [_0])
+ return formatWithArgumentRanges(self._s[1283]!, self._r[1283]!, [_0])
}
- public var Watch_ChannelInfo_Title: String { return self._s[1283]! }
- public var State_Updating: String { return self._s[1284]! }
- public var Conversation_UnblockUser: String { return self._s[1285]! }
- public var Notifications_ChannelNotificationsSound: String { return self._s[1286]! }
- public var Map_GetDirections: String { return self._s[1287]! }
- public var Watch_Compose_AddContact: String { return self._s[1289]! }
- public var Conversation_Dice_u26BD: String { return self._s[1290]! }
- public var AccessDenied_PhotosRestricted: String { return self._s[1291]! }
+ public var Watch_ChannelInfo_Title: String { return self._s[1284]! }
+ public var State_Updating: String { return self._s[1285]! }
+ public var Conversation_UnblockUser: String { return self._s[1286]! }
+ public var Notifications_ChannelNotificationsSound: String { return self._s[1287]! }
+ public var Map_GetDirections: String { return self._s[1288]! }
+ public var Watch_Compose_AddContact: String { return self._s[1290]! }
+ public var Conversation_Dice_u26BD: String { return self._s[1291]! }
+ public var AccessDenied_PhotosRestricted: String { return self._s[1292]! }
public func Channel_AdminLog_MessageRank(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1292]!, self._r[1292]!, [_1])
+ return formatWithArgumentRanges(self._s[1293]!, self._r[1293]!, [_1])
}
- public var Map_LoadError: String { return self._s[1294]! }
- public var SettingsSearch_Synonyms_Privacy_Calls: String { return self._s[1295]! }
- public var PhotoEditor_CropAuto: String { return self._s[1296]! }
+ public var Map_LoadError: String { return self._s[1295]! }
+ public var SettingsSearch_Synonyms_Privacy_Calls: String { return self._s[1296]! }
+ public var PhotoEditor_CropAuto: String { return self._s[1297]! }
public func Target_ShareGameConfirmationPrivate(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1299]!, self._r[1299]!, [_0])
+ return formatWithArgumentRanges(self._s[1300]!, self._r[1300]!, [_0])
}
- public var Username_TooManyPublicUsernamesError: String { return self._s[1301]! }
+ public var Username_TooManyPublicUsernamesError: String { return self._s[1302]! }
public func PUSH_PINNED_GAME(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1302]!, self._r[1302]!, [_1])
+ return formatWithArgumentRanges(self._s[1303]!, self._r[1303]!, [_1])
}
- public var Settings_PhoneNumber: String { return self._s[1303]! }
+ public var Settings_PhoneNumber: String { return self._s[1304]! }
public func Channel_AdminLog_MessageTransferedName(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1304]!, self._r[1304]!, [_1])
+ return formatWithArgumentRanges(self._s[1305]!, self._r[1305]!, [_1])
}
- public var Month_GenJune: String { return self._s[1306]! }
- public var Notifications_ExceptionsGroupPlaceholder: String { return self._s[1307]! }
- public var ChatListFolder_CategoryRead: String { return self._s[1308]! }
- public var LoginPassword_ResetAccount: String { return self._s[1309]! }
+ public var Month_GenJune: String { return self._s[1307]! }
+ public var Notifications_ExceptionsGroupPlaceholder: String { return self._s[1308]! }
+ public var ChatListFolder_CategoryRead: String { return self._s[1309]! }
+ public var LoginPassword_ResetAccount: String { return self._s[1310]! }
public func DialogList_SingleUploadingFileSuffix(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1310]!, self._r[1310]!, [_0])
+ return formatWithArgumentRanges(self._s[1311]!, self._r[1311]!, [_0])
}
- public var Call_CameraConfirmationConfirm: String { return self._s[1311]! }
- public var Notification_RenamedChannel: String { return self._s[1312]! }
+ public var Call_CameraConfirmationConfirm: String { return self._s[1312]! }
+ public var Notification_RenamedChannel: String { return self._s[1313]! }
public func Channel_AdminLog_MessageUnpinned(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1313]!, self._r[1313]!, [_0])
+ return formatWithArgumentRanges(self._s[1314]!, self._r[1314]!, [_0])
}
- public var Channel_AdminLogFilter_EventsAdmins: String { return self._s[1314]! }
- public var IntentsSettings_Title: String { return self._s[1316]! }
- public var CallList_DeleteAllForMe: String { return self._s[1317]! }
- public var Settings_AppleWatch: String { return self._s[1318]! }
- public var Conversation_LinkCopied: String { return self._s[1319]! }
- public var DialogList_NoMessagesText: String { return self._s[1320]! }
+ public var Channel_AdminLogFilter_EventsAdmins: String { return self._s[1315]! }
+ public var IntentsSettings_Title: String { return self._s[1317]! }
+ public var CallList_DeleteAllForMe: String { return self._s[1318]! }
+ public var Settings_AppleWatch: String { return self._s[1319]! }
+ public var Conversation_LinkCopied: String { return self._s[1320]! }
+ public var DialogList_NoMessagesText: String { return self._s[1321]! }
public func VoiceChat_SendPublicLinkText(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1321]!, self._r[1321]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1322]!, self._r[1322]!, [_1, _2])
}
- public var GroupPermission_NoChangeInfo: String { return self._s[1322]! }
- public var Channel_ErrorAccessDenied: String { return self._s[1324]! }
- public var ScheduledMessages_EmptyPlaceholder: String { return self._s[1325]! }
+ public var GroupPermission_NoChangeInfo: String { return self._s[1323]! }
+ public var Channel_ErrorAccessDenied: String { return self._s[1325]! }
+ public var ScheduledMessages_EmptyPlaceholder: String { return self._s[1326]! }
public func Message_StickerText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1326]!, self._r[1326]!, [_0])
+ return formatWithArgumentRanges(self._s[1327]!, self._r[1327]!, [_0])
}
- public var AuthSessions_TerminateOtherSessionsHelp: String { return self._s[1327]! }
- public var StickerPacksSettings_AnimatedStickers: String { return self._s[1328]! }
- public var Month_ShortJanuary: String { return self._s[1329]! }
- public var Conversation_UnreadMessages: String { return self._s[1330]! }
- public var Conversation_PrivateChannelTooltip: String { return self._s[1332]! }
- public var Call_VoiceOver_VideoCallCanceled: String { return self._s[1333]! }
- public var PrivacySettings_DeleteAccountTitle: String { return self._s[1335]! }
- public var Channel_Members_AddBannedErrorAdmin: String { return self._s[1336]! }
+ public var AuthSessions_TerminateOtherSessionsHelp: String { return self._s[1328]! }
+ public var StickerPacksSettings_AnimatedStickers: String { return self._s[1329]! }
+ public var Month_ShortJanuary: String { return self._s[1330]! }
+ public var Conversation_UnreadMessages: String { return self._s[1331]! }
+ public var Conversation_PrivateChannelTooltip: String { return self._s[1333]! }
+ public var Call_VoiceOver_VideoCallCanceled: String { return self._s[1334]! }
+ public var PrivacySettings_DeleteAccountTitle: String { return self._s[1336]! }
+ public var Channel_Members_AddBannedErrorAdmin: String { return self._s[1337]! }
public func Conversation_ShareMyPhoneNumberConfirmation(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1340]!, self._r[1340]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1341]!, self._r[1341]!, [_1, _2])
}
- public var Widget_ApplicationLocked: String { return self._s[1341]! }
+ public var Widget_ApplicationLocked: String { return self._s[1342]! }
public func TextFormat_AddLinkText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1342]!, self._r[1342]!, [_0])
+ return formatWithArgumentRanges(self._s[1343]!, self._r[1343]!, [_0])
}
- public var Common_TakePhotoOrVideo: String { return self._s[1343]! }
- public var Passport_Language_ru: String { return self._s[1345]! }
- public var MediaPicker_VideoMuteDescription: String { return self._s[1346]! }
- public var EditTheme_ErrorLinkTaken: String { return self._s[1347]! }
+ public var Common_TakePhotoOrVideo: String { return self._s[1344]! }
+ public var Passport_Language_ru: String { return self._s[1346]! }
+ public var MediaPicker_VideoMuteDescription: String { return self._s[1347]! }
+ public var EditTheme_ErrorLinkTaken: String { return self._s[1348]! }
public func Group_EditAdmin_RankInfo(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1349]!, self._r[1349]!, [_0])
+ return formatWithArgumentRanges(self._s[1350]!, self._r[1350]!, [_0])
}
- public var VoiceChat_ShareShort: String { return self._s[1350]! }
- public var Channel_Members_AddAdminErrorBlacklisted: String { return self._s[1351]! }
- public var Conversation_Owner: String { return self._s[1353]! }
- public var Settings_FAQ_Intro: String { return self._s[1354]! }
- public var PhotoEditor_QualityLow: String { return self._s[1356]! }
- public var Widget_GalleryTitle: String { return self._s[1357]! }
- public var Call_End: String { return self._s[1358]! }
- public var StickerPacksSettings_FeaturedPacks: String { return self._s[1360]! }
- public var Privacy_ContactsSyncHelp: String { return self._s[1361]! }
- public var OldChannels_NoticeUpgradeText: String { return self._s[1365]! }
- public var Conversation_Call: String { return self._s[1367]! }
- public var Watch_MessageView_Title: String { return self._s[1368]! }
+ public var VoiceChat_ShareShort: String { return self._s[1351]! }
+ public var Channel_Members_AddAdminErrorBlacklisted: String { return self._s[1352]! }
+ public var Conversation_Owner: String { return self._s[1354]! }
+ public var Settings_FAQ_Intro: String { return self._s[1355]! }
+ public var PhotoEditor_QualityLow: String { return self._s[1357]! }
+ public var Widget_GalleryTitle: String { return self._s[1358]! }
+ public var Call_End: String { return self._s[1359]! }
+ public var StickerPacksSettings_FeaturedPacks: String { return self._s[1361]! }
+ public var Privacy_ContactsSyncHelp: String { return self._s[1362]! }
+ public var OldChannels_NoticeUpgradeText: String { return self._s[1366]! }
+ public var Conversation_Call: String { return self._s[1368]! }
+ public var Watch_MessageView_Title: String { return self._s[1369]! }
public func Notification_RenamedChat(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1369]!, self._r[1369]!, [_0])
+ return formatWithArgumentRanges(self._s[1370]!, self._r[1370]!, [_0])
}
- public var Passport_PasswordCompleteSetup: String { return self._s[1370]! }
+ public var Passport_PasswordCompleteSetup: String { return self._s[1371]! }
public func Notification_ChangedGroupVideo(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1371]!, self._r[1371]!, [_0])
+ return formatWithArgumentRanges(self._s[1372]!, self._r[1372]!, [_0])
}
public func TwoFactorSetup_EmailVerification_Text(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1373]!, self._r[1373]!, [_0])
+ return formatWithArgumentRanges(self._s[1374]!, self._r[1374]!, [_0])
}
- public var Map_Location: String { return self._s[1374]! }
- public var Watch_MessageView_ViewOnPhone: String { return self._s[1375]! }
- public var Login_CountryCode: String { return self._s[1376]! }
- public var Channel_DiscussionGroup_PrivateGroup: String { return self._s[1378]! }
- public var ChatState_ConnectingToProxy: String { return self._s[1379]! }
- public var Login_CallRequestState3: String { return self._s[1380]! }
- public var NetworkUsageSettings_MediaAudioDataSection: String { return self._s[1383]! }
- public var SocksProxySetup_ProxyStatusConnecting: String { return self._s[1384]! }
- public var Widget_ChatsGalleryDescription: String { return self._s[1386]! }
- public var PrivacyLastSeenSettings_NeverShareWith_Placeholder: String { return self._s[1388]! }
- public var InstantPage_FontSanFrancisco: String { return self._s[1389]! }
- public var Call_StatusEnded: String { return self._s[1390]! }
+ public var Map_Location: String { return self._s[1375]! }
+ public var Watch_MessageView_ViewOnPhone: String { return self._s[1376]! }
+ public var Login_CountryCode: String { return self._s[1377]! }
+ public var Channel_DiscussionGroup_PrivateGroup: String { return self._s[1379]! }
+ public var ChatState_ConnectingToProxy: String { return self._s[1380]! }
+ public var Login_CallRequestState3: String { return self._s[1381]! }
+ public var NetworkUsageSettings_MediaAudioDataSection: String { return self._s[1384]! }
+ public var SocksProxySetup_ProxyStatusConnecting: String { return self._s[1385]! }
+ public var Widget_ChatsGalleryDescription: String { return self._s[1387]! }
+ public var PrivacyLastSeenSettings_NeverShareWith_Placeholder: String { return self._s[1389]! }
+ public var InstantPage_FontSanFrancisco: String { return self._s[1390]! }
+ public var Call_StatusEnded: String { return self._s[1391]! }
public func Checkout_SuccessfulTooltip(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1393]!, self._r[1393]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1394]!, self._r[1394]!, [_1, _2])
}
- public var MusicPlayer_VoiceNote: String { return self._s[1394]! }
- public var ChatImportActivity_ErrorUserBlocked: String { return self._s[1395]! }
+ public var MusicPlayer_VoiceNote: String { return self._s[1395]! }
+ public var ChatImportActivity_ErrorUserBlocked: String { return self._s[1396]! }
public func PUSH_CHANNEL_MESSAGE_TEXT(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1396]!, self._r[1396]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1397]!, self._r[1397]!, [_1, _2])
}
- public var VoiceOver_MessageContextShare: String { return self._s[1397]! }
- public var ProfilePhoto_SearchWeb: String { return self._s[1398]! }
- public var EditProfile_Title: String { return self._s[1399]! }
+ public var VoiceOver_MessageContextShare: String { return self._s[1398]! }
+ public var ProfilePhoto_SearchWeb: String { return self._s[1399]! }
+ public var EditProfile_Title: String { return self._s[1400]! }
public func Notification_PinnedQuizMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1400]!, self._r[1400]!, [_0])
+ return formatWithArgumentRanges(self._s[1401]!, self._r[1401]!, [_0])
}
- public var VoiceChat_Unmute: String { return self._s[1401]! }
- public var ChangePhoneNumberCode_CodePlaceholder: String { return self._s[1402]! }
- public var NetworkUsageSettings_ResetStats: String { return self._s[1404]! }
- public var NetworkUsageSettings_GeneralDataSection: String { return self._s[1405]! }
- public var StickerPackActionInfo_AddedTitle: String { return self._s[1406]! }
- public var Channel_BanUser_PermissionSendStickersAndGifs: String { return self._s[1407]! }
+ public var VoiceChat_Unmute: String { return self._s[1402]! }
+ public var ChangePhoneNumberCode_CodePlaceholder: String { return self._s[1403]! }
+ public var NetworkUsageSettings_ResetStats: String { return self._s[1405]! }
+ public var NetworkUsageSettings_GeneralDataSection: String { return self._s[1406]! }
+ public var StickerPackActionInfo_AddedTitle: String { return self._s[1407]! }
+ public var Channel_BanUser_PermissionSendStickersAndGifs: String { return self._s[1408]! }
public func Call_ParticipantVideoVersionOutdatedError(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1408]!, self._r[1408]!, [_0])
+ return formatWithArgumentRanges(self._s[1409]!, self._r[1409]!, [_0])
}
- public var Location_ProximityNotification_Title: String { return self._s[1409]! }
- public var AuthSessions_AddDeviceIntro_Text1: String { return self._s[1410]! }
- public var Passport_Identity_LatinNameHelp: String { return self._s[1413]! }
- public var AuthSessions_AddDeviceIntro_Text2: String { return self._s[1414]! }
- public var Stats_GroupMembersTitle: String { return self._s[1415]! }
- public var AuthSessions_AddDeviceIntro_Text3: String { return self._s[1416]! }
- public var InviteLink_InviteLinkRevoked: String { return self._s[1417]! }
- public var Contacts_PermissionsSuppressWarningText: String { return self._s[1418]! }
- public var OpenFile_PotentiallyDangerousContentAlert: String { return self._s[1419]! }
- public var Settings_SetUsername: String { return self._s[1420]! }
- public var GroupInfo_ActionRestrict: String { return self._s[1421]! }
- public var SettingsSearch_Synonyms_SavedMessages: String { return self._s[1422]! }
+ public var Location_ProximityNotification_Title: String { return self._s[1410]! }
+ public var AuthSessions_AddDeviceIntro_Text1: String { return self._s[1411]! }
+ public var Passport_Identity_LatinNameHelp: String { return self._s[1414]! }
+ public var AuthSessions_AddDeviceIntro_Text2: String { return self._s[1415]! }
+ public var Stats_GroupMembersTitle: String { return self._s[1416]! }
+ public var AuthSessions_AddDeviceIntro_Text3: String { return self._s[1417]! }
+ public var InviteLink_InviteLinkRevoked: String { return self._s[1418]! }
+ public var Contacts_PermissionsSuppressWarningText: String { return self._s[1419]! }
+ public var OpenFile_PotentiallyDangerousContentAlert: String { return self._s[1420]! }
+ public var Settings_SetUsername: String { return self._s[1421]! }
+ public var GroupInfo_ActionRestrict: String { return self._s[1422]! }
+ public var SettingsSearch_Synonyms_SavedMessages: String { return self._s[1423]! }
public func Time_PreciseDate_m2(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1423]!, self._r[1423]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[1424]!, self._r[1424]!, [_1, _2, _3])
}
- public var Notifications_DisplayNamesOnLockScreenInfoWithLink: String { return self._s[1425]! }
- public var Notification_Exceptions_AlwaysOff: String { return self._s[1426]! }
- public var Conversation_ContextMenuDelete: String { return self._s[1427]! }
- public var Privacy_Calls_WhoCanCallMe: String { return self._s[1428]! }
- public var ChatList_PsaAlert_covid: String { return self._s[1431]! }
- public var VoiceOver_SilentPostOn: String { return self._s[1432]! }
- public var DialogList_Pin: String { return self._s[1433]! }
- public var Channel_AdminLog_CanInviteUsersViaLink: String { return self._s[1434]! }
- public var PrivacySettings_SecurityTitle: String { return self._s[1435]! }
- public var GroupPermission_NotAvailableInPublicGroups: String { return self._s[1436]! }
- public var PeopleNearby_Groups: String { return self._s[1437]! }
- public var Message_File: String { return self._s[1438]! }
- public var Calls_NoCallsPlaceholder: String { return self._s[1439]! }
- public var ChatList_GenericPsaLabel: String { return self._s[1442]! }
- public var UserInfo_LastNamePlaceholder: String { return self._s[1443]! }
- public var IntentsSettings_Reset: String { return self._s[1445]! }
- public var Call_ConnectionErrorTitle: String { return self._s[1446]! }
- public var PhotoEditor_SaturationTool: String { return self._s[1447]! }
- public var ChatSettings_AutomaticVideoMessageDownload: String { return self._s[1448]! }
- public var SettingsSearch_Synonyms_Stickers_ArchivedPacks: String { return self._s[1449]! }
- public var Conversation_SearchNoResults: String { return self._s[1450]! }
- public var Channel_DiscussionGroup_PrivateChannel: String { return self._s[1451]! }
- public var Map_OpenInWaze: String { return self._s[1452]! }
- public var InviteLink_PeopleJoinedNone: String { return self._s[1453]! }
- public var WallpaperPreview_Title: String { return self._s[1454]! }
+ public var Notifications_DisplayNamesOnLockScreenInfoWithLink: String { return self._s[1426]! }
+ public var Notification_Exceptions_AlwaysOff: String { return self._s[1427]! }
+ public var Conversation_ContextMenuDelete: String { return self._s[1428]! }
+ public var Privacy_Calls_WhoCanCallMe: String { return self._s[1429]! }
+ public var ChatList_PsaAlert_covid: String { return self._s[1432]! }
+ public var VoiceOver_SilentPostOn: String { return self._s[1433]! }
+ public var DialogList_Pin: String { return self._s[1434]! }
+ public var Channel_AdminLog_CanInviteUsersViaLink: String { return self._s[1435]! }
+ public var PrivacySettings_SecurityTitle: String { return self._s[1436]! }
+ public var GroupPermission_NotAvailableInPublicGroups: String { return self._s[1437]! }
+ public var PeopleNearby_Groups: String { return self._s[1438]! }
+ public var Message_File: String { return self._s[1439]! }
+ public var Calls_NoCallsPlaceholder: String { return self._s[1440]! }
+ public var ChatList_GenericPsaLabel: String { return self._s[1443]! }
+ public var UserInfo_LastNamePlaceholder: String { return self._s[1444]! }
+ public var IntentsSettings_Reset: String { return self._s[1446]! }
+ public var Call_ConnectionErrorTitle: String { return self._s[1447]! }
+ public var PhotoEditor_SaturationTool: String { return self._s[1448]! }
+ public var ChatSettings_AutomaticVideoMessageDownload: String { return self._s[1449]! }
+ public var SettingsSearch_Synonyms_Stickers_ArchivedPacks: String { return self._s[1450]! }
+ public var Conversation_SearchNoResults: String { return self._s[1451]! }
+ public var Channel_DiscussionGroup_PrivateChannel: String { return self._s[1452]! }
+ public var Map_OpenInWaze: String { return self._s[1453]! }
+ public var InviteLink_PeopleJoinedNone: String { return self._s[1454]! }
+ public var WallpaperPreview_Title: String { return self._s[1455]! }
public func Passport_AcceptHelp(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1456]!, self._r[1456]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1457]!, self._r[1457]!, [_1, _2])
}
- public var AuthSessions_AddDeviceIntro_Title: String { return self._s[1457]! }
- public var VoiceOver_Chat_RecordModeVideoMessageInfo: String { return self._s[1458]! }
- public var TwoFactorSetup_ResetDone_TextNoPassword: String { return self._s[1459]! }
- public var VoiceOver_Chat_ChannelInfo: String { return self._s[1460]! }
- public var Conversation_ImageCopied: String { return self._s[1461]! }
- public var Passport_Identity_OneOfTypeInternalPassport: String { return self._s[1462]! }
- public var Notifications_PermissionsUnreachableTitle: String { return self._s[1464]! }
- public var Stats_Total: String { return self._s[1467]! }
- public var Stats_GroupMessages: String { return self._s[1468]! }
- public var TwoFactorSetup_Email_SkipAction: String { return self._s[1469]! }
- public var CheckoutInfo_ErrorPhoneInvalid: String { return self._s[1470]! }
- public var VoiceChat_You: String { return self._s[1471]! }
- public var VoiceChat_DisplayAsInfoGroup: String { return self._s[1472]! }
- public var Passport_Identity_Translation: String { return self._s[1473]! }
- public var Notifications_TextTone: String { return self._s[1476]! }
- public var Settings_RemoveConfirmation: String { return self._s[1478]! }
- public var ScheduledMessages_Delete: String { return self._s[1479]! }
- public var Channel_AdminLog_BanEmbedLinks: String { return self._s[1480]! }
- public var Passport_PasswordNext: String { return self._s[1481]! }
+ public var AuthSessions_AddDeviceIntro_Title: String { return self._s[1458]! }
+ public var VoiceOver_Chat_RecordModeVideoMessageInfo: String { return self._s[1459]! }
+ public var TwoFactorSetup_ResetDone_TextNoPassword: String { return self._s[1460]! }
+ public var VoiceOver_Chat_ChannelInfo: String { return self._s[1461]! }
+ public var Conversation_ImageCopied: String { return self._s[1462]! }
+ public var Passport_Identity_OneOfTypeInternalPassport: String { return self._s[1463]! }
+ public var Notifications_PermissionsUnreachableTitle: String { return self._s[1465]! }
+ public var Stats_Total: String { return self._s[1468]! }
+ public var Stats_GroupMessages: String { return self._s[1469]! }
+ public var TwoFactorSetup_Email_SkipAction: String { return self._s[1470]! }
+ public var CheckoutInfo_ErrorPhoneInvalid: String { return self._s[1471]! }
+ public var VoiceChat_You: String { return self._s[1472]! }
+ public var VoiceChat_DisplayAsInfoGroup: String { return self._s[1473]! }
+ public var Passport_Identity_Translation: String { return self._s[1474]! }
+ public var Notifications_TextTone: String { return self._s[1477]! }
+ public var Settings_RemoveConfirmation: String { return self._s[1479]! }
+ public var ScheduledMessages_Delete: String { return self._s[1480]! }
+ public var Channel_AdminLog_BanEmbedLinks: String { return self._s[1481]! }
+ public var Passport_PasswordNext: String { return self._s[1482]! }
public func PUSH_ENCRYPTED_MESSAGE(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1482]!, self._r[1482]!, [_1])
+ return formatWithArgumentRanges(self._s[1483]!, self._r[1483]!, [_1])
}
- public var Passport_Address_EditBankStatement: String { return self._s[1483]! }
- public var PhotoEditor_ShadowsTool: String { return self._s[1484]! }
- public var Notification_VideoCallMissed: String { return self._s[1485]! }
- public var AccessDenied_CameraDisabled: String { return self._s[1487]! }
- public var AuthSessions_AddDevice_ScanInfo: String { return self._s[1488]! }
- public var Notifications_ExceptionsMuted: String { return self._s[1489]! }
- public var VoiceChat_TapToViewScreenVideo: String { return self._s[1490]! }
- public var Conversation_ScheduleMessage_SendWhenOnline: String { return self._s[1491]! }
- public var Channel_BlackList_Title: String { return self._s[1492]! }
- public var PasscodeSettings_4DigitCode: String { return self._s[1493]! }
- public var NotificationsSound_Bamboo: String { return self._s[1494]! }
- public var Conversation_InputMenu: String { return self._s[1495]! }
- public var PrivacySettings_LastSeenContacts: String { return self._s[1496]! }
- public var Passport_Address_TypeUtilityBill: String { return self._s[1497]! }
- public var Passport_Address_CountryPlaceholder: String { return self._s[1498]! }
- public var GroupPermission_SectionTitle: String { return self._s[1499]! }
- public var InviteLink_ContextRevoke: String { return self._s[1500]! }
+ public var Passport_Address_EditBankStatement: String { return self._s[1484]! }
+ public var PhotoEditor_ShadowsTool: String { return self._s[1485]! }
+ public var Notification_VideoCallMissed: String { return self._s[1486]! }
+ public var AccessDenied_CameraDisabled: String { return self._s[1488]! }
+ public var AuthSessions_AddDevice_ScanInfo: String { return self._s[1489]! }
+ public var Notifications_ExceptionsMuted: String { return self._s[1490]! }
+ public var VoiceChat_TapToViewScreenVideo: String { return self._s[1491]! }
+ public var Conversation_ScheduleMessage_SendWhenOnline: String { return self._s[1492]! }
+ public var Channel_BlackList_Title: String { return self._s[1493]! }
+ public var PasscodeSettings_4DigitCode: String { return self._s[1494]! }
+ public var NotificationsSound_Bamboo: String { return self._s[1495]! }
+ public var Conversation_InputMenu: String { return self._s[1496]! }
+ public var PrivacySettings_LastSeenContacts: String { return self._s[1497]! }
+ public var Passport_Address_TypeUtilityBill: String { return self._s[1498]! }
+ public var Passport_Address_CountryPlaceholder: String { return self._s[1499]! }
+ public var GroupPermission_SectionTitle: String { return self._s[1500]! }
+ public var InviteLink_ContextRevoke: String { return self._s[1501]! }
public func Notification_InvitedMultiple(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1501]!, self._r[1501]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[1502]!, self._r[1502]!, [_0, _1])
}
- public var CheckoutInfo_ShippingInfoStatePlaceholder: String { return self._s[1502]! }
- public var Channel_LeaveChannel: String { return self._s[1503]! }
- public var Watch_Notification_Joined: String { return self._s[1504]! }
- public var PeerInfo_ButtonMore: String { return self._s[1505]! }
- public var Passport_FieldEmailHelp: String { return self._s[1506]! }
- public var ChatList_Context_Pin: String { return self._s[1507]! }
+ public var CheckoutInfo_ShippingInfoStatePlaceholder: String { return self._s[1503]! }
+ public var Channel_LeaveChannel: String { return self._s[1504]! }
+ public var Watch_Notification_Joined: String { return self._s[1505]! }
+ public var PeerInfo_ButtonMore: String { return self._s[1506]! }
+ public var Passport_FieldEmailHelp: String { return self._s[1507]! }
+ public var ChatList_Context_Pin: String { return self._s[1508]! }
public func Time_MonthOfYear_m9(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1508]!, self._r[1508]!, [_0])
+ return formatWithArgumentRanges(self._s[1509]!, self._r[1509]!, [_0])
}
- public var Group_Location_CreateInThisPlace: String { return self._s[1509]! }
- public var PhotoEditor_QualityVeryHigh: String { return self._s[1510]! }
- public var Tour_Title5: String { return self._s[1511]! }
+ public var Group_Location_CreateInThisPlace: String { return self._s[1510]! }
+ public var PhotoEditor_QualityVeryHigh: String { return self._s[1511]! }
+ public var Tour_Title5: String { return self._s[1512]! }
public func PUSH_CHAT_MESSAGE_FWD(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1512]!, self._r[1512]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1513]!, self._r[1513]!, [_1, _2])
}
- public var Passport_Language_en: String { return self._s[1513]! }
- public var Checkout_Name: String { return self._s[1514]! }
- public var ChatImport_Title: String { return self._s[1515]! }
+ public var Passport_Language_en: String { return self._s[1514]! }
+ public var Checkout_Name: String { return self._s[1515]! }
+ public var ChatImport_Title: String { return self._s[1516]! }
public func NetworkUsageSettings_WifiUsageSince(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1516]!, self._r[1516]!, [_0])
+ return formatWithArgumentRanges(self._s[1517]!, self._r[1517]!, [_0])
}
- public var PhotoEditor_EnhanceTool: String { return self._s[1517]! }
+ public var PhotoEditor_EnhanceTool: String { return self._s[1518]! }
public func PUSH_CHAT_DELETE_YOU(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1518]!, self._r[1518]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1519]!, self._r[1519]!, [_1, _2])
}
public func VoiceChat_UserCanNowSpeak(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1519]!, self._r[1519]!, [_0])
+ return formatWithArgumentRanges(self._s[1520]!, self._r[1520]!, [_0])
}
- public var PeerInfo_CustomizeNotifications: String { return self._s[1520]! }
+ public var PeerInfo_CustomizeNotifications: String { return self._s[1521]! }
public func Login_TermsOfService_ProceedBot(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1521]!, self._r[1521]!, [_0])
+ return formatWithArgumentRanges(self._s[1522]!, self._r[1522]!, [_0])
}
- public var Group_ErrorSendRestrictedMedia: String { return self._s[1522]! }
+ public var Group_ErrorSendRestrictedMedia: String { return self._s[1523]! }
public func UserInfo_NotificationsDefaultSound(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1523]!, self._r[1523]!, [_0])
+ return formatWithArgumentRanges(self._s[1524]!, self._r[1524]!, [_0])
}
- public var Login_UnknownError: String { return self._s[1524]! }
- public var Conversation_ImportedMessageHint: String { return self._s[1526]! }
+ public var Login_UnknownError: String { return self._s[1525]! }
+ public var Conversation_ImportedMessageHint: String { return self._s[1527]! }
public func VoiceChat_ForwardTooltip_Chat(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1527]!, self._r[1527]!, [_0])
+ return formatWithArgumentRanges(self._s[1528]!, self._r[1528]!, [_0])
}
- public var Passport_Identity_TypeDriversLicense: String { return self._s[1529]! }
- public var ChatList_AutoarchiveSuggestion_Title: String { return self._s[1530]! }
- public var Watch_PhotoView_Title: String { return self._s[1531]! }
- public var Appearance_ThemePreview_ChatList_3_Text: String { return self._s[1532]! }
- public var Checkout_TotalAmount: String { return self._s[1533]! }
- public var ChatList_RemoveFolderAction: String { return self._s[1534]! }
+ public var Passport_Identity_TypeDriversLicense: String { return self._s[1530]! }
+ public var ChatList_AutoarchiveSuggestion_Title: String { return self._s[1531]! }
+ public var Watch_PhotoView_Title: String { return self._s[1532]! }
+ public var Appearance_ThemePreview_ChatList_3_Text: String { return self._s[1533]! }
+ public var Checkout_TotalAmount: String { return self._s[1534]! }
+ public var ChatList_RemoveFolderAction: String { return self._s[1535]! }
public func GroupInfo_Permissions_BroadcastConvertInfo(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1535]!, self._r[1535]!, [_0])
+ return formatWithArgumentRanges(self._s[1536]!, self._r[1536]!, [_0])
}
- public var GroupInfo_SetGroupPhoto: String { return self._s[1536]! }
- public var Watch_AppName: String { return self._s[1537]! }
+ public var GroupInfo_SetGroupPhoto: String { return self._s[1537]! }
+ public var Watch_AppName: String { return self._s[1538]! }
public func PUSH_PINNED_GAME_SCORE(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1538]!, self._r[1538]!, [_1])
+ return formatWithArgumentRanges(self._s[1539]!, self._r[1539]!, [_1])
}
- public var Channel_Username_CheckingUsername: String { return self._s[1539]! }
- public var ContactList_Context_Call: String { return self._s[1540]! }
- public var ChatList_ReorderTabs: String { return self._s[1541]! }
- public var Watch_ChatList_Compose: String { return self._s[1542]! }
+ public var Channel_Username_CheckingUsername: String { return self._s[1540]! }
+ public var ContactList_Context_Call: String { return self._s[1541]! }
+ public var ChatList_ReorderTabs: String { return self._s[1542]! }
+ public var Watch_ChatList_Compose: String { return self._s[1543]! }
public func Conversation_LiveLocationYouAnd(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1543]!, self._r[1543]!, [_0])
+ return formatWithArgumentRanges(self._s[1544]!, self._r[1544]!, [_0])
}
- public var Channel_AdminLog_EmptyFilterTitle: String { return self._s[1544]! }
- public var ArchivedChats_IntroTitle1: String { return self._s[1545]! }
+ public var Channel_AdminLog_EmptyFilterTitle: String { return self._s[1545]! }
+ public var ArchivedChats_IntroTitle1: String { return self._s[1546]! }
public func PUSH_ENCRYPTION_ACCEPT(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1546]!, self._r[1546]!, [_1])
+ return formatWithArgumentRanges(self._s[1547]!, self._r[1547]!, [_1])
}
- public var Call_StatusRequesting: String { return self._s[1548]! }
- public var Checkout_TotalPaidAmount: String { return self._s[1549]! }
- public var Weekday_Friday: String { return self._s[1551]! }
- public var CreateGroup_ChannelsTooMuch: String { return self._s[1552]! }
+ public var Call_StatusRequesting: String { return self._s[1549]! }
+ public var Checkout_TotalPaidAmount: String { return self._s[1550]! }
+ public var Weekday_Friday: String { return self._s[1552]! }
+ public var CreateGroup_ChannelsTooMuch: String { return self._s[1553]! }
public func ChatImport_SelectionConfirmationUserWithoutTitle(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1553]!, self._r[1553]!, [_0])
+ return formatWithArgumentRanges(self._s[1554]!, self._r[1554]!, [_0])
}
- public var Watch_ChatList_NoConversationsText: String { return self._s[1554]! }
- public var Group_Members_AddMembersHelp: String { return self._s[1555]! }
+ public var Watch_ChatList_NoConversationsText: String { return self._s[1555]! }
+ public var Group_Members_AddMembersHelp: String { return self._s[1556]! }
public func Channel_AdminLog_MessageChangedGroupStickerPack(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1556]!, self._r[1556]!, [_0])
+ return formatWithArgumentRanges(self._s[1557]!, self._r[1557]!, [_0])
}
- public var SecretVideo_Title: String { return self._s[1557]! }
+ public var SecretVideo_Title: String { return self._s[1558]! }
public func Notification_PinnedStickerMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1560]!, self._r[1560]!, [_0])
+ return formatWithArgumentRanges(self._s[1561]!, self._r[1561]!, [_0])
}
- public var Undo_Undo: String { return self._s[1561]! }
- public var Watch_Microphone_Access: String { return self._s[1562]! }
+ public var Undo_Undo: String { return self._s[1562]! }
+ public var Watch_Microphone_Access: String { return self._s[1563]! }
public func ChatImport_SelectionConfirmationGroupWithTitle(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1563]!, self._r[1563]!, [_1, _2])
- }
- public func PUSH_CHAT_MESSAGE_PHOTO(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[1564]!, self._r[1564]!, [_1, _2])
}
- public func ChatList_Search_NoResultsQueryDescription(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1565]!, self._r[1565]!, [_0])
+ public func PUSH_CHAT_MESSAGE_PHOTO(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[1565]!, self._r[1565]!, [_1, _2])
}
- public var Checkout_NewCard_PostcodeTitle: String { return self._s[1567]! }
- public var TwoFactorSetup_Intro_Action: String { return self._s[1568]! }
- public var Passport_Language_ne: String { return self._s[1569]! }
- public var TwoStepAuth_EmailHelp: String { return self._s[1571]! }
- public var Profile_MessageLifetime2s: String { return self._s[1572]! }
+ public func ChatList_Search_NoResultsQueryDescription(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[1566]!, self._r[1566]!, [_0])
+ }
+ public var Checkout_NewCard_PostcodeTitle: String { return self._s[1568]! }
+ public var TwoFactorSetup_Intro_Action: String { return self._s[1569]! }
+ public var Passport_Language_ne: String { return self._s[1570]! }
+ public var TwoStepAuth_EmailHelp: String { return self._s[1572]! }
+ public var Profile_MessageLifetime2s: String { return self._s[1573]! }
public func Conversation_MessageDialogRetryAll(_ _1: Int) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1574]!, self._r[1574]!, ["\(_1)"])
+ return formatWithArgumentRanges(self._s[1575]!, self._r[1575]!, ["\(_1)"])
}
public func Items_NOfM(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1575]!, self._r[1575]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1576]!, self._r[1576]!, [_1, _2])
}
- public var VoiceChat_SendPublicLinkSend: String { return self._s[1576]! }
- public var Media_LimitedAccessText: String { return self._s[1577]! }
+ public var VoiceChat_SendPublicLinkSend: String { return self._s[1577]! }
+ public var Media_LimitedAccessText: String { return self._s[1578]! }
public func PUSH_CHAT_TITLE_EDITED(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1578]!, self._r[1578]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1579]!, self._r[1579]!, [_1, _2])
}
- public var GroupPermission_NoPinMessages: String { return self._s[1579]! }
+ public var GroupPermission_NoPinMessages: String { return self._s[1580]! }
public func Notification_VoiceChatStarted(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1580]!, self._r[1580]!, [_1])
+ return formatWithArgumentRanges(self._s[1581]!, self._r[1581]!, [_1])
}
public func Notification_CreatedChat(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1581]!, self._r[1581]!, [_0])
+ return formatWithArgumentRanges(self._s[1582]!, self._r[1582]!, [_0])
}
- public var FastTwoStepSetup_HintHelp: String { return self._s[1582]! }
- public var VoiceOver_SilentPostOff: String { return self._s[1583]! }
- public var WallpaperSearch_ColorRed: String { return self._s[1584]! }
- public var Watch_ConnectionDescription: String { return self._s[1585]! }
- public var Notification_Exceptions_AddException: String { return self._s[1586]! }
- public var LocalGroup_IrrelevantWarning: String { return self._s[1587]! }
- public var VoiceOver_MessageContextDelete: String { return self._s[1588]! }
- public var LogoutOptions_AlternativeOptionsSection: String { return self._s[1589]! }
- public var Passport_PasswordPlaceholder: String { return self._s[1590]! }
- public var TwoStepAuth_RecoveryEmailAddDescription: String { return self._s[1591]! }
- public var Stats_MessageInteractionsTitle: String { return self._s[1592]! }
- public var Appearance_ThemeCarouselClassic: String { return self._s[1593]! }
- public var TwoFactorSetup_Email_SkipConfirmationText: String { return self._s[1595]! }
- public var Channel_AdminLog_PinMessages: String { return self._s[1596]! }
- public var Passport_Address_AddRentalAgreement: String { return self._s[1598]! }
- public var Watch_Message_Game: String { return self._s[1599]! }
- public var PrivacyLastSeenSettings_NeverShareWith: String { return self._s[1600]! }
- public var PrivacyPolicy_DeclineLastWarning: String { return self._s[1601]! }
- public var EditTheme_FileReadError: String { return self._s[1602]! }
- public var Group_ErrorAddBlocked: String { return self._s[1603]! }
- public var CallSettings_UseLessDataLongDescription: String { return self._s[1604]! }
+ public var FastTwoStepSetup_HintHelp: String { return self._s[1583]! }
+ public var VoiceOver_SilentPostOff: String { return self._s[1584]! }
+ public var WallpaperSearch_ColorRed: String { return self._s[1585]! }
+ public var Watch_ConnectionDescription: String { return self._s[1586]! }
+ public var Notification_Exceptions_AddException: String { return self._s[1587]! }
+ public var LocalGroup_IrrelevantWarning: String { return self._s[1588]! }
+ public var VoiceOver_MessageContextDelete: String { return self._s[1589]! }
+ public var LogoutOptions_AlternativeOptionsSection: String { return self._s[1590]! }
+ public var Passport_PasswordPlaceholder: String { return self._s[1591]! }
+ public var TwoStepAuth_RecoveryEmailAddDescription: String { return self._s[1592]! }
+ public var Stats_MessageInteractionsTitle: String { return self._s[1593]! }
+ public var Appearance_ThemeCarouselClassic: String { return self._s[1594]! }
+ public var TwoFactorSetup_Email_SkipConfirmationText: String { return self._s[1596]! }
+ public var Channel_AdminLog_PinMessages: String { return self._s[1597]! }
+ public var Passport_Address_AddRentalAgreement: String { return self._s[1599]! }
+ public var Watch_Message_Game: String { return self._s[1600]! }
+ public var PrivacyLastSeenSettings_NeverShareWith: String { return self._s[1601]! }
+ public var PrivacyPolicy_DeclineLastWarning: String { return self._s[1602]! }
+ public var EditTheme_FileReadError: String { return self._s[1603]! }
+ public var Group_ErrorAddBlocked: String { return self._s[1604]! }
+ public var CallSettings_UseLessDataLongDescription: String { return self._s[1605]! }
public func PUSH_MESSAGE_PHOTO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1606]!, self._r[1606]!, [_1])
+ return formatWithArgumentRanges(self._s[1607]!, self._r[1607]!, [_1])
}
- public var GroupRemoved_ViewChannelInfo: String { return self._s[1607]! }
+ public var GroupRemoved_ViewChannelInfo: String { return self._s[1608]! }
public func UserInfo_BlockConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1608]!, self._r[1608]!, [_0])
+ return formatWithArgumentRanges(self._s[1609]!, self._r[1609]!, [_0])
}
- public var CheckoutInfo_ShippingInfoAddress2Placeholder: String { return self._s[1609]! }
- public var TwoFactorSetup_EmailVerification_Action: String { return self._s[1610]! }
+ public var CheckoutInfo_ShippingInfoAddress2Placeholder: String { return self._s[1610]! }
+ public var TwoFactorSetup_EmailVerification_Action: String { return self._s[1611]! }
public func Username_LinkHint(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1611]!, self._r[1611]!, [_0])
+ return formatWithArgumentRanges(self._s[1612]!, self._r[1612]!, [_0])
}
- public var ConversationProfile_ErrorCreatingConversation: String { return self._s[1612]! }
- public var Bot_GroupStatusReadsHistory: String { return self._s[1613]! }
- public var PhotoEditor_CurvesRed: String { return self._s[1614]! }
- public var InstantPage_TapToOpenLink: String { return self._s[1615]! }
- public var InviteLink_PeopleJoinedShortNoneExpired: String { return self._s[1616]! }
- public var FastTwoStepSetup_PasswordHelp: String { return self._s[1617]! }
- public var Conversation_DiscussionNotStarted: String { return self._s[1618]! }
- public var Notification_CallMissedShort: String { return self._s[1619]! }
+ public var ConversationProfile_ErrorCreatingConversation: String { return self._s[1613]! }
+ public var Bot_GroupStatusReadsHistory: String { return self._s[1614]! }
+ public var PhotoEditor_CurvesRed: String { return self._s[1615]! }
+ public var InstantPage_TapToOpenLink: String { return self._s[1616]! }
+ public var InviteLink_PeopleJoinedShortNoneExpired: String { return self._s[1617]! }
+ public var FastTwoStepSetup_PasswordHelp: String { return self._s[1618]! }
+ public var Conversation_DiscussionNotStarted: String { return self._s[1619]! }
+ public var Notification_CallMissedShort: String { return self._s[1620]! }
public func Notification_JoinedGroupByLink(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1620]!, self._r[1620]!, [_0])
+ return formatWithArgumentRanges(self._s[1621]!, self._r[1621]!, [_0])
}
- public var Conversation_DeleteMessagesForEveryone: String { return self._s[1621]! }
- public var VoiceChat_UnpinVideo: String { return self._s[1622]! }
- public var Permissions_SiriTitle_v0: String { return self._s[1623]! }
- public var GroupInfo_AddUserLeftError: String { return self._s[1624]! }
- public var Conversation_SendMessage_SendSilently: String { return self._s[1625]! }
- public var Paint_Duplicate: String { return self._s[1626]! }
- public var AttachmentMenu_WebSearch: String { return self._s[1627]! }
- public var Bot_Stop: String { return self._s[1629]! }
- public var Conversation_PrivateChannelTimeLimitedAlertTitle: String { return self._s[1630]! }
- public var ReportGroupLocation_Report: String { return self._s[1631]! }
- public var Compose_Create: String { return self._s[1632]! }
- public var Stats_GroupViewers: String { return self._s[1633]! }
- public var AutoDownloadSettings_Channels: String { return self._s[1634]! }
- public var PhotoEditor_QualityHigh: String { return self._s[1635]! }
- public var VoiceChat_Leave: String { return self._s[1636]! }
- public var Call_Speaker: String { return self._s[1637]! }
+ public var Conversation_DeleteMessagesForEveryone: String { return self._s[1622]! }
+ public var VoiceChat_UnpinVideo: String { return self._s[1623]! }
+ public var Permissions_SiriTitle_v0: String { return self._s[1624]! }
+ public var GroupInfo_AddUserLeftError: String { return self._s[1625]! }
+ public var Conversation_SendMessage_SendSilently: String { return self._s[1626]! }
+ public var Paint_Duplicate: String { return self._s[1627]! }
+ public var AttachmentMenu_WebSearch: String { return self._s[1628]! }
+ public var Bot_Stop: String { return self._s[1630]! }
+ public var Conversation_PrivateChannelTimeLimitedAlertTitle: String { return self._s[1631]! }
+ public var ReportGroupLocation_Report: String { return self._s[1632]! }
+ public var Compose_Create: String { return self._s[1633]! }
+ public var Stats_GroupViewers: String { return self._s[1634]! }
+ public var AutoDownloadSettings_Channels: String { return self._s[1635]! }
+ public var PhotoEditor_QualityHigh: String { return self._s[1636]! }
+ public var VoiceChat_Leave: String { return self._s[1637]! }
+ public var Call_Speaker: String { return self._s[1638]! }
public func ChatList_LeaveGroupConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1638]!, self._r[1638]!, [_0])
+ return formatWithArgumentRanges(self._s[1639]!, self._r[1639]!, [_0])
}
- public var Conversation_CloudStorage_ChatStatus: String { return self._s[1639]! }
- public var Chat_AttachmentMultipleFilesDisabled: String { return self._s[1640]! }
- public var ChatList_Context_AddToFolder: String { return self._s[1641]! }
- public var InviteLink_QRCode_Info: String { return self._s[1642]! }
- public var AutoremoveSetup_Title: String { return self._s[1643]! }
- public var ChatList_DeleteForAllMembersConfirmationText: String { return self._s[1644]! }
- public var Conversation_Unblock: String { return self._s[1645]! }
- public var SettingsSearch_Synonyms_Proxy_UseForCalls: String { return self._s[1646]! }
+ public var Conversation_CloudStorage_ChatStatus: String { return self._s[1640]! }
+ public var Chat_AttachmentMultipleFilesDisabled: String { return self._s[1641]! }
+ public var ChatList_Context_AddToFolder: String { return self._s[1642]! }
+ public var InviteLink_QRCode_Info: String { return self._s[1643]! }
+ public var AutoremoveSetup_Title: String { return self._s[1644]! }
+ public var ChatList_DeleteForAllMembersConfirmationText: String { return self._s[1645]! }
+ public var Conversation_Unblock: String { return self._s[1646]! }
+ public var SettingsSearch_Synonyms_Proxy_UseForCalls: String { return self._s[1647]! }
public func Time_PreciseDate_m8(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1647]!, self._r[1647]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[1648]!, self._r[1648]!, [_1, _2, _3])
}
- public var Conversation_ContextMenuReply: String { return self._s[1648]! }
- public var Contacts_SearchLabel: String { return self._s[1649]! }
- public var Forward_ErrorPublicQuizDisabledInChannels: String { return self._s[1650]! }
- public var Stats_GroupMessagesTitle: String { return self._s[1652]! }
- public var VoiceChat_NoiseSuppression: String { return self._s[1653]! }
- public var Notification_CallCanceled: String { return self._s[1654]! }
- public var VoiceOver_Chat_Selected: String { return self._s[1655]! }
- public var NotificationsSound_Tremolo: String { return self._s[1657]! }
- public var VoiceOver_AuthSessions_CurrentSession: String { return self._s[1658]! }
- public var ChatList_Search_NoResultsDescription: String { return self._s[1659]! }
- public var AccessDenied_PhotosAndVideos: String { return self._s[1660]! }
- public var LogoutOptions_ClearCacheText: String { return self._s[1661]! }
+ public var Conversation_ContextMenuReply: String { return self._s[1649]! }
+ public var Contacts_SearchLabel: String { return self._s[1650]! }
+ public var Forward_ErrorPublicQuizDisabledInChannels: String { return self._s[1651]! }
+ public var Stats_GroupMessagesTitle: String { return self._s[1653]! }
+ public var VoiceChat_NoiseSuppression: String { return self._s[1654]! }
+ public var Notification_CallCanceled: String { return self._s[1655]! }
+ public var VoiceOver_Chat_Selected: String { return self._s[1656]! }
+ public var NotificationsSound_Tremolo: String { return self._s[1658]! }
+ public var VoiceOver_AuthSessions_CurrentSession: String { return self._s[1659]! }
+ public var ChatList_Search_NoResultsDescription: String { return self._s[1660]! }
+ public var AccessDenied_PhotosAndVideos: String { return self._s[1661]! }
+ public var LogoutOptions_ClearCacheText: String { return self._s[1662]! }
public func VoiceChat_DisplayAsSuccess(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1663]!, self._r[1663]!, [_0])
+ return formatWithArgumentRanges(self._s[1664]!, self._r[1664]!, [_0])
}
- public var VoiceOver_Chat_Sticker: String { return self._s[1664]! }
- public var ChatListFolder_NameUnread: String { return self._s[1665]! }
- public var PeerInfo_ButtonMessage: String { return self._s[1667]! }
- public var InfoPlist_NSPhotoLibraryAddUsageDescription: String { return self._s[1668]! }
- public var Settings_KeepPassword: String { return self._s[1669]! }
- public var BlockedUsers_SelectUserTitle: String { return self._s[1670]! }
- public var ChatSettings_Other: String { return self._s[1671]! }
- public var UserInfo_NotificationsEnabled: String { return self._s[1672]! }
- public var CreatePoll_OptionsHeader: String { return self._s[1673]! }
- public var Appearance_RemoveThemeColorConfirmation: String { return self._s[1676]! }
- public var Channel_Moderator_Title: String { return self._s[1677]! }
+ public var VoiceOver_Chat_Sticker: String { return self._s[1665]! }
+ public var ChatListFolder_NameUnread: String { return self._s[1666]! }
+ public var PeerInfo_ButtonMessage: String { return self._s[1668]! }
+ public var InfoPlist_NSPhotoLibraryAddUsageDescription: String { return self._s[1669]! }
+ public var Settings_KeepPassword: String { return self._s[1670]! }
+ public var BlockedUsers_SelectUserTitle: String { return self._s[1671]! }
+ public var ChatSettings_Other: String { return self._s[1672]! }
+ public var UserInfo_NotificationsEnabled: String { return self._s[1673]! }
+ public var CreatePoll_OptionsHeader: String { return self._s[1674]! }
+ public var Appearance_RemoveThemeColorConfirmation: String { return self._s[1677]! }
+ public var Channel_Moderator_Title: String { return self._s[1678]! }
public func Conversation_ForwardTooltip_Chat_Many(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1678]!, self._r[1678]!, [_0])
+ return formatWithArgumentRanges(self._s[1679]!, self._r[1679]!, [_0])
}
public func UserInfo_ContactForwardTooltip_ManyChats_One(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1679]!, self._r[1679]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[1680]!, self._r[1680]!, [_0, _1])
}
- public var Channel_AdminLog_MessageRestrictedForever: String { return self._s[1680]! }
- public var WallpaperColors_Title: String { return self._s[1681]! }
- public var InviteLink_InviteLink: String { return self._s[1683]! }
- public var PrivacyPolicy_DeclineMessage: String { return self._s[1684]! }
- public var AutoDownloadSettings_VoiceMessagesTitle: String { return self._s[1685]! }
- public var Your_card_was_declined: String { return self._s[1686]! }
- public var SettingsSearch_FAQ: String { return self._s[1688]! }
- public var EditTheme_Expand_Preview_IncomingReplyName: String { return self._s[1689]! }
- public var Conversation_ReportSpamConfirmation: String { return self._s[1690]! }
- public var OwnershipTransfer_SecurityCheck: String { return self._s[1692]! }
- public var PrivacySettings_DataSettingsHelp: String { return self._s[1693]! }
- public var Settings_About_Help: String { return self._s[1694]! }
+ public var Channel_AdminLog_MessageRestrictedForever: String { return self._s[1681]! }
+ public var WallpaperColors_Title: String { return self._s[1682]! }
+ public var InviteLink_InviteLink: String { return self._s[1684]! }
+ public var PrivacyPolicy_DeclineMessage: String { return self._s[1685]! }
+ public var AutoDownloadSettings_VoiceMessagesTitle: String { return self._s[1686]! }
+ public var Your_card_was_declined: String { return self._s[1687]! }
+ public var SettingsSearch_FAQ: String { return self._s[1689]! }
+ public var EditTheme_Expand_Preview_IncomingReplyName: String { return self._s[1690]! }
+ public var Conversation_ReportSpamConfirmation: String { return self._s[1691]! }
+ public var OwnershipTransfer_SecurityCheck: String { return self._s[1693]! }
+ public var PrivacySettings_DataSettingsHelp: String { return self._s[1694]! }
+ public var Settings_About_Help: String { return self._s[1695]! }
public func Channel_DiscussionGroup_HeaderGroupSet(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1695]!, self._r[1695]!, [_0])
+ return formatWithArgumentRanges(self._s[1696]!, self._r[1696]!, [_0])
}
- public var Settings_Proxy: String { return self._s[1696]! }
- public var TwoStepAuth_ResetAccountConfirmation: String { return self._s[1697]! }
- public var Passport_Identity_TypePassportUploadScan: String { return self._s[1699]! }
- public var NotificationsSound_Bell: String { return self._s[1700]! }
- public var PrivacySettings_Title: String { return self._s[1702]! }
- public var PrivacySettings_DataSettings: String { return self._s[1703]! }
- public var ConversationMedia_Title: String { return self._s[1704]! }
+ public var Settings_Proxy: String { return self._s[1697]! }
+ public var TwoStepAuth_ResetAccountConfirmation: String { return self._s[1698]! }
+ public var Passport_Identity_TypePassportUploadScan: String { return self._s[1700]! }
+ public var NotificationsSound_Bell: String { return self._s[1701]! }
+ public var PrivacySettings_Title: String { return self._s[1703]! }
+ public var PrivacySettings_DataSettings: String { return self._s[1704]! }
+ public var ConversationMedia_Title: String { return self._s[1705]! }
public func Channel_AdminLog_MessageAddedAdminName(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1705]!, self._r[1705]!, [_1])
+ return formatWithArgumentRanges(self._s[1706]!, self._r[1706]!, [_1])
}
public func Conversation_EncryptedPlaceholderTitleIncoming(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1706]!, self._r[1706]!, [_0])
+ return formatWithArgumentRanges(self._s[1707]!, self._r[1707]!, [_0])
}
- public var PrivacySettings_BlockedPeersEmpty: String { return self._s[1707]! }
- public var ReportPeer_ReasonPornography: String { return self._s[1709]! }
- public var Privacy_Calls: String { return self._s[1711]! }
- public var TwoFactorSetup_Email_Text: String { return self._s[1712]! }
- public var Conversation_EncryptedDescriptionTitle: String { return self._s[1713]! }
+ public var PrivacySettings_BlockedPeersEmpty: String { return self._s[1708]! }
+ public var ReportPeer_ReasonPornography: String { return self._s[1710]! }
+ public var Privacy_Calls: String { return self._s[1712]! }
+ public var TwoFactorSetup_Email_Text: String { return self._s[1713]! }
+ public var Conversation_EncryptedDescriptionTitle: String { return self._s[1714]! }
public func VoiceOver_Chat_MusicTitle(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1714]!, self._r[1714]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1715]!, self._r[1715]!, [_1, _2])
}
- public var Passport_Identity_FrontSideHelp: String { return self._s[1715]! }
- public var InstantPage_VoiceOver_DecreaseFontSize: String { return self._s[1716]! }
- public var GroupInfo_Permissions_SlowmodeHeader: String { return self._s[1718]! }
- public var ContactList_Context_VideoCall: String { return self._s[1719]! }
- public var Settings_SaveIncomingPhotos: String { return self._s[1720]! }
- public var Passport_Identity_MiddleName: String { return self._s[1721]! }
- public var MessagePoll_QuizNoUsers: String { return self._s[1722]! }
+ public var Passport_Identity_FrontSideHelp: String { return self._s[1716]! }
+ public var InstantPage_VoiceOver_DecreaseFontSize: String { return self._s[1717]! }
+ public var GroupInfo_Permissions_SlowmodeHeader: String { return self._s[1719]! }
+ public var ContactList_Context_VideoCall: String { return self._s[1720]! }
+ public var Settings_SaveIncomingPhotos: String { return self._s[1721]! }
+ public var Passport_Identity_MiddleName: String { return self._s[1722]! }
+ public var MessagePoll_QuizNoUsers: String { return self._s[1723]! }
public func Channel_AdminLog_MutedParticipant(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1723]!, self._r[1723]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1724]!, self._r[1724]!, [_1, _2])
}
- public var OldChannels_ChannelFormat: String { return self._s[1724]! }
- public var Watch_Message_Call: String { return self._s[1725]! }
- public var VoiceChat_OpenChannel: String { return self._s[1726]! }
- public var Wallpaper_Title: String { return self._s[1727]! }
- public var PasscodeSettings_TurnPasscodeOff: String { return self._s[1728]! }
- public var IntentsSettings_SuggestedChatsSavedMessages: String { return self._s[1729]! }
- public var ReportGroupLocation_Text: String { return self._s[1730]! }
- public var InviteText_URL: String { return self._s[1731]! }
- public var ClearCache_StorageServiceFiles: String { return self._s[1732]! }
- public var MessageTimer_Custom: String { return self._s[1733]! }
- public var Message_PinnedLocationMessage: String { return self._s[1734]! }
+ public var OldChannels_ChannelFormat: String { return self._s[1725]! }
+ public var Watch_Message_Call: String { return self._s[1726]! }
+ public var VoiceChat_OpenChannel: String { return self._s[1727]! }
+ public var Wallpaper_Title: String { return self._s[1728]! }
+ public var PasscodeSettings_TurnPasscodeOff: String { return self._s[1729]! }
+ public var IntentsSettings_SuggestedChatsSavedMessages: String { return self._s[1730]! }
+ public var ReportGroupLocation_Text: String { return self._s[1731]! }
+ public var InviteText_URL: String { return self._s[1732]! }
+ public var ClearCache_StorageServiceFiles: String { return self._s[1733]! }
+ public var MessageTimer_Custom: String { return self._s[1734]! }
+ public var Message_PinnedLocationMessage: String { return self._s[1735]! }
public func VoiceOver_Chat_ContactOrganization(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1735]!, self._r[1735]!, [_0])
+ return formatWithArgumentRanges(self._s[1736]!, self._r[1736]!, [_0])
}
- public var EditTheme_UploadNewTheme: String { return self._s[1736]! }
- public var TwoFactorRemember_CheckPassword: String { return self._s[1739]! }
- public var ChatImportActivity_ErrorLimitExceeded: String { return self._s[1740]! }
+ public var EditTheme_UploadNewTheme: String { return self._s[1737]! }
+ public var TwoFactorRemember_CheckPassword: String { return self._s[1740]! }
+ public var ChatImportActivity_ErrorLimitExceeded: String { return self._s[1741]! }
public func AutoDownloadSettings_UpToForAll(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1741]!, self._r[1741]!, [_0])
+ return formatWithArgumentRanges(self._s[1742]!, self._r[1742]!, [_0])
}
- public var Login_CodeSentCall: String { return self._s[1743]! }
+ public var Login_CodeSentCall: String { return self._s[1744]! }
public func Conversation_AutoremoveTimerSetUser(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1744]!, self._r[1744]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1745]!, self._r[1745]!, [_1, _2])
}
- public var Conversation_Report: String { return self._s[1745]! }
- public var NotificationSettings_ContactJoined: String { return self._s[1746]! }
+ public var Conversation_Report: String { return self._s[1746]! }
+ public var NotificationSettings_ContactJoined: String { return self._s[1747]! }
public func PUSH_MESSAGE_SCREENSHOT(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1747]!, self._r[1747]!, [_1])
+ return formatWithArgumentRanges(self._s[1748]!, self._r[1748]!, [_1])
}
- public var StickerPacksSettings_ShowStickersButtonHelp: String { return self._s[1748]! }
- public var BroadcastGroups_IntroText: String { return self._s[1749]! }
- public var IntentsSettings_SuggestByAll: String { return self._s[1751]! }
- public var StickerPacksSettings_ShowStickersButton: String { return self._s[1752]! }
- public var AuthSessions_Title: String { return self._s[1753]! }
+ public var StickerPacksSettings_ShowStickersButtonHelp: String { return self._s[1749]! }
+ public var BroadcastGroups_IntroText: String { return self._s[1750]! }
+ public var IntentsSettings_SuggestByAll: String { return self._s[1752]! }
+ public var StickerPacksSettings_ShowStickersButton: String { return self._s[1753]! }
+ public var AuthSessions_Title: String { return self._s[1754]! }
public func Notification_VoiceChatEnded(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1754]!, self._r[1754]!, [_0])
+ return formatWithArgumentRanges(self._s[1755]!, self._r[1755]!, [_0])
}
- public var Settings_Tips: String { return self._s[1755]! }
- public var Channel_AdminLog_TitleAllEvents: String { return self._s[1756]! }
- public var WallpaperPreview_WallpaperColors: String { return self._s[1757]! }
- public var KeyCommand_JumpToNextUnreadChat: String { return self._s[1758]! }
- public var VoiceChat_YouCanNowSpeak: String { return self._s[1761]! }
- public var Passport_Address_AddPassportRegistration: String { return self._s[1763]! }
+ public var Settings_Tips: String { return self._s[1756]! }
+ public var Channel_AdminLog_TitleAllEvents: String { return self._s[1757]! }
+ public var WallpaperPreview_WallpaperColors: String { return self._s[1758]! }
+ public var KeyCommand_JumpToNextUnreadChat: String { return self._s[1759]! }
+ public var VoiceChat_YouCanNowSpeak: String { return self._s[1762]! }
+ public var Passport_Address_AddPassportRegistration: String { return self._s[1764]! }
public func UserInfo_LinkForwardTooltip_ManyChats_One(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1764]!, self._r[1764]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[1765]!, self._r[1765]!, [_0, _1])
}
- public var AutoDownloadSettings_MaxVideoSize: String { return self._s[1765]! }
- public var ExplicitContent_AlertTitle: String { return self._s[1766]! }
- public var Channel_UpdatePhotoItem: String { return self._s[1768]! }
- public var ChatList_AutoarchiveSuggestion_Text: String { return self._s[1770]! }
- public var Channel_DiscussionGroup_LinkGroup: String { return self._s[1771]! }
+ public var AutoDownloadSettings_MaxVideoSize: String { return self._s[1766]! }
+ public var ExplicitContent_AlertTitle: String { return self._s[1767]! }
+ public var Channel_UpdatePhotoItem: String { return self._s[1769]! }
+ public var ChatList_AutoarchiveSuggestion_Text: String { return self._s[1771]! }
+ public var Channel_DiscussionGroup_LinkGroup: String { return self._s[1772]! }
public func Call_BatteryLow(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1772]!, self._r[1772]!, [_0])
+ return formatWithArgumentRanges(self._s[1773]!, self._r[1773]!, [_0])
}
- public var Login_HaveNotReceivedCodeInternal: String { return self._s[1773]! }
- public var WallpaperPreview_PatternPaternApply: String { return self._s[1774]! }
- public var Notifications_MessageNotificationsSound: String { return self._s[1775]! }
- public var CommentsGroup_ErrorAccessDenied: String { return self._s[1776]! }
- public var Appearance_AccentColor: String { return self._s[1778]! }
- public var GroupInfo_SharedMedia: String { return self._s[1779]! }
- public var Login_PhonePlaceholder: String { return self._s[1780]! }
- public var Appearance_TextSize_Automatic: String { return self._s[1781]! }
- public var EmptyGroupInfo_Line2: String { return self._s[1782]! }
+ public var Login_HaveNotReceivedCodeInternal: String { return self._s[1774]! }
+ public var WallpaperPreview_PatternPaternApply: String { return self._s[1775]! }
+ public var Notifications_MessageNotificationsSound: String { return self._s[1776]! }
+ public var CommentsGroup_ErrorAccessDenied: String { return self._s[1777]! }
+ public var Appearance_AccentColor: String { return self._s[1779]! }
+ public var GroupInfo_SharedMedia: String { return self._s[1780]! }
+ public var Login_PhonePlaceholder: String { return self._s[1781]! }
+ public var Appearance_TextSize_Automatic: String { return self._s[1782]! }
+ public var EmptyGroupInfo_Line2: String { return self._s[1783]! }
public func PUSH_CHAT_CREATED(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1783]!, self._r[1783]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1784]!, self._r[1784]!, [_1, _2])
}
- public var VoiceChat_TapToAddPhotoOrBio: String { return self._s[1784]! }
- public var Conversation_ClearChannel: String { return self._s[1785]! }
- public var Conversation_MessageDoesntExist: String { return self._s[1786]! }
- public var Appearance_AppIconDefaultX: String { return self._s[1788]! }
- public var EditProfile_NameAndPhotoOrVideoHelp: String { return self._s[1789]! }
- public var CheckoutInfo_ShippingInfoPostcodePlaceholder: String { return self._s[1790]! }
- public var Notifications_GroupNotificationsHelp: String { return self._s[1791]! }
+ public var VoiceChat_TapToAddPhotoOrBio: String { return self._s[1785]! }
+ public var Conversation_ClearChannel: String { return self._s[1786]! }
+ public var Conversation_MessageDoesntExist: String { return self._s[1787]! }
+ public var Appearance_AppIconDefaultX: String { return self._s[1789]! }
+ public var EditProfile_NameAndPhotoOrVideoHelp: String { return self._s[1790]! }
+ public var CheckoutInfo_ShippingInfoPostcodePlaceholder: String { return self._s[1791]! }
+ public var Notifications_GroupNotificationsHelp: String { return self._s[1792]! }
public func PUSH_CHAT_MESSAGE_NOTEXT(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1792]!, self._r[1792]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1793]!, self._r[1793]!, [_1, _2])
}
- public var ChatList_EmptyChatListEditFilter: String { return self._s[1793]! }
- public var ChatSettings_ConnectionType_UseProxy: String { return self._s[1796]! }
- public var Chat_PinnedMessagesHiddenText: String { return self._s[1797]! }
+ public var ChatList_EmptyChatListEditFilter: String { return self._s[1794]! }
+ public var ChatSettings_ConnectionType_UseProxy: String { return self._s[1797]! }
+ public var Chat_PinnedMessagesHiddenText: String { return self._s[1798]! }
public func Message_PinnedGenericMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1798]!, self._r[1798]!, [_0])
- }
- public func Location_ProximityTip(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[1799]!, self._r[1799]!, [_0])
}
- public var UserInfo_NotificationsEnable: String { return self._s[1800]! }
- public var Checkout_PayWithTouchId: String { return self._s[1801]! }
- public var SharedMedia_ViewInChat: String { return self._s[1802]! }
- public func Notification_CreatedChatWithTitle(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1803]!, self._r[1803]!, [_0, _1])
+ public func Location_ProximityTip(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[1800]!, self._r[1800]!, [_0])
}
- public var ChatSettings_AutoDownloadSettings_OffForAll: String { return self._s[1804]! }
+ public var UserInfo_NotificationsEnable: String { return self._s[1801]! }
+ public var Checkout_PayWithTouchId: String { return self._s[1802]! }
+ public var SharedMedia_ViewInChat: String { return self._s[1803]! }
+ public func Notification_CreatedChatWithTitle(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[1804]!, self._r[1804]!, [_0, _1])
+ }
+ public var ChatSettings_AutoDownloadSettings_OffForAll: String { return self._s[1805]! }
public func Channel_DiscussionGroup_PublicChannelLink(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1805]!, self._r[1805]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1806]!, self._r[1806]!, [_1, _2])
}
public func Cache_Clear(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1807]!, self._r[1807]!, [_0])
+ return formatWithArgumentRanges(self._s[1808]!, self._r[1808]!, [_0])
}
- public var Conversation_PeerNearbyText: String { return self._s[1809]! }
- public var Conversation_StopPollConfirmationTitle: String { return self._s[1810]! }
- public var PhotoEditor_Skip: String { return self._s[1811]! }
- public var SettingsSearch_Synonyms_Appearance_ChatBackground_SetColor: String { return self._s[1812]! }
- public var ChatList_EmptyChatList: String { return self._s[1813]! }
- public var Channel_BanUser_Unban: String { return self._s[1814]! }
+ public var Conversation_PeerNearbyText: String { return self._s[1810]! }
+ public var Conversation_StopPollConfirmationTitle: String { return self._s[1811]! }
+ public var PhotoEditor_Skip: String { return self._s[1812]! }
+ public var SettingsSearch_Synonyms_Appearance_ChatBackground_SetColor: String { return self._s[1813]! }
+ public var ChatList_EmptyChatList: String { return self._s[1814]! }
+ public var Channel_BanUser_Unban: String { return self._s[1815]! }
public func Message_GenericForwardedPsa(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1815]!, self._r[1815]!, [_0])
+ return formatWithArgumentRanges(self._s[1816]!, self._r[1816]!, [_0])
}
- public var Appearance_TextSize_Apply: String { return self._s[1816]! }
+ public var Appearance_TextSize_Apply: String { return self._s[1817]! }
public func Conversation_MessageViewCommentsFormat(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1817]!, self._r[1817]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1818]!, self._r[1818]!, [_1, _2])
}
- public var Login_InfoFirstNamePlaceholder: String { return self._s[1818]! }
- public var VoiceOver_Chat_YourSticker: String { return self._s[1819]! }
- public var TwoStepAuth_HintPlaceholder: String { return self._s[1820]! }
- public var TwoStepAuth_EmailSkip: String { return self._s[1822]! }
- public var ChatList_UndoArchiveMultipleTitle: String { return self._s[1823]! }
- public var TwoFactorSetup_Email_SkipConfirmationTitle: String { return self._s[1824]! }
+ public var Login_InfoFirstNamePlaceholder: String { return self._s[1819]! }
+ public var VoiceOver_Chat_YourSticker: String { return self._s[1820]! }
+ public var TwoStepAuth_HintPlaceholder: String { return self._s[1821]! }
+ public var TwoStepAuth_EmailSkip: String { return self._s[1823]! }
+ public var ChatList_UndoArchiveMultipleTitle: String { return self._s[1824]! }
+ public var TwoFactorSetup_Email_SkipConfirmationTitle: String { return self._s[1825]! }
public func PUSH_MESSAGE_QUIZ(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1825]!, self._r[1825]!, [_1])
+ return formatWithArgumentRanges(self._s[1826]!, self._r[1826]!, [_1])
}
- public var VoiceOver_Chat_GoToOriginalMessage: String { return self._s[1827]! }
- public var State_WaitingForNetwork: String { return self._s[1828]! }
- public var AccessDenied_CameraRestricted: String { return self._s[1829]! }
- public var ChatSettings_Appearance: String { return self._s[1830]! }
- public var ScheduledMessages_BotActionUnavailable: String { return self._s[1831]! }
- public var GroupInfo_InviteLink_CopyAlert_Success: String { return self._s[1832]! }
- public var Channel_DiscussionGroupAdd: String { return self._s[1833]! }
- public var Conversation_SelectMessages: String { return self._s[1835]! }
- public var Map_NoPlacesNearby: String { return self._s[1836]! }
- public var AuthSessions_IncompleteAttemptsInfo: String { return self._s[1837]! }
- public var GroupRemoved_Title: String { return self._s[1838]! }
- public var ImportStickerPack_RemoveFromImport: String { return self._s[1839]! }
- public var TwoStepAuth_EnterPasswordHelp: String { return self._s[1841]! }
- public var VoiceChat_Mute: String { return self._s[1842]! }
- public var Paint_Marker: String { return self._s[1843]! }
- public var Widget_ChatsGalleryTitle: String { return self._s[1844]! }
+ public var VoiceOver_Chat_GoToOriginalMessage: String { return self._s[1828]! }
+ public var State_WaitingForNetwork: String { return self._s[1829]! }
+ public var AccessDenied_CameraRestricted: String { return self._s[1830]! }
+ public var ChatSettings_Appearance: String { return self._s[1831]! }
+ public var ScheduledMessages_BotActionUnavailable: String { return self._s[1832]! }
+ public var GroupInfo_InviteLink_CopyAlert_Success: String { return self._s[1833]! }
+ public var Channel_DiscussionGroupAdd: String { return self._s[1834]! }
+ public var Conversation_SelectMessages: String { return self._s[1836]! }
+ public var Map_NoPlacesNearby: String { return self._s[1837]! }
+ public var AuthSessions_IncompleteAttemptsInfo: String { return self._s[1838]! }
+ public var GroupRemoved_Title: String { return self._s[1839]! }
+ public var ImportStickerPack_RemoveFromImport: String { return self._s[1840]! }
+ public var TwoStepAuth_EnterPasswordHelp: String { return self._s[1842]! }
+ public var VoiceChat_Mute: String { return self._s[1843]! }
+ public var Paint_Marker: String { return self._s[1844]! }
+ public var Widget_ChatsGalleryTitle: String { return self._s[1845]! }
public func AddContact_ContactWillBeSharedAfterMutual(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1845]!, self._r[1845]!, [_1])
+ return formatWithArgumentRanges(self._s[1846]!, self._r[1846]!, [_1])
}
- public var SocksProxySetup_ShareProxyList: String { return self._s[1846]! }
- public var GroupInfo_InvitationLinkDoesNotExist: String { return self._s[1847]! }
+ public var SocksProxySetup_ShareProxyList: String { return self._s[1847]! }
+ public var GroupInfo_InvitationLinkDoesNotExist: String { return self._s[1848]! }
public func VoiceOver_Chat_Size(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1848]!, self._r[1848]!, [_0])
+ return formatWithArgumentRanges(self._s[1849]!, self._r[1849]!, [_0])
}
- public var EditTheme_ErrorInvalidCharacters: String { return self._s[1849]! }
- public var Appearance_ThemePreview_ChatList_7_Name: String { return self._s[1850]! }
- public var Settings_CheckPasswordTitle: String { return self._s[1851]! }
- public var Notifications_GroupNotificationsAlert: String { return self._s[1852]! }
- public var SocksProxySetup_ShareQRCode: String { return self._s[1853]! }
- public var Compose_NewGroup: String { return self._s[1855]! }
+ public var EditTheme_ErrorInvalidCharacters: String { return self._s[1850]! }
+ public var Appearance_ThemePreview_ChatList_7_Name: String { return self._s[1851]! }
+ public var Settings_CheckPasswordTitle: String { return self._s[1852]! }
+ public var Notifications_GroupNotificationsAlert: String { return self._s[1853]! }
+ public var SocksProxySetup_ShareQRCode: String { return self._s[1854]! }
+ public var Compose_NewGroup: String { return self._s[1856]! }
public func Passport_Address_UploadOneOfScan(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1856]!, self._r[1856]!, [_0])
+ return formatWithArgumentRanges(self._s[1857]!, self._r[1857]!, [_0])
}
- public var Location_LiveLocationRequired_Description: String { return self._s[1858]! }
- public var Conversation_ClearGroupHistory: String { return self._s[1859]! }
- public var GroupInfo_InviteLink_Help: String { return self._s[1862]! }
- public var VoiceOver_BotKeyboard: String { return self._s[1863]! }
- public var Channel_BanUser_BlockFor: String { return self._s[1864]! }
- public var Bot_Start: String { return self._s[1865]! }
- public var Your_card_has_expired: String { return self._s[1866]! }
- public var Channel_About_Title: String { return self._s[1867]! }
- public var VoiceChat_EditTitleTitle: String { return self._s[1868]! }
- public var Passport_Identity_ExpiryDatePlaceholder: String { return self._s[1869]! }
- public var SettingsSearch_Synonyms_Notifications_MessageNotificationsExceptions: String { return self._s[1871]! }
- public var Conversation_FileDropbox: String { return self._s[1872]! }
- public var ChatList_Search_NoResultsFitlerMusic: String { return self._s[1873]! }
- public var Month_GenNovember: String { return self._s[1874]! }
- public var IntentsSettings_SuggestByShare: String { return self._s[1875]! }
+ public var Location_LiveLocationRequired_Description: String { return self._s[1859]! }
+ public var Conversation_ClearGroupHistory: String { return self._s[1860]! }
+ public var GroupInfo_InviteLink_Help: String { return self._s[1863]! }
+ public var VoiceOver_BotKeyboard: String { return self._s[1864]! }
+ public var Channel_BanUser_BlockFor: String { return self._s[1865]! }
+ public var Bot_Start: String { return self._s[1866]! }
+ public var Your_card_has_expired: String { return self._s[1867]! }
+ public var Channel_About_Title: String { return self._s[1868]! }
+ public var VoiceChat_EditTitleTitle: String { return self._s[1869]! }
+ public var Passport_Identity_ExpiryDatePlaceholder: String { return self._s[1870]! }
+ public var SettingsSearch_Synonyms_Notifications_MessageNotificationsExceptions: String { return self._s[1872]! }
+ public var Conversation_FileDropbox: String { return self._s[1873]! }
+ public var ChatList_Search_NoResultsFitlerMusic: String { return self._s[1874]! }
+ public var Month_GenNovember: String { return self._s[1875]! }
+ public var IntentsSettings_SuggestByShare: String { return self._s[1876]! }
public func Call_PrivacyErrorMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1876]!, self._r[1876]!, [_0])
+ return formatWithArgumentRanges(self._s[1877]!, self._r[1877]!, [_0])
}
- public var StickerPack_Add: String { return self._s[1877]! }
- public var Theme_ErrorNotFound: String { return self._s[1878]! }
- public var Wallpaper_SearchShort: String { return self._s[1880]! }
- public var Channel_BanUser_PermissionsHeader: String { return self._s[1881]! }
- public var ConversationProfile_UsersTooMuchError: String { return self._s[1882]! }
- public var ChatList_FolderAllChats: String { return self._s[1883]! }
- public var VoiceChat_EndConfirmationEnd: String { return self._s[1884]! }
- public var Passport_Authorize: String { return self._s[1885]! }
+ public var StickerPack_Add: String { return self._s[1878]! }
+ public var Theme_ErrorNotFound: String { return self._s[1879]! }
+ public var Wallpaper_SearchShort: String { return self._s[1881]! }
+ public var Channel_BanUser_PermissionsHeader: String { return self._s[1882]! }
+ public var ConversationProfile_UsersTooMuchError: String { return self._s[1883]! }
+ public var ChatList_FolderAllChats: String { return self._s[1884]! }
+ public var VoiceChat_EndConfirmationEnd: String { return self._s[1885]! }
+ public var Passport_Authorize: String { return self._s[1886]! }
public func Channel_AdminLog_MessageChangedLinkedChannel(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1886]!, self._r[1886]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1887]!, self._r[1887]!, [_1, _2])
}
- public var GroupInfo_GroupHistoryVisible: String { return self._s[1887]! }
+ public var GroupInfo_GroupHistoryVisible: String { return self._s[1888]! }
public func PUSH_MESSAGE_VIDEO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1888]!, self._r[1888]!, [_1])
+ return formatWithArgumentRanges(self._s[1889]!, self._r[1889]!, [_1])
}
- public var LocalGroup_ButtonTitle: String { return self._s[1889]! }
- public var VoiceOver_Stickers: String { return self._s[1891]! }
- public var UserInfo_GroupsInCommon: String { return self._s[1892]! }
- public var LoginPassword_Title: String { return self._s[1894]! }
- public var Wallpaper_Set: String { return self._s[1895]! }
- public var Stats_InteractionsTitle: String { return self._s[1896]! }
+ public var LocalGroup_ButtonTitle: String { return self._s[1890]! }
+ public var VoiceOver_Stickers: String { return self._s[1892]! }
+ public var UserInfo_GroupsInCommon: String { return self._s[1893]! }
+ public var LoginPassword_Title: String { return self._s[1895]! }
+ public var Wallpaper_Set: String { return self._s[1896]! }
+ public var Stats_InteractionsTitle: String { return self._s[1897]! }
public func SecretGIF_NotViewedYet(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1898]!, self._r[1898]!, [_0])
+ return formatWithArgumentRanges(self._s[1899]!, self._r[1899]!, [_0])
}
- public var Conversation_MessageDialogEdit: String { return self._s[1899]! }
- public var Paint_Outlined: String { return self._s[1900]! }
+ public var Conversation_MessageDialogEdit: String { return self._s[1900]! }
+ public var Paint_Outlined: String { return self._s[1901]! }
public func Login_ResetAccountProtected_Text(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1901]!, self._r[1901]!, [_0])
- }
- public func Conversation_SetReminder_RemindTomorrow(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[1902]!, self._r[1902]!, [_0])
}
- public var Invite_LargeRecipientsCountWarning: String { return self._s[1903]! }
- public var Passport_Address_Street1Placeholder: String { return self._s[1904]! }
- public var Appearance_ColorThemeNight: String { return self._s[1905]! }
- public var ChannelInfo_Stats: String { return self._s[1906]! }
- public var Widget_ShortcutsGalleryTitle: String { return self._s[1907]! }
- public var TwoStepAuth_RecoveryTitle: String { return self._s[1908]! }
- public var MediaPicker_TimerTooltip: String { return self._s[1909]! }
- public var ChatImportActivity_ErrorNotAdmin: String { return self._s[1910]! }
- public var TwoFactorRemember_Title: String { return self._s[1911]! }
- public var Common_ChoosePhoto: String { return self._s[1912]! }
- public var Media_LimitedAccessTitle: String { return self._s[1913]! }
- public var ChatSettings_AutoDownloadVideos: String { return self._s[1914]! }
- public var PeerInfo_PaneGroups: String { return self._s[1915]! }
- public var SocksProxySetup_UsernamePlaceholder: String { return self._s[1917]! }
- public var ChangePhoneNumberNumber_Title: String { return self._s[1918]! }
- public var ContactInfo_PhoneLabelMobile: String { return self._s[1919]! }
- public var OldChannels_ChannelsHeader: String { return self._s[1920]! }
- public var MuteFor_Forever: String { return self._s[1921]! }
- public var Passport_Address_PostcodePlaceholder: String { return self._s[1922]! }
- public var SettingsSearch_Synonyms_Appearance_ChatBackground: String { return self._s[1924]! }
- public var MessagePoll_LabelAnonymous: String { return self._s[1925]! }
- public var ContactInfo_Job: String { return self._s[1926]! }
- public var Passport_Language_mk: String { return self._s[1927]! }
- public var EditTheme_ShortLink: String { return self._s[1928]! }
- public var AutoDownloadSettings_PhotosTitle: String { return self._s[1931]! }
- public var Month_GenApril: String { return self._s[1933]! }
- public var Channel_DiscussionGroup_HeaderLabel: String { return self._s[1935]! }
- public var NetworkUsageSettings_TotalSection: String { return self._s[1936]! }
- public var EditTheme_Create_Preview_OutgoingText: String { return self._s[1937]! }
- public var EditTheme_Title: String { return self._s[1938]! }
- public var Conversation_LinkDialogCopy: String { return self._s[1939]! }
+ public func Conversation_SetReminder_RemindTomorrow(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[1903]!, self._r[1903]!, [_0])
+ }
+ public var Invite_LargeRecipientsCountWarning: String { return self._s[1904]! }
+ public var Passport_Address_Street1Placeholder: String { return self._s[1905]! }
+ public var Appearance_ColorThemeNight: String { return self._s[1906]! }
+ public var ChannelInfo_Stats: String { return self._s[1907]! }
+ public var Widget_ShortcutsGalleryTitle: String { return self._s[1908]! }
+ public var TwoStepAuth_RecoveryTitle: String { return self._s[1909]! }
+ public var MediaPicker_TimerTooltip: String { return self._s[1910]! }
+ public var ChatImportActivity_ErrorNotAdmin: String { return self._s[1911]! }
+ public var TwoFactorRemember_Title: String { return self._s[1912]! }
+ public var Common_ChoosePhoto: String { return self._s[1913]! }
+ public var Media_LimitedAccessTitle: String { return self._s[1914]! }
+ public var ChatSettings_AutoDownloadVideos: String { return self._s[1915]! }
+ public var PeerInfo_PaneGroups: String { return self._s[1916]! }
+ public var SocksProxySetup_UsernamePlaceholder: String { return self._s[1918]! }
+ public var ChangePhoneNumberNumber_Title: String { return self._s[1919]! }
+ public var ContactInfo_PhoneLabelMobile: String { return self._s[1920]! }
+ public var OldChannels_ChannelsHeader: String { return self._s[1921]! }
+ public var MuteFor_Forever: String { return self._s[1922]! }
+ public var Passport_Address_PostcodePlaceholder: String { return self._s[1923]! }
+ public var SettingsSearch_Synonyms_Appearance_ChatBackground: String { return self._s[1925]! }
+ public var MessagePoll_LabelAnonymous: String { return self._s[1926]! }
+ public var ContactInfo_Job: String { return self._s[1927]! }
+ public var Passport_Language_mk: String { return self._s[1928]! }
+ public var EditTheme_ShortLink: String { return self._s[1929]! }
+ public var AutoDownloadSettings_PhotosTitle: String { return self._s[1932]! }
+ public var Month_GenApril: String { return self._s[1934]! }
+ public var Channel_DiscussionGroup_HeaderLabel: String { return self._s[1936]! }
+ public var NetworkUsageSettings_TotalSection: String { return self._s[1937]! }
+ public var EditTheme_Create_Preview_OutgoingText: String { return self._s[1938]! }
+ public var EditTheme_Title: String { return self._s[1939]! }
+ public var Conversation_LinkDialogCopy: String { return self._s[1940]! }
public func Channel_AdminLog_MessageInvitedNameUsername(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1940]!, self._r[1940]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[1941]!, self._r[1941]!, [_1, _2])
}
- public var Passport_ForgottenPassword: String { return self._s[1941]! }
- public var WallpaperSearch_Recent: String { return self._s[1942]! }
- public var ChatSettings_Title: String { return self._s[1947]! }
- public var Appearance_ReduceMotionInfo: String { return self._s[1948]! }
+ public var Passport_ForgottenPassword: String { return self._s[1942]! }
+ public var WallpaperSearch_Recent: String { return self._s[1943]! }
+ public var ChatSettings_Title: String { return self._s[1948]! }
+ public var Appearance_ReduceMotionInfo: String { return self._s[1949]! }
public func StickerPackActionInfo_AddedText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1949]!, self._r[1949]!, [_0])
+ return formatWithArgumentRanges(self._s[1950]!, self._r[1950]!, [_0])
}
- public var SocksProxySetup_UseForCallsHelp: String { return self._s[1950]! }
- public var LastSeen_WithinAMonth: String { return self._s[1951]! }
- public var VoiceChat_Live: String { return self._s[1952]! }
- public var PeerInfo_ButtonCall: String { return self._s[1953]! }
- public var SettingsSearch_Synonyms_Appearance_Title: String { return self._s[1954]! }
- public var Group_Username_InvalidStartsWithNumber: String { return self._s[1955]! }
- public var Call_AudioRouteHide: String { return self._s[1956]! }
- public var DialogList_SavedMessages: String { return self._s[1957]! }
- public var ChatList_Context_Mute: String { return self._s[1958]! }
- public var Conversation_StatusKickedFromChannel: String { return self._s[1959]! }
+ public var SocksProxySetup_UseForCallsHelp: String { return self._s[1951]! }
+ public var LastSeen_WithinAMonth: String { return self._s[1952]! }
+ public var VoiceChat_Live: String { return self._s[1953]! }
+ public var PeerInfo_ButtonCall: String { return self._s[1954]! }
+ public var SettingsSearch_Synonyms_Appearance_Title: String { return self._s[1955]! }
+ public var Group_Username_InvalidStartsWithNumber: String { return self._s[1956]! }
+ public var Call_AudioRouteHide: String { return self._s[1957]! }
+ public var DialogList_SavedMessages: String { return self._s[1958]! }
+ public var ChatList_Context_Mute: String { return self._s[1959]! }
+ public var Conversation_StatusKickedFromChannel: String { return self._s[1960]! }
public func Notification_Exceptions_MutedUntil(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1960]!, self._r[1960]!, [_0])
+ return formatWithArgumentRanges(self._s[1961]!, self._r[1961]!, [_0])
}
- public var VoiceChat_StatusMutedForYou: String { return self._s[1961]! }
- public var Passport_Language_et: String { return self._s[1962]! }
- public var Conversation_MessageLeaveCommentShort: String { return self._s[1963]! }
- public var PhotoEditor_CropReset: String { return self._s[1964]! }
- public var Privacy_GroupsAndChannels_AlwaysAllow: String { return self._s[1965]! }
- public var SocksProxySetup_HostnamePlaceholder: String { return self._s[1966]! }
- public var CreateGroup_ErrorLocatedGroupsTooMuch: String { return self._s[1967]! }
- public var WallpaperSearch_ColorWhite: String { return self._s[1970]! }
- public var Channel_AdminLog_CanEditMessages: String { return self._s[1972]! }
- public var Privacy_PaymentsClearInfoDoneHelp: String { return self._s[1973]! }
- public var Channel_Username_InvalidStartsWithNumber: String { return self._s[1975]! }
- public var CheckoutInfo_ReceiverInfoName: String { return self._s[1977]! }
- public var Map_YouAreHere: String { return self._s[1979]! }
- public var Core_ServiceUserStatus: String { return self._s[1980]! }
- public var Channel_Setup_TypePrivateHelp: String { return self._s[1983]! }
- public var VoiceChat_StartRecording: String { return self._s[1984]! }
- public var SettingsSearch_Synonyms_Notifications_BadgeCountUnreadMessages: String { return self._s[1985]! }
- public var MediaPicker_Videos: String { return self._s[1987]! }
- public var Map_LiveLocationFor15Minutes: String { return self._s[1989]! }
- public var Passport_Identity_TranslationsHelp: String { return self._s[1990]! }
- public var SharedMedia_CategoryMedia: String { return self._s[1991]! }
+ public var VoiceChat_StatusMutedForYou: String { return self._s[1962]! }
+ public var Passport_Language_et: String { return self._s[1963]! }
+ public var Conversation_MessageLeaveCommentShort: String { return self._s[1964]! }
+ public var PhotoEditor_CropReset: String { return self._s[1965]! }
+ public var Privacy_GroupsAndChannels_AlwaysAllow: String { return self._s[1966]! }
+ public var SocksProxySetup_HostnamePlaceholder: String { return self._s[1967]! }
+ public var CreateGroup_ErrorLocatedGroupsTooMuch: String { return self._s[1968]! }
+ public var WallpaperSearch_ColorWhite: String { return self._s[1971]! }
+ public var Channel_AdminLog_CanEditMessages: String { return self._s[1973]! }
+ public var Privacy_PaymentsClearInfoDoneHelp: String { return self._s[1974]! }
+ public var Channel_Username_InvalidStartsWithNumber: String { return self._s[1976]! }
+ public var CheckoutInfo_ReceiverInfoName: String { return self._s[1978]! }
+ public var Map_YouAreHere: String { return self._s[1980]! }
+ public var Core_ServiceUserStatus: String { return self._s[1981]! }
+ public var Channel_Setup_TypePrivateHelp: String { return self._s[1984]! }
+ public var VoiceChat_StartRecording: String { return self._s[1985]! }
+ public var SettingsSearch_Synonyms_Notifications_BadgeCountUnreadMessages: String { return self._s[1986]! }
+ public var MediaPicker_Videos: String { return self._s[1988]! }
+ public var Map_LiveLocationFor15Minutes: String { return self._s[1990]! }
+ public var Passport_Identity_TranslationsHelp: String { return self._s[1991]! }
+ public var SharedMedia_CategoryMedia: String { return self._s[1992]! }
public func MediaPicker_Nof(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1992]!, self._r[1992]!, [_0])
+ return formatWithArgumentRanges(self._s[1993]!, self._r[1993]!, [_0])
}
- public var ChatSettings_AutoPlayGifs: String { return self._s[1993]! }
- public var Passport_Identity_CountryPlaceholder: String { return self._s[1994]! }
- public var Bot_GroupStatusDoesNotReadHistory: String { return self._s[1995]! }
- public var Conversation_JoinVoiceChatAsListener: String { return self._s[1996]! }
- public var Notification_Exceptions_RemoveFromExceptions: String { return self._s[1997]! }
+ public var ChatSettings_AutoPlayGifs: String { return self._s[1994]! }
+ public var Passport_Identity_CountryPlaceholder: String { return self._s[1995]! }
+ public var Bot_GroupStatusDoesNotReadHistory: String { return self._s[1996]! }
+ public var Conversation_JoinVoiceChatAsListener: String { return self._s[1997]! }
+ public var Notification_Exceptions_RemoveFromExceptions: String { return self._s[1998]! }
public func Chat_SlowmodeTooltip(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[1998]!, self._r[1998]!, [_0])
+ return formatWithArgumentRanges(self._s[1999]!, self._r[1999]!, [_0])
}
- public var Web_Error: String { return self._s[1999]! }
- public var PhotoEditor_SkinTool: String { return self._s[2000]! }
- public var ApplyLanguage_UnsufficientDataTitle: String { return self._s[2001]! }
- public var AutoremoveSetup_TimerInfoChat: String { return self._s[2002]! }
- public var ChatSettings_ConnectionType_UseSocks5: String { return self._s[2004]! }
- public var PasscodeSettings_Help: String { return self._s[2005]! }
- public var Appearance_ColorTheme: String { return self._s[2006]! }
+ public var Web_Error: String { return self._s[2000]! }
+ public var PhotoEditor_SkinTool: String { return self._s[2001]! }
+ public var ApplyLanguage_UnsufficientDataTitle: String { return self._s[2002]! }
+ public var AutoremoveSetup_TimerInfoChat: String { return self._s[2003]! }
+ public var ChatSettings_ConnectionType_UseSocks5: String { return self._s[2005]! }
+ public var PasscodeSettings_Help: String { return self._s[2006]! }
+ public var Appearance_ColorTheme: String { return self._s[2007]! }
public func Channel_AdminLog_MessageRestrictedNewSetting(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2007]!, self._r[2007]!, [_0])
+ return formatWithArgumentRanges(self._s[2008]!, self._r[2008]!, [_0])
}
- public var InviteLink_DeleteAllRevokedLinks: String { return self._s[2008]! }
+ public var InviteLink_DeleteAllRevokedLinks: String { return self._s[2009]! }
public func PUSH_PINNED_GEO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2009]!, self._r[2009]!, [_1])
+ return formatWithArgumentRanges(self._s[2010]!, self._r[2010]!, [_1])
}
- public var InviteLink_QRCode_Title: String { return self._s[2010]! }
- public var GroupInfo_LeftStatus: String { return self._s[2011]! }
- public var EditTheme_Preview: String { return self._s[2012]! }
- public var Watch_Suggestion_WhatsUp: String { return self._s[2013]! }
+ public var InviteLink_QRCode_Title: String { return self._s[2011]! }
+ public var GroupInfo_LeftStatus: String { return self._s[2012]! }
+ public var EditTheme_Preview: String { return self._s[2013]! }
+ public var Watch_Suggestion_WhatsUp: String { return self._s[2014]! }
public func AutoDownloadSettings_PreloadVideoInfo(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2014]!, self._r[2014]!, [_0])
+ return formatWithArgumentRanges(self._s[2015]!, self._r[2015]!, [_0])
}
- public var NotificationsSound_Keys: String { return self._s[2015]! }
- public var VoiceChat_StatusWantsToSpeak: String { return self._s[2016]! }
- public var PasscodeSettings_UnlockWithTouchId: String { return self._s[2017]! }
- public var ChatList_Context_MarkAsUnread: String { return self._s[2018]! }
- public var DialogList_AdNoticeAlert: String { return self._s[2019]! }
- public var UserInfo_Invite: String { return self._s[2020]! }
- public var Checkout_Email: String { return self._s[2021]! }
- public var Stats_GroupActionsTitle: String { return self._s[2022]! }
- public var Coub_TapForSound: String { return self._s[2023]! }
- public var Conversation_AutoremoveTimerRemovedUserYou: String { return self._s[2024]! }
- public var Theme_ThemeChangedText: String { return self._s[2025]! }
- public var Call_ExternalCallInProgressMessage: String { return self._s[2026]! }
- public var AutoremoveSetup_TimerInfoChannel: String { return self._s[2027]! }
- public var Settings_ApplyProxyAlertEnable: String { return self._s[2028]! }
- public var ScheduledMessages_ScheduledToday: String { return self._s[2029]! }
- public var Channel_AdminLog_DefaultRestrictionsUpdated: String { return self._s[2030]! }
+ public var NotificationsSound_Keys: String { return self._s[2016]! }
+ public var VoiceChat_StatusWantsToSpeak: String { return self._s[2017]! }
+ public var PasscodeSettings_UnlockWithTouchId: String { return self._s[2018]! }
+ public var ChatList_Context_MarkAsUnread: String { return self._s[2019]! }
+ public var DialogList_AdNoticeAlert: String { return self._s[2020]! }
+ public var UserInfo_Invite: String { return self._s[2021]! }
+ public var Checkout_Email: String { return self._s[2022]! }
+ public var Stats_GroupActionsTitle: String { return self._s[2023]! }
+ public var Coub_TapForSound: String { return self._s[2024]! }
+ public var Conversation_AutoremoveTimerRemovedUserYou: String { return self._s[2025]! }
+ public var Theme_ThemeChangedText: String { return self._s[2026]! }
+ public var Call_ExternalCallInProgressMessage: String { return self._s[2027]! }
+ public var AutoremoveSetup_TimerInfoChannel: String { return self._s[2028]! }
+ public var Settings_ApplyProxyAlertEnable: String { return self._s[2029]! }
+ public var ScheduledMessages_ScheduledToday: String { return self._s[2030]! }
+ public var Channel_AdminLog_DefaultRestrictionsUpdated: String { return self._s[2031]! }
public func VoiceChat_InviteMemberToChannelFirstText(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2031]!, self._r[2031]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2032]!, self._r[2032]!, [_1, _2])
}
- public var Call_ReportIncludeLogDescription: String { return self._s[2032]! }
- public var Settings_FrequentlyAskedQuestions: String { return self._s[2034]! }
- public var Call_VoiceOver_VoiceCallMissed: String { return self._s[2035]! }
- public var Channel_MessagePhotoRemoved: String { return self._s[2036]! }
- public var Passport_Email_Delete: String { return self._s[2037]! }
+ public var Call_ReportIncludeLogDescription: String { return self._s[2033]! }
+ public var Settings_FrequentlyAskedQuestions: String { return self._s[2035]! }
+ public var Call_VoiceOver_VoiceCallMissed: String { return self._s[2036]! }
+ public var Channel_MessagePhotoRemoved: String { return self._s[2037]! }
+ public var Passport_Email_Delete: String { return self._s[2038]! }
public func PUSH_PINNED_PHOTO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2038]!, self._r[2038]!, [_1])
+ return formatWithArgumentRanges(self._s[2039]!, self._r[2039]!, [_1])
}
- public var NotificationSettings_ShowNotificationsAllAccountsInfoOn: String { return self._s[2039]! }
+ public var NotificationSettings_ShowNotificationsAllAccountsInfoOn: String { return self._s[2040]! }
public func Conversation_AutoremoveTimerRemovedUser(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2040]!, self._r[2040]!, [_1])
+ return formatWithArgumentRanges(self._s[2041]!, self._r[2041]!, [_1])
}
- public var Channel_AdminLog_CanAddAdmins: String { return self._s[2041]! }
- public var SocksProxySetup_FailedToConnect: String { return self._s[2043]! }
- public var SettingsSearch_Synonyms_Data_NetworkUsage: String { return self._s[2044]! }
- public var Common_of: String { return self._s[2045]! }
- public var VoiceChat_CreateNewVoiceChatText: String { return self._s[2046]! }
- public var VoiceChat_StartRecordingStart: String { return self._s[2047]! }
- public var PeerInfo_ButtonUnmute: String { return self._s[2050]! }
+ public var Channel_AdminLog_CanAddAdmins: String { return self._s[2042]! }
+ public var SocksProxySetup_FailedToConnect: String { return self._s[2044]! }
+ public var SettingsSearch_Synonyms_Data_NetworkUsage: String { return self._s[2045]! }
+ public var Common_of: String { return self._s[2046]! }
+ public var VoiceChat_CreateNewVoiceChatText: String { return self._s[2047]! }
+ public var VoiceChat_StartRecordingStart: String { return self._s[2048]! }
+ public var PeerInfo_ButtonUnmute: String { return self._s[2051]! }
public func ChatSettings_AutoDownloadSettings_TypeFile(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2051]!, self._r[2051]!, [_0])
+ return formatWithArgumentRanges(self._s[2052]!, self._r[2052]!, [_0])
}
- public var Privacy_ContactsReset_ContactsDeleted: String { return self._s[2052]! }
- public var ChatList_AddChatsToFolder: String { return self._s[2053]! }
- public var Login_ResetAccountProtected_LimitExceeded: String { return self._s[2054]! }
- public var Settings_Title: String { return self._s[2056]! }
- public var AutoDownloadSettings_Contacts: String { return self._s[2058]! }
- public var Appearance_BubbleCornersSetting: String { return self._s[2059]! }
- public var InviteLink_OtherAdminsLinks: String { return self._s[2060]! }
- public var Privacy_Calls_AlwaysAllow: String { return self._s[2061]! }
- public var Privacy_Forwards_AlwaysAllow_Title: String { return self._s[2063]! }
- public var WallpaperPreview_CropBottomText: String { return self._s[2064]! }
- public var SecretTimer_VideoDescription: String { return self._s[2065]! }
- public var VoiceOver_Chat_AnimatedSticker: String { return self._s[2066]! }
- public var WallpaperPreview_Blurred: String { return self._s[2067]! }
- public var SettingsSearch_Synonyms_Notifications_GroupNotificationsExceptions: String { return self._s[2068]! }
- public var ChatListFolder_ExcludedSectionHeader: String { return self._s[2070]! }
- public var Conversation_CancelForwardSelectChat: String { return self._s[2071]! }
- public var DialogList_PasscodeLockHelp: String { return self._s[2072]! }
- public var SocksProxySetup_SecretPlaceholder: String { return self._s[2073]! }
- public var NetworkUsageSettings_CallDataSection: String { return self._s[2074]! }
- public var TwoStepAuth_PasswordRemovePassportConfirmation: String { return self._s[2075]! }
- public var Passport_FieldAddressTranslationHelp: String { return self._s[2076]! }
- public var SocksProxySetup_Connection: String { return self._s[2077]! }
- public var Passport_Address_TypePassportRegistration: String { return self._s[2078]! }
- public var Contacts_PermissionsAllowInSettings: String { return self._s[2079]! }
- public var Conversation_Unpin: String { return self._s[2080]! }
- public var Notifications_MessageNotificationsExceptionsHelp: String { return self._s[2081]! }
- public var TwoFactorSetup_Hint_Placeholder: String { return self._s[2082]! }
- public var Call_ReportSkip: String { return self._s[2083]! }
+ public var Privacy_ContactsReset_ContactsDeleted: String { return self._s[2053]! }
+ public var ChatList_AddChatsToFolder: String { return self._s[2054]! }
+ public var Login_ResetAccountProtected_LimitExceeded: String { return self._s[2055]! }
+ public var Settings_Title: String { return self._s[2057]! }
+ public var AutoDownloadSettings_Contacts: String { return self._s[2059]! }
+ public var Appearance_BubbleCornersSetting: String { return self._s[2060]! }
+ public var InviteLink_OtherAdminsLinks: String { return self._s[2061]! }
+ public var Privacy_Calls_AlwaysAllow: String { return self._s[2062]! }
+ public var Privacy_Forwards_AlwaysAllow_Title: String { return self._s[2064]! }
+ public var WallpaperPreview_CropBottomText: String { return self._s[2065]! }
+ public var SecretTimer_VideoDescription: String { return self._s[2066]! }
+ public var VoiceOver_Chat_AnimatedSticker: String { return self._s[2067]! }
+ public var WallpaperPreview_Blurred: String { return self._s[2068]! }
+ public var SettingsSearch_Synonyms_Notifications_GroupNotificationsExceptions: String { return self._s[2069]! }
+ public var ChatListFolder_ExcludedSectionHeader: String { return self._s[2071]! }
+ public var Conversation_CancelForwardSelectChat: String { return self._s[2072]! }
+ public var DialogList_PasscodeLockHelp: String { return self._s[2073]! }
+ public var SocksProxySetup_SecretPlaceholder: String { return self._s[2074]! }
+ public var NetworkUsageSettings_CallDataSection: String { return self._s[2075]! }
+ public var TwoStepAuth_PasswordRemovePassportConfirmation: String { return self._s[2076]! }
+ public var Passport_FieldAddressTranslationHelp: String { return self._s[2077]! }
+ public var SocksProxySetup_Connection: String { return self._s[2078]! }
+ public var Passport_Address_TypePassportRegistration: String { return self._s[2079]! }
+ public var Contacts_PermissionsAllowInSettings: String { return self._s[2080]! }
+ public var Conversation_Unpin: String { return self._s[2081]! }
+ public var Notifications_MessageNotificationsExceptionsHelp: String { return self._s[2082]! }
+ public var TwoFactorSetup_Hint_Placeholder: String { return self._s[2083]! }
+ public var Call_ReportSkip: String { return self._s[2084]! }
public func VoiceOver_Chat_PhotoFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2084]!, self._r[2084]!, [_0])
+ return formatWithArgumentRanges(self._s[2085]!, self._r[2085]!, [_0])
}
public func VoiceOver_Chat_Caption(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2086]!, self._r[2086]!, [_0])
+ return formatWithArgumentRanges(self._s[2087]!, self._r[2087]!, [_0])
}
- public var AutoNightTheme_Automatic: String { return self._s[2087]! }
- public var Passport_Language_az: String { return self._s[2089]! }
+ public var AutoNightTheme_Automatic: String { return self._s[2088]! }
+ public var Passport_Language_az: String { return self._s[2090]! }
public func Conversation_AutoremoveChanged(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2090]!, self._r[2090]!, [_0])
+ return formatWithArgumentRanges(self._s[2091]!, self._r[2091]!, [_0])
}
- public var SettingsSearch_Synonyms_Data_Storage_ClearCache: String { return self._s[2091]! }
- public var Watch_UserInfo_Unmute: String { return self._s[2092]! }
- public var Channel_Stickers_YourStickers: String { return self._s[2093]! }
- public var Channel_DiscussionGroup_UnlinkChannel: String { return self._s[2094]! }
- public var PeerInfo_AutoremoveMessagesDisabled: String { return self._s[2095]! }
- public var Tour_Text1: String { return self._s[2096]! }
- public var Common_Delete: String { return self._s[2097]! }
- public var Settings_EditPhoto: String { return self._s[2098]! }
- public var Common_Edit: String { return self._s[2099]! }
- public var ShareMenu_ShareTo: String { return self._s[2101]! }
- public var Passport_Identity_ExpiryDate: String { return self._s[2102]! }
+ public var SettingsSearch_Synonyms_Data_Storage_ClearCache: String { return self._s[2092]! }
+ public var Watch_UserInfo_Unmute: String { return self._s[2093]! }
+ public var Channel_Stickers_YourStickers: String { return self._s[2094]! }
+ public var Channel_DiscussionGroup_UnlinkChannel: String { return self._s[2095]! }
+ public var PeerInfo_AutoremoveMessagesDisabled: String { return self._s[2096]! }
+ public var Tour_Text1: String { return self._s[2097]! }
+ public var Common_Delete: String { return self._s[2098]! }
+ public var Settings_EditPhoto: String { return self._s[2099]! }
+ public var Common_Edit: String { return self._s[2100]! }
+ public var ShareMenu_ShareTo: String { return self._s[2102]! }
+ public var Passport_Identity_ExpiryDate: String { return self._s[2103]! }
public func Channel_AdminLog_MutedNewMembers(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2103]!, self._r[2103]!, [_1])
+ return formatWithArgumentRanges(self._s[2104]!, self._r[2104]!, [_1])
}
- public var Preview_DeleteGif: String { return self._s[2104]! }
- public var WallpaperPreview_PatternPaternDiscard: String { return self._s[2105]! }
- public var ChatSettings_AutoDownloadUsingCellular: String { return self._s[2106]! }
- public var Conversation_ViewReply: String { return self._s[2107]! }
- public var Stats_LoadingText: String { return self._s[2108]! }
- public var Channel_EditAdmin_PermissinAddAdminOn: String { return self._s[2109]! }
- public var CheckoutInfo_ReceiverInfoEmailPlaceholder: String { return self._s[2110]! }
- public var Channel_AdminLog_CanChangeInfo: String { return self._s[2111]! }
+ public var Preview_DeleteGif: String { return self._s[2105]! }
+ public var WallpaperPreview_PatternPaternDiscard: String { return self._s[2106]! }
+ public var ChatSettings_AutoDownloadUsingCellular: String { return self._s[2107]! }
+ public var Conversation_ViewReply: String { return self._s[2108]! }
+ public var Stats_LoadingText: String { return self._s[2109]! }
+ public var Channel_EditAdmin_PermissinAddAdminOn: String { return self._s[2110]! }
+ public var CheckoutInfo_ReceiverInfoEmailPlaceholder: String { return self._s[2111]! }
+ public var Channel_AdminLog_CanChangeInfo: String { return self._s[2112]! }
public func Passport_Phone_UseTelegramNumber(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2112]!, self._r[2112]!, [_0])
- }
- public func Time_MonthOfYear_m2(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[2113]!, self._r[2113]!, [_0])
}
+ public func Time_MonthOfYear_m2(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[2114]!, self._r[2114]!, [_0])
+ }
public func VoiceOver_Chat_VideoMessageFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2115]!, self._r[2115]!, [_0])
+ return formatWithArgumentRanges(self._s[2116]!, self._r[2116]!, [_0])
}
- public var Passport_Address_OneOfTypeRentalAgreement: String { return self._s[2116]! }
- public var InviteLink_Share: String { return self._s[2118]! }
+ public var Passport_Address_OneOfTypeRentalAgreement: String { return self._s[2117]! }
+ public var InviteLink_Share: String { return self._s[2119]! }
public func Conversation_ImportProgress(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2120]!, self._r[2120]!, [_0])
+ return formatWithArgumentRanges(self._s[2121]!, self._r[2121]!, [_0])
}
- public var IntentsSettings_MainAccount: String { return self._s[2121]! }
- public var Group_MessagePhotoRemoved: String { return self._s[2124]! }
- public var Conversation_ContextMenuSelect: String { return self._s[2125]! }
- public var GroupInfo_Permissions_Exceptions: String { return self._s[2127]! }
- public var GroupRemoved_UsersSectionTitle: String { return self._s[2128]! }
- public var Contacts_PermissionsEnable: String { return self._s[2129]! }
- public var Channel_EditAdmin_PermissionDeleteMessagesOfOthers: String { return self._s[2130]! }
- public var Common_NotNow: String { return self._s[2131]! }
- public var Notification_CreatedChannel: String { return self._s[2132]! }
- public var Stats_ViewsBySourceTitle: String { return self._s[2134]! }
- public var InviteLink_ContextShare: String { return self._s[2135]! }
- public var Appearance_AppIconClassic: String { return self._s[2136]! }
- public var PhotoEditor_QualityTool: String { return self._s[2137]! }
- public var ClearCache_ClearCache: String { return self._s[2138]! }
- public var TwoFactorSetup_Password_PlaceholderConfirmPassword: String { return self._s[2139]! }
- public var AutoDownloadSettings_Videos: String { return self._s[2140]! }
- public var GroupPermission_Duration: String { return self._s[2141]! }
- public var ChatList_Read: String { return self._s[2142]! }
+ public var IntentsSettings_MainAccount: String { return self._s[2122]! }
+ public var Group_MessagePhotoRemoved: String { return self._s[2125]! }
+ public var Conversation_ContextMenuSelect: String { return self._s[2126]! }
+ public var GroupInfo_Permissions_Exceptions: String { return self._s[2128]! }
+ public var GroupRemoved_UsersSectionTitle: String { return self._s[2129]! }
+ public var Contacts_PermissionsEnable: String { return self._s[2130]! }
+ public var Channel_EditAdmin_PermissionDeleteMessagesOfOthers: String { return self._s[2131]! }
+ public var Common_NotNow: String { return self._s[2132]! }
+ public var Notification_CreatedChannel: String { return self._s[2133]! }
+ public var Stats_ViewsBySourceTitle: String { return self._s[2135]! }
+ public var InviteLink_ContextShare: String { return self._s[2136]! }
+ public var Appearance_AppIconClassic: String { return self._s[2137]! }
+ public var PhotoEditor_QualityTool: String { return self._s[2138]! }
+ public var ClearCache_ClearCache: String { return self._s[2139]! }
+ public var TwoFactorSetup_Password_PlaceholderConfirmPassword: String { return self._s[2140]! }
+ public var AutoDownloadSettings_Videos: String { return self._s[2141]! }
+ public var GroupPermission_Duration: String { return self._s[2142]! }
+ public var ChatList_Read: String { return self._s[2143]! }
public func Group_OwnershipTransfer_DescriptionInfo(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2143]!, self._r[2143]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2144]!, self._r[2144]!, [_1, _2])
}
public func ScheduleVoiceChat_ScheduleTomorrow(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2144]!, self._r[2144]!, [_0])
+ return formatWithArgumentRanges(self._s[2145]!, self._r[2145]!, [_0])
}
- public var CallFeedback_Send: String { return self._s[2145]! }
- public var Channel_Stickers_Searching: String { return self._s[2146]! }
- public var ScheduledMessages_ReminderNotification: String { return self._s[2147]! }
- public var FastTwoStepSetup_HintSection: String { return self._s[2148]! }
- public var ChatSettings_AutoDownloadVideoMessages: String { return self._s[2149]! }
- public var EditTheme_CreateTitle: String { return self._s[2151]! }
- public var Application_Name: String { return self._s[2152]! }
- public var Paint_Stickers: String { return self._s[2153]! }
- public var Appearance_ThemePreview_Chat_1_Text: String { return self._s[2154]! }
- public var Call_StatusFailed: String { return self._s[2155]! }
- public var Stickers_FavoriteStickers: String { return self._s[2156]! }
- public var ClearCache_Clear: String { return self._s[2157]! }
- public var Passport_Language_mn: String { return self._s[2158]! }
- public var WallpaperPreview_PreviewTopText: String { return self._s[2159]! }
- public var LogoutOptions_ClearCacheTitle: String { return self._s[2160]! }
- public var Call_VoiceOver_VideoCallOutgoing: String { return self._s[2162]! }
- public var TwoFactorSetup_Hint_Text: String { return self._s[2164]! }
- public var WallpaperPreview_PatternIntensity: String { return self._s[2165]! }
- public var CheckoutInfo_ErrorShippingNotAvailable: String { return self._s[2166]! }
- public var Passport_Address_AddBankStatement: String { return self._s[2167]! }
+ public var CallFeedback_Send: String { return self._s[2146]! }
+ public var Channel_Stickers_Searching: String { return self._s[2147]! }
+ public var ScheduledMessages_ReminderNotification: String { return self._s[2148]! }
+ public var FastTwoStepSetup_HintSection: String { return self._s[2149]! }
+ public var ChatSettings_AutoDownloadVideoMessages: String { return self._s[2150]! }
+ public var EditTheme_CreateTitle: String { return self._s[2152]! }
+ public var Application_Name: String { return self._s[2153]! }
+ public var Paint_Stickers: String { return self._s[2154]! }
+ public var Appearance_ThemePreview_Chat_1_Text: String { return self._s[2155]! }
+ public var Call_StatusFailed: String { return self._s[2156]! }
+ public var Stickers_FavoriteStickers: String { return self._s[2157]! }
+ public var ClearCache_Clear: String { return self._s[2158]! }
+ public var Passport_Language_mn: String { return self._s[2159]! }
+ public var WallpaperPreview_PreviewTopText: String { return self._s[2160]! }
+ public var LogoutOptions_ClearCacheTitle: String { return self._s[2161]! }
+ public var Call_VoiceOver_VideoCallOutgoing: String { return self._s[2163]! }
+ public var TwoFactorSetup_Hint_Text: String { return self._s[2165]! }
+ public var WallpaperPreview_PatternIntensity: String { return self._s[2166]! }
+ public var CheckoutInfo_ErrorShippingNotAvailable: String { return self._s[2167]! }
+ public var Passport_Address_AddBankStatement: String { return self._s[2168]! }
public func Conversation_TitleRepliesFormat(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2170]!, self._r[2170]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2171]!, self._r[2171]!, [_1, _2])
}
- public var ChatListFolderSettings_RecommendedNewFolder: String { return self._s[2171]! }
- public var UserInfo_ShareContact: String { return self._s[2172]! }
- public var Passport_Identity_NamePlaceholder: String { return self._s[2173]! }
- public var Channel_ErrorAdminsTooMuch: String { return self._s[2175]! }
- public var Call_RateCall: String { return self._s[2176]! }
- public var Contacts_AccessDeniedError: String { return self._s[2177]! }
- public var Invite_ChannelsTooMuch: String { return self._s[2178]! }
- public var CheckoutInfo_ShippingInfoPostcode: String { return self._s[2179]! }
- public var Channel_BanUser_PermissionReadMessages: String { return self._s[2180]! }
- public var InviteLink_Create_TimeLimitInfo: String { return self._s[2181]! }
- public var Cache_NoLimit: String { return self._s[2184]! }
- public var Conversation_EmptyPlaceholder: String { return self._s[2185]! }
- public var Privacy_GroupsAndChannels_AlwaysAllow_Placeholder: String { return self._s[2189]! }
- public var Notification_Exceptions_MessagePreviewAlwaysOff: String { return self._s[2190]! }
- public var GroupRemoved_RemoveInfo: String { return self._s[2191]! }
- public var Privacy_PaymentsClear_AllInfoCleared: String { return self._s[2192]! }
- public var Privacy_Calls_IntegrationHelp: String { return self._s[2193]! }
+ public var ChatListFolderSettings_RecommendedNewFolder: String { return self._s[2172]! }
+ public var UserInfo_ShareContact: String { return self._s[2173]! }
+ public var Passport_Identity_NamePlaceholder: String { return self._s[2174]! }
+ public var Channel_ErrorAdminsTooMuch: String { return self._s[2176]! }
+ public var Call_RateCall: String { return self._s[2177]! }
+ public var Contacts_AccessDeniedError: String { return self._s[2178]! }
+ public var Invite_ChannelsTooMuch: String { return self._s[2179]! }
+ public var CheckoutInfo_ShippingInfoPostcode: String { return self._s[2180]! }
+ public var Channel_BanUser_PermissionReadMessages: String { return self._s[2181]! }
+ public var InviteLink_Create_TimeLimitInfo: String { return self._s[2182]! }
+ public var Cache_NoLimit: String { return self._s[2185]! }
+ public var Conversation_EmptyPlaceholder: String { return self._s[2186]! }
+ public var Privacy_GroupsAndChannels_AlwaysAllow_Placeholder: String { return self._s[2190]! }
+ public var Notification_Exceptions_MessagePreviewAlwaysOff: String { return self._s[2191]! }
+ public var GroupRemoved_RemoveInfo: String { return self._s[2192]! }
+ public var Privacy_PaymentsClear_AllInfoCleared: String { return self._s[2193]! }
+ public var Privacy_Calls_IntegrationHelp: String { return self._s[2194]! }
public func PUSH_VIDEO_CALL_MISSED(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2194]!, self._r[2194]!, [_1])
+ return formatWithArgumentRanges(self._s[2195]!, self._r[2195]!, [_1])
}
- public var VoiceOver_Media_PlaybackRateFast: String { return self._s[2195]! }
- public var Theme_ThemeChanged: String { return self._s[2196]! }
- public var Privacy_GroupsAndChannels_NeverAllow: String { return self._s[2198]! }
- public var AutoDownloadSettings_MediaTypes: String { return self._s[2199]! }
+ public var VoiceOver_Media_PlaybackRateFast: String { return self._s[2196]! }
+ public var Theme_ThemeChanged: String { return self._s[2197]! }
+ public var Privacy_GroupsAndChannels_NeverAllow: String { return self._s[2199]! }
+ public var AutoDownloadSettings_MediaTypes: String { return self._s[2200]! }
public func Notification_PinnedDocumentMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2200]!, self._r[2200]!, [_0])
+ return formatWithArgumentRanges(self._s[2201]!, self._r[2201]!, [_0])
}
- public var Channel_AdminLog_InfoPanelTitle: String { return self._s[2201]! }
- public var Passport_Language_da: String { return self._s[2203]! }
- public var Chat_SlowmodeSendError: String { return self._s[2204]! }
- public var Application_Update: String { return self._s[2206]! }
- public var SocksProxySetup_SaveProxy: String { return self._s[2207]! }
+ public var Channel_AdminLog_InfoPanelTitle: String { return self._s[2202]! }
+ public var Passport_Language_da: String { return self._s[2204]! }
+ public var Chat_SlowmodeSendError: String { return self._s[2205]! }
+ public var Application_Update: String { return self._s[2207]! }
+ public var SocksProxySetup_SaveProxy: String { return self._s[2208]! }
public func PUSH_AUTH_REGION(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2208]!, self._r[2208]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2209]!, self._r[2209]!, [_1, _2])
}
- public var Privacy_AddNewPeer: String { return self._s[2210]! }
- public var Channel_DiscussionGroup_MakeHistoryPublicProceed: String { return self._s[2212]! }
- public var Channel_Members_Title: String { return self._s[2213]! }
- public var StickerPacks_ActionDelete: String { return self._s[2214]! }
- public var Conversation_ScheduledVoiceChat: String { return self._s[2215]! }
- public var Settings_LogoutConfirmationText: String { return self._s[2217]! }
- public var Chat_UnsendMyMessages: String { return self._s[2218]! }
- public var PeerInfo_ReportProfilePhoto: String { return self._s[2219]! }
- public var Conversation_EditingMessageMediaEditCurrentVideo: String { return self._s[2221]! }
- public var ChatListFilter_AddChatsTitle: String { return self._s[2222]! }
- public var Passport_FloodError: String { return self._s[2223]! }
- public var NotificationSettings_ContactJoinedInfo: String { return self._s[2224]! }
- public var SettingsSearch_Synonyms_Privacy_Data_SecretChatLinkPreview: String { return self._s[2225]! }
- public var CallSettings_TabIconDescription: String { return self._s[2226]! }
- public var Group_Setup_HistoryHeader: String { return self._s[2228]! }
+ public var Privacy_AddNewPeer: String { return self._s[2211]! }
+ public var Channel_DiscussionGroup_MakeHistoryPublicProceed: String { return self._s[2213]! }
+ public var Channel_Members_Title: String { return self._s[2214]! }
+ public var StickerPacks_ActionDelete: String { return self._s[2215]! }
+ public var Conversation_ScheduledVoiceChat: String { return self._s[2216]! }
+ public var Settings_LogoutConfirmationText: String { return self._s[2218]! }
+ public var Chat_UnsendMyMessages: String { return self._s[2219]! }
+ public var PeerInfo_ReportProfilePhoto: String { return self._s[2220]! }
+ public var Conversation_EditingMessageMediaEditCurrentVideo: String { return self._s[2222]! }
+ public var ChatListFilter_AddChatsTitle: String { return self._s[2223]! }
+ public var Passport_FloodError: String { return self._s[2224]! }
+ public var NotificationSettings_ContactJoinedInfo: String { return self._s[2225]! }
+ public var SettingsSearch_Synonyms_Privacy_Data_SecretChatLinkPreview: String { return self._s[2226]! }
+ public var CallSettings_TabIconDescription: String { return self._s[2227]! }
+ public var Group_Setup_HistoryHeader: String { return self._s[2229]! }
public func Channel_AdminLog_AllowedNewMembersToSpeak(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2229]!, self._r[2229]!, [_1])
+ return formatWithArgumentRanges(self._s[2230]!, self._r[2230]!, [_1])
}
- public var TwoStepAuth_EmailTitle: String { return self._s[2230]! }
- public var GroupInfo_Permissions_Removed: String { return self._s[2231]! }
- public var DialogList_ClearHistoryConfirmation: String { return self._s[2232]! }
- public var Contacts_Title: String { return self._s[2234]! }
+ public var TwoStepAuth_EmailTitle: String { return self._s[2231]! }
+ public var GroupInfo_Permissions_Removed: String { return self._s[2232]! }
+ public var DialogList_ClearHistoryConfirmation: String { return self._s[2233]! }
+ public var Contacts_Title: String { return self._s[2235]! }
public func Notification_Invited(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2235]!, self._r[2235]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[2236]!, self._r[2236]!, [_0, _1])
}
- public var ChatList_PeerTypeBot: String { return self._s[2238]! }
+ public var ChatList_PeerTypeBot: String { return self._s[2239]! }
public func Channel_AdminLog_SetSlowmode(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2239]!, self._r[2239]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2240]!, self._r[2240]!, [_1, _2])
}
- public var Appearance_ThemePreview_Chat_6_Text: String { return self._s[2240]! }
+ public var Appearance_ThemePreview_Chat_6_Text: String { return self._s[2241]! }
public func Time_PreciseDate_m1(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2241]!, self._r[2241]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[2242]!, self._r[2242]!, [_1, _2, _3])
}
- public var Camera_PhotoMode: String { return self._s[2243]! }
+ public var Camera_PhotoMode: String { return self._s[2244]! }
public func PUSH_MESSAGE_GAME_SCORE(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2244]!, self._r[2244]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[2245]!, self._r[2245]!, [_1, _2, _3])
}
- public var ContactInfo_PhoneLabelPager: String { return self._s[2245]! }
- public var SettingsSearch_Synonyms_FAQ: String { return self._s[2246]! }
- public var Call_CallAgain: String { return self._s[2247]! }
- public var TwoStepAuth_PasswordSet: String { return self._s[2248]! }
- public var VoiceChat_EditDescriptionPlaceholder: String { return self._s[2249]! }
+ public var ContactInfo_PhoneLabelPager: String { return self._s[2246]! }
+ public var SettingsSearch_Synonyms_FAQ: String { return self._s[2247]! }
+ public var Call_CallAgain: String { return self._s[2248]! }
+ public var TwoStepAuth_PasswordSet: String { return self._s[2249]! }
+ public var VoiceChat_EditDescriptionPlaceholder: String { return self._s[2250]! }
public func Channel_Management_RestrictedBy(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2250]!, self._r[2250]!, [_0])
+ return formatWithArgumentRanges(self._s[2251]!, self._r[2251]!, [_0])
}
- public var GroupInfo_InviteLink_RevokeAlert_Success: String { return self._s[2251]! }
- public var ClearCache_FreeSpaceDescription: String { return self._s[2252]! }
- public var Permissions_ContactsAllowInSettings_v0: String { return self._s[2253]! }
- public var Group_LeaveGroup: String { return self._s[2254]! }
- public var Channel_Setup_LinkTypePrivate: String { return self._s[2256]! }
- public var GroupInfo_LabelAdmin: String { return self._s[2258]! }
- public var CheckoutInfo_ErrorStateInvalid: String { return self._s[2260]! }
- public var Notification_PassportValuePersonalDetails: String { return self._s[2261]! }
+ public var GroupInfo_InviteLink_RevokeAlert_Success: String { return self._s[2252]! }
+ public var ClearCache_FreeSpaceDescription: String { return self._s[2253]! }
+ public var Permissions_ContactsAllowInSettings_v0: String { return self._s[2254]! }
+ public var Group_LeaveGroup: String { return self._s[2255]! }
+ public var Channel_Setup_LinkTypePrivate: String { return self._s[2257]! }
+ public var GroupInfo_LabelAdmin: String { return self._s[2259]! }
+ public var CheckoutInfo_ErrorStateInvalid: String { return self._s[2261]! }
+ public var Notification_PassportValuePersonalDetails: String { return self._s[2262]! }
public func WebSearch_SearchNoResultsDescription(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2262]!, self._r[2262]!, [_0])
+ return formatWithArgumentRanges(self._s[2263]!, self._r[2263]!, [_0])
}
- public var Stats_GroupNewMembersBySourceTitle: String { return self._s[2263]! }
- public var Appearance_Preview: String { return self._s[2264]! }
- public var VoiceOver_Chat_Contact: String { return self._s[2265]! }
- public var Passport_Language_th: String { return self._s[2266]! }
- public var PhotoEditor_CropAspectRatioOriginal: String { return self._s[2268]! }
- public var LastSeen_Offline: String { return self._s[2271]! }
- public var Map_OpenInHereMaps: String { return self._s[2272]! }
- public var SettingsSearch_Synonyms_Data_AutoplayVideos: String { return self._s[2273]! }
- public var InviteLink_ContextEdit: String { return self._s[2275]! }
- public var AutoDownloadSettings_Reset: String { return self._s[2276]! }
- public var Conversation_SendMessage_SetReminder: String { return self._s[2277]! }
- public var Channel_AdminLog_EmptyMessageText: String { return self._s[2278]! }
+ public var Stats_GroupNewMembersBySourceTitle: String { return self._s[2264]! }
+ public var Appearance_Preview: String { return self._s[2265]! }
+ public var VoiceOver_Chat_Contact: String { return self._s[2266]! }
+ public var Passport_Language_th: String { return self._s[2267]! }
+ public var PhotoEditor_CropAspectRatioOriginal: String { return self._s[2269]! }
+ public var LastSeen_Offline: String { return self._s[2272]! }
+ public var Map_OpenInHereMaps: String { return self._s[2273]! }
+ public var SettingsSearch_Synonyms_Data_AutoplayVideos: String { return self._s[2274]! }
+ public var InviteLink_ContextEdit: String { return self._s[2276]! }
+ public var AutoDownloadSettings_Reset: String { return self._s[2277]! }
+ public var Conversation_SendMessage_SetReminder: String { return self._s[2278]! }
+ public var Channel_AdminLog_EmptyMessageText: String { return self._s[2279]! }
public func AddContact_StatusSuccess(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2279]!, self._r[2279]!, [_0])
- }
- public func AuthCode_Alert(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[2280]!, self._r[2280]!, [_0])
}
- public var Passport_Identity_EditDriversLicense: String { return self._s[2281]! }
- public var ChatListFolder_NameNonMuted: String { return self._s[2282]! }
- public var Username_Placeholder: String { return self._s[2283]! }
+ public func AuthCode_Alert(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[2281]!, self._r[2281]!, [_0])
+ }
+ public var Passport_Identity_EditDriversLicense: String { return self._s[2282]! }
+ public var ChatListFolder_NameNonMuted: String { return self._s[2283]! }
+ public var Username_Placeholder: String { return self._s[2284]! }
public func PUSH_ALBUM(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2284]!, self._r[2284]!, [_1])
+ return formatWithArgumentRanges(self._s[2285]!, self._r[2285]!, [_1])
}
- public var Passport_Language_it: String { return self._s[2285]! }
- public var Checkout_NewCard_SaveInfo: String { return self._s[2286]! }
+ public var Passport_Language_it: String { return self._s[2286]! }
+ public var Checkout_NewCard_SaveInfo: String { return self._s[2287]! }
public func Channel_OwnershipTransfer_DescriptionInfo(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2287]!, self._r[2287]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2288]!, self._r[2288]!, [_1, _2])
}
- public var NotificationsSound_Pulse: String { return self._s[2288]! }
- public var VoiceOver_DismissContextMenu: String { return self._s[2290]! }
- public var MessagePoll_NoVotes: String { return self._s[2293]! }
- public var Message_Wallpaper: String { return self._s[2294]! }
- public var Conversation_JoinVoiceChat: String { return self._s[2295]! }
- public var Appearance_Other: String { return self._s[2296]! }
- public var Passport_Identity_NativeNameHelp: String { return self._s[2298]! }
- public var Group_PublicLink_Placeholder: String { return self._s[2302]! }
- public var Appearance_ThemePreview_ChatList_2_Text: String { return self._s[2303]! }
- public var VoiceOver_Recording_StopAndPreview: String { return self._s[2304]! }
- public var ChatListFolder_NameBots: String { return self._s[2305]! }
- public var Conversation_StopPollConfirmation: String { return self._s[2306]! }
- public var UserInfo_DeleteContact: String { return self._s[2307]! }
+ public var NotificationsSound_Pulse: String { return self._s[2289]! }
+ public var VoiceOver_DismissContextMenu: String { return self._s[2291]! }
+ public var MessagePoll_NoVotes: String { return self._s[2294]! }
+ public var Message_Wallpaper: String { return self._s[2295]! }
+ public var Conversation_JoinVoiceChat: String { return self._s[2296]! }
+ public var Appearance_Other: String { return self._s[2297]! }
+ public var Passport_Identity_NativeNameHelp: String { return self._s[2299]! }
+ public var Group_PublicLink_Placeholder: String { return self._s[2303]! }
+ public var Appearance_ThemePreview_ChatList_2_Text: String { return self._s[2304]! }
+ public var VoiceOver_Recording_StopAndPreview: String { return self._s[2305]! }
+ public var ChatListFolder_NameBots: String { return self._s[2306]! }
+ public var Conversation_StopPollConfirmation: String { return self._s[2307]! }
+ public var UserInfo_DeleteContact: String { return self._s[2308]! }
public func Time_MonthOfYear_m11(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2308]!, self._r[2308]!, [_0])
+ return formatWithArgumentRanges(self._s[2309]!, self._r[2309]!, [_0])
}
- public var Wallpaper_Wallpaper: String { return self._s[2310]! }
+ public var Wallpaper_Wallpaper: String { return self._s[2311]! }
public func PUSH_MESSAGE_NOTEXT(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2311]!, self._r[2311]!, [_1])
+ return formatWithArgumentRanges(self._s[2312]!, self._r[2312]!, [_1])
}
- public var LoginPassword_ForgotPassword: String { return self._s[2312]! }
- public var FeaturedStickerPacks_Title: String { return self._s[2313]! }
- public var Paint_Pen: String { return self._s[2314]! }
- public var Channel_AdminLogFilter_EventsInfo: String { return self._s[2315]! }
- public var ChatListFolderSettings_Info: String { return self._s[2316]! }
- public var FastTwoStepSetup_HintPlaceholder: String { return self._s[2317]! }
- public var PhotoEditor_CurvesAll: String { return self._s[2319]! }
+ public var LoginPassword_ForgotPassword: String { return self._s[2313]! }
+ public var FeaturedStickerPacks_Title: String { return self._s[2314]! }
+ public var Paint_Pen: String { return self._s[2315]! }
+ public var Channel_AdminLogFilter_EventsInfo: String { return self._s[2316]! }
+ public var ChatListFolderSettings_Info: String { return self._s[2317]! }
+ public var FastTwoStepSetup_HintPlaceholder: String { return self._s[2318]! }
+ public var PhotoEditor_CurvesAll: String { return self._s[2320]! }
public func Time_PreciseDate_m12(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2321]!, self._r[2321]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[2322]!, self._r[2322]!, [_1, _2, _3])
}
- public var Passport_Address_TypeRentalAgreement: String { return self._s[2323]! }
- public var Message_ImageExpired: String { return self._s[2324]! }
- public var Call_ConnectionErrorMessage: String { return self._s[2325]! }
- public var SearchImages_NoImagesFound: String { return self._s[2327]! }
- public var PeerInfo_PaneGifs: String { return self._s[2328]! }
- public var Passport_DeletePersonalDetailsConfirmation: String { return self._s[2329]! }
- public var EnterPasscode_RepeatNewPasscode: String { return self._s[2330]! }
- public var PhotoEditor_VignetteTool: String { return self._s[2331]! }
- public var Passport_Language_dz: String { return self._s[2332]! }
- public var Notifications_ChannelNotificationsHelp: String { return self._s[2333]! }
- public var Conversation_BlockUser: String { return self._s[2334]! }
- public var GroupPermission_PermissionDisabledByDefault: String { return self._s[2337]! }
- public var TwoStepAuth_CancelResetText: String { return self._s[2339]! }
- public var Group_OwnershipTransfer_ErrorAdminsTooMuch: String { return self._s[2340]! }
+ public var Passport_Address_TypeRentalAgreement: String { return self._s[2324]! }
+ public var Message_ImageExpired: String { return self._s[2325]! }
+ public var Call_ConnectionErrorMessage: String { return self._s[2326]! }
+ public var SearchImages_NoImagesFound: String { return self._s[2328]! }
+ public var PeerInfo_PaneGifs: String { return self._s[2329]! }
+ public var Passport_DeletePersonalDetailsConfirmation: String { return self._s[2330]! }
+ public var EnterPasscode_RepeatNewPasscode: String { return self._s[2331]! }
+ public var PhotoEditor_VignetteTool: String { return self._s[2332]! }
+ public var Passport_Language_dz: String { return self._s[2333]! }
+ public var Notifications_ChannelNotificationsHelp: String { return self._s[2334]! }
+ public var Conversation_BlockUser: String { return self._s[2335]! }
+ public var GroupPermission_PermissionDisabledByDefault: String { return self._s[2338]! }
+ public var TwoStepAuth_CancelResetText: String { return self._s[2340]! }
+ public var Group_OwnershipTransfer_ErrorAdminsTooMuch: String { return self._s[2341]! }
public func Time_MonthOfYear_m8(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2341]!, self._r[2341]!, [_0])
+ return formatWithArgumentRanges(self._s[2342]!, self._r[2342]!, [_0])
}
- public var KeyCommand_NewMessage: String { return self._s[2342]! }
- public var EditTheme_Edit_Preview_IncomingReplyText: String { return self._s[2345]! }
+ public var KeyCommand_NewMessage: String { return self._s[2343]! }
+ public var EditTheme_Edit_Preview_IncomingReplyText: String { return self._s[2346]! }
public func PUSH_CHAT_MESSAGE_GEO(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2347]!, self._r[2347]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2348]!, self._r[2348]!, [_1, _2])
}
- public var ContactList_Context_StartSecretChat: String { return self._s[2348]! }
- public var VoiceOver_Chat_File: String { return self._s[2349]! }
- public var ChatList_EditFolder: String { return self._s[2351]! }
- public var Appearance_BubbleCorners_Title: String { return self._s[2352]! }
- public var PeerInfo_PaneAudio: String { return self._s[2353]! }
- public var ChatListFolder_CategoryContacts: String { return self._s[2355]! }
- public var VoiceOver_ScheduledMessages: String { return self._s[2356]! }
+ public var ContactList_Context_StartSecretChat: String { return self._s[2349]! }
+ public var VoiceOver_Chat_File: String { return self._s[2350]! }
+ public var ChatList_EditFolder: String { return self._s[2352]! }
+ public var Appearance_BubbleCorners_Title: String { return self._s[2353]! }
+ public var PeerInfo_PaneAudio: String { return self._s[2354]! }
+ public var ChatListFolder_CategoryContacts: String { return self._s[2356]! }
+ public var VoiceOver_ScheduledMessages: String { return self._s[2357]! }
public func Login_InvalidPhoneEmailBody(_ _1: String, _ _2: String, _ _3: String, _ _4: String, _ _5: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2357]!, self._r[2357]!, [_1, _2, _3, _4, _5])
+ return formatWithArgumentRanges(self._s[2358]!, self._r[2358]!, [_1, _2, _3, _4, _5])
}
- public var ChatList_PeerTypeChannel: String { return self._s[2358]! }
- public var VoiceOver_Navigation_Search: String { return self._s[2359]! }
- public var Settings_Search: String { return self._s[2360]! }
- public var WallpaperSearch_ColorYellow: String { return self._s[2361]! }
- public var Login_PhoneBannedError: String { return self._s[2362]! }
- public var KeyCommand_JumpToNextChat: String { return self._s[2363]! }
- public var Passport_Language_fa: String { return self._s[2364]! }
- public var Settings_About: String { return self._s[2365]! }
- public var AutoDownloadSettings_MaxFileSize: String { return self._s[2366]! }
- public var Channel_AdminLog_InfoPanelChannelAlertText: String { return self._s[2367]! }
- public var AutoDownloadSettings_DataUsageHigh: String { return self._s[2368]! }
+ public var ChatList_PeerTypeChannel: String { return self._s[2359]! }
+ public var VoiceOver_Navigation_Search: String { return self._s[2360]! }
+ public var Settings_Search: String { return self._s[2361]! }
+ public var WallpaperSearch_ColorYellow: String { return self._s[2362]! }
+ public var Login_PhoneBannedError: String { return self._s[2363]! }
+ public var KeyCommand_JumpToNextChat: String { return self._s[2364]! }
+ public var Passport_Language_fa: String { return self._s[2365]! }
+ public var Settings_About: String { return self._s[2366]! }
+ public var AutoDownloadSettings_MaxFileSize: String { return self._s[2367]! }
+ public var Channel_AdminLog_InfoPanelChannelAlertText: String { return self._s[2368]! }
+ public var AutoDownloadSettings_DataUsageHigh: String { return self._s[2369]! }
public func PUSH_CHAT_MESSAGE_TEXT(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2369]!, self._r[2369]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[2370]!, self._r[2370]!, [_1, _2, _3])
}
- public var Common_OK: String { return self._s[2370]! }
- public var Contacts_SortBy: String { return self._s[2371]! }
- public var ImportStickerPack_LinkTaken: String { return self._s[2372]! }
- public var AutoNightTheme_PreferredTheme: String { return self._s[2373]! }
+ public var Common_OK: String { return self._s[2371]! }
+ public var Contacts_SortBy: String { return self._s[2372]! }
+ public var ImportStickerPack_LinkTaken: String { return self._s[2373]! }
+ public var AutoNightTheme_PreferredTheme: String { return self._s[2374]! }
public func AutoDownloadSettings_OnFor(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2375]!, self._r[2375]!, [_0])
+ return formatWithArgumentRanges(self._s[2376]!, self._r[2376]!, [_0])
}
- public var CallFeedback_IncludeLogs: String { return self._s[2378]! }
+ public var CallFeedback_IncludeLogs: String { return self._s[2379]! }
public func External_OpenIn(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2379]!, self._r[2379]!, [_0])
+ return formatWithArgumentRanges(self._s[2380]!, self._r[2380]!, [_0])
}
- public var ImportStickerPack_ChooseLink: String { return self._s[2381]! }
- public var Passcode_AppLockedAlert: String { return self._s[2382]! }
- public var TwoStepAuth_SetupPasswordTitle: String { return self._s[2383]! }
- public var Channel_NotificationLoading: String { return self._s[2385]! }
- public var Passport_Identity_DocumentNumber: String { return self._s[2386]! }
- public var VoiceOver_Chat_PagePreview: String { return self._s[2387]! }
- public var VoiceOver_Chat_OpenHint: String { return self._s[2388]! }
- public var Weekday_ShortFriday: String { return self._s[2389]! }
- public var Conversation_TitleMute: String { return self._s[2390]! }
- public var SettingsSearch_Synonyms_Notifications_GroupNotificationsSound: String { return self._s[2391]! }
- public var ScheduledMessages_PollUnavailable: String { return self._s[2392]! }
- public var DialogList_LanguageTooltip: String { return self._s[2394]! }
- public var BroadcastGroups_IntroTitle: String { return self._s[2395]! }
- public var Channel_AdminLogFilter_EventsPinned: String { return self._s[2396]! }
+ public var ImportStickerPack_ChooseLink: String { return self._s[2382]! }
+ public var Passcode_AppLockedAlert: String { return self._s[2383]! }
+ public var TwoStepAuth_SetupPasswordTitle: String { return self._s[2384]! }
+ public var Channel_NotificationLoading: String { return self._s[2386]! }
+ public var Passport_Identity_DocumentNumber: String { return self._s[2387]! }
+ public var VoiceOver_Chat_PagePreview: String { return self._s[2388]! }
+ public var VoiceOver_Chat_OpenHint: String { return self._s[2389]! }
+ public var Weekday_ShortFriday: String { return self._s[2390]! }
+ public var Conversation_TitleMute: String { return self._s[2391]! }
+ public var SettingsSearch_Synonyms_Notifications_GroupNotificationsSound: String { return self._s[2392]! }
+ public var ScheduledMessages_PollUnavailable: String { return self._s[2393]! }
+ public var DialogList_LanguageTooltip: String { return self._s[2395]! }
+ public var BroadcastGroups_IntroTitle: String { return self._s[2396]! }
+ public var Channel_AdminLogFilter_EventsPinned: String { return self._s[2397]! }
public func DialogList_SingleUploadingVideoSuffix(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2397]!, self._r[2397]!, [_0])
+ return formatWithArgumentRanges(self._s[2398]!, self._r[2398]!, [_0])
}
- public var TwoStepAuth_SetupResendEmailCodeAlert: String { return self._s[2399]! }
- public var Privacy_Calls_AlwaysAllow_Title: String { return self._s[2400]! }
- public var Settings_EditVideo: String { return self._s[2401]! }
- public var VoiceOver_Common_Off: String { return self._s[2402]! }
- public var Stickers_FrequentlyUsed: String { return self._s[2403]! }
- public var GroupPermission_Title: String { return self._s[2404]! }
- public var AccessDenied_VideoMessageCamera: String { return self._s[2405]! }
- public var Appearance_ThemeCarouselDay: String { return self._s[2406]! }
+ public var TwoStepAuth_SetupResendEmailCodeAlert: String { return self._s[2400]! }
+ public var Privacy_Calls_AlwaysAllow_Title: String { return self._s[2401]! }
+ public var Settings_EditVideo: String { return self._s[2402]! }
+ public var VoiceOver_Common_Off: String { return self._s[2403]! }
+ public var Stickers_FrequentlyUsed: String { return self._s[2404]! }
+ public var GroupPermission_Title: String { return self._s[2405]! }
+ public var AccessDenied_VideoMessageCamera: String { return self._s[2406]! }
+ public var Appearance_ThemeCarouselDay: String { return self._s[2407]! }
public func PUSH_CHAT_MESSAGE_AUDIO(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2407]!, self._r[2407]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2408]!, self._r[2408]!, [_1, _2])
}
- public var Passport_Identity_DocumentNumberPlaceholder: String { return self._s[2408]! }
- public var Tour_Title6: String { return self._s[2409]! }
- public var EmptyGroupInfo_Title: String { return self._s[2410]! }
+ public var Passport_Identity_DocumentNumberPlaceholder: String { return self._s[2409]! }
+ public var Tour_Title6: String { return self._s[2410]! }
+ public var EmptyGroupInfo_Title: String { return self._s[2411]! }
public func Channel_AdminLog_MessageToggleSignaturesOn(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2411]!, self._r[2411]!, [_0])
+ return formatWithArgumentRanges(self._s[2412]!, self._r[2412]!, [_0])
}
- public var Passport_Language_sk: String { return self._s[2412]! }
- public var VoiceOver_Chat_YourAnonymousPoll: String { return self._s[2413]! }
- public var TwoFactorRemember_WrongPassword: String { return self._s[2414]! }
- public var Preview_SaveToCameraRoll: String { return self._s[2415]! }
+ public var Passport_Language_sk: String { return self._s[2413]! }
+ public var VoiceOver_Chat_YourAnonymousPoll: String { return self._s[2414]! }
+ public var TwoFactorRemember_WrongPassword: String { return self._s[2415]! }
+ public var Preview_SaveToCameraRoll: String { return self._s[2416]! }
public func VoiceChat_YouCanNowSpeakIn(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2416]!, self._r[2416]!, [_0])
+ return formatWithArgumentRanges(self._s[2417]!, self._r[2417]!, [_0])
}
- public var LogoutOptions_SetPasscodeTitle: String { return self._s[2417]! }
- public var Passport_Address_TypeUtilityBillUploadScan: String { return self._s[2418]! }
- public var Conversation_ContextMenuMore: String { return self._s[2419]! }
- public var Conversation_ForwardAuthorHiddenTooltip: String { return self._s[2420]! }
- public var Channel_AdminLog_CanBeAnonymous: String { return self._s[2421]! }
- public var CallFeedback_ReasonSilentLocal: String { return self._s[2423]! }
+ public var LogoutOptions_SetPasscodeTitle: String { return self._s[2418]! }
+ public var Passport_Address_TypeUtilityBillUploadScan: String { return self._s[2419]! }
+ public var Conversation_ContextMenuMore: String { return self._s[2420]! }
+ public var Conversation_ForwardAuthorHiddenTooltip: String { return self._s[2421]! }
+ public var Channel_AdminLog_CanBeAnonymous: String { return self._s[2422]! }
+ public var CallFeedback_ReasonSilentLocal: String { return self._s[2424]! }
public func Channel_AdminLog_UnmutedMutedParticipant(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2424]!, self._r[2424]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2425]!, self._r[2425]!, [_1, _2])
}
- public var UserInfo_NotificationsDisable: String { return self._s[2425]! }
+ public var UserInfo_NotificationsDisable: String { return self._s[2426]! }
public func Channel_AdminLog_EmptyFilterQueryText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2427]!, self._r[2427]!, [_0])
+ return formatWithArgumentRanges(self._s[2428]!, self._r[2428]!, [_0])
}
- public var SettingsSearch_Synonyms_EditProfile_Bio: String { return self._s[2428]! }
+ public var SettingsSearch_Synonyms_EditProfile_Bio: String { return self._s[2429]! }
public func Date_ChatDateHeader(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2430]!, self._r[2430]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2431]!, self._r[2431]!, [_1, _2])
}
- public var WallpaperSearch_ColorPrefix: String { return self._s[2431]! }
+ public var WallpaperSearch_ColorPrefix: String { return self._s[2432]! }
public func Message_ForwardedPsa_covid(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2432]!, self._r[2432]!, [_0])
+ return formatWithArgumentRanges(self._s[2433]!, self._r[2433]!, [_0])
}
- public var VoiceChat_NoiseSuppressionDisabled: String { return self._s[2434]! }
- public var Conversation_RestrictedMedia: String { return self._s[2435]! }
- public var Group_MessageVideoUpdated: String { return self._s[2436]! }
- public var NetworkUsageSettings_ResetStatsConfirmation: String { return self._s[2437]! }
- public var GroupInfo_DeleteAndExit: String { return self._s[2438]! }
- public var TwoFactorSetup_Email_Action: String { return self._s[2439]! }
- public var TwoFactorSetup_ResetDone_TitleNoPassword: String { return self._s[2440]! }
- public var Media_ShareThisVideo: String { return self._s[2442]! }
- public var DialogList_Replies: String { return self._s[2444]! }
+ public var VoiceChat_NoiseSuppressionDisabled: String { return self._s[2435]! }
+ public var Conversation_RestrictedMedia: String { return self._s[2436]! }
+ public var Group_MessageVideoUpdated: String { return self._s[2437]! }
+ public var NetworkUsageSettings_ResetStatsConfirmation: String { return self._s[2438]! }
+ public var GroupInfo_DeleteAndExit: String { return self._s[2439]! }
+ public var TwoFactorSetup_Email_Action: String { return self._s[2440]! }
+ public var TwoFactorSetup_ResetDone_TitleNoPassword: String { return self._s[2441]! }
+ public var Media_ShareThisVideo: String { return self._s[2443]! }
+ public var DialogList_Replies: String { return self._s[2445]! }
public func Conversation_Moderate_DeleteAllMessages(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2445]!, self._r[2445]!, [_0])
+ return formatWithArgumentRanges(self._s[2446]!, self._r[2446]!, [_0])
}
- public var CheckoutInfo_ShippingInfoAddress1: String { return self._s[2446]! }
- public var Watch_Suggestion_OnMyWay: String { return self._s[2447]! }
- public var ImportStickerPack_ImportingStickers: String { return self._s[2448]! }
- public var CheckoutInfo_ShippingInfoAddress2: String { return self._s[2449]! }
+ public var CheckoutInfo_ShippingInfoAddress1: String { return self._s[2447]! }
+ public var Watch_Suggestion_OnMyWay: String { return self._s[2448]! }
+ public var ImportStickerPack_ImportingStickers: String { return self._s[2449]! }
+ public var CheckoutInfo_ShippingInfoAddress2: String { return self._s[2450]! }
public func PUSH_PINNED_POLL(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2450]!, self._r[2450]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2451]!, self._r[2451]!, [_1, _2])
}
public func GroupInfo_InvitationLinkAcceptChannel(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2451]!, self._r[2451]!, [_0])
+ return formatWithArgumentRanges(self._s[2452]!, self._r[2452]!, [_0])
}
- public var Channel_EditAdmin_PermissinAddAdminOff: String { return self._s[2452]! }
- public var ChatAdmins_AllMembersAreAdminsOnHelp: String { return self._s[2453]! }
- public var ChatList_Search_NoResultsFitlerMedia: String { return self._s[2454]! }
- public var Channel_Members_InviteLink: String { return self._s[2455]! }
- public var Conversation_TapAndHoldToRecord: String { return self._s[2456]! }
- public var WatchRemote_AlertText: String { return self._s[2457]! }
+ public var Channel_EditAdmin_PermissinAddAdminOff: String { return self._s[2453]! }
+ public var ChatAdmins_AllMembersAreAdminsOnHelp: String { return self._s[2454]! }
+ public var ChatList_Search_NoResultsFitlerMedia: String { return self._s[2455]! }
+ public var Channel_Members_InviteLink: String { return self._s[2456]! }
+ public var Conversation_TapAndHoldToRecord: String { return self._s[2457]! }
+ public var WatchRemote_AlertText: String { return self._s[2458]! }
public func Channel_DiscussionGroup_PrivateChannelLink(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2458]!, self._r[2458]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2459]!, self._r[2459]!, [_1, _2])
}
- public var Conversation_Pin: String { return self._s[2459]! }
- public var InfoPlist_NSMicrophoneUsageDescription: String { return self._s[2460]! }
- public var Stickers_RemoveFromFavorites: String { return self._s[2461]! }
- public var Conversation_CancelForwardTitle: String { return self._s[2462]! }
+ public var Conversation_Pin: String { return self._s[2460]! }
+ public var InfoPlist_NSMicrophoneUsageDescription: String { return self._s[2461]! }
+ public var Stickers_RemoveFromFavorites: String { return self._s[2462]! }
+ public var Conversation_CancelForwardTitle: String { return self._s[2463]! }
public func Notification_PinnedPollMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2463]!, self._r[2463]!, [_0])
+ return formatWithArgumentRanges(self._s[2464]!, self._r[2464]!, [_0])
}
- public var Appearance_AppIconFilled: String { return self._s[2464]! }
- public var StickerPack_ErrorNotFound: String { return self._s[2465]! }
+ public var Appearance_AppIconFilled: String { return self._s[2465]! }
+ public var StickerPack_ErrorNotFound: String { return self._s[2466]! }
public func Channel_AdminLog_MessageRestrictedName(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2466]!, self._r[2466]!, [_1])
+ return formatWithArgumentRanges(self._s[2467]!, self._r[2467]!, [_1])
}
- public var Passport_Identity_AddIdentityCard: String { return self._s[2467]! }
+ public var Passport_Identity_AddIdentityCard: String { return self._s[2468]! }
public func PUSH_CHANNEL_MESSAGE_DOC(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2469]!, self._r[2469]!, [_1])
+ return formatWithArgumentRanges(self._s[2470]!, self._r[2470]!, [_1])
}
- public var Call_Camera: String { return self._s[2470]! }
- public var GroupInfo_InviteLink_RevokeAlert_Text: String { return self._s[2471]! }
- public var Group_Location_Info: String { return self._s[2472]! }
- public var Watch_LastSeen_WithinAMonth: String { return self._s[2473]! }
- public var UserInfo_NotificationsDefaultEnabled: String { return self._s[2474]! }
+ public var Call_Camera: String { return self._s[2471]! }
+ public var GroupInfo_InviteLink_RevokeAlert_Text: String { return self._s[2472]! }
+ public var Group_Location_Info: String { return self._s[2473]! }
+ public var Watch_LastSeen_WithinAMonth: String { return self._s[2474]! }
+ public var UserInfo_NotificationsDefaultEnabled: String { return self._s[2475]! }
public func DialogList_PinLimitError(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2475]!, self._r[2475]!, [_0])
+ return formatWithArgumentRanges(self._s[2476]!, self._r[2476]!, [_0])
}
- public var Weekday_Yesterday: String { return self._s[2476]! }
- public var TwoStepAuth_SetupPasswordEnterPasswordNew: String { return self._s[2477]! }
- public var InviteLink_Create_UsersLimit: String { return self._s[2478]! }
+ public var Weekday_Yesterday: String { return self._s[2477]! }
+ public var TwoStepAuth_SetupPasswordEnterPasswordNew: String { return self._s[2478]! }
+ public var InviteLink_Create_UsersLimit: String { return self._s[2479]! }
public func Notification_VoiceChatScheduledTodayChannel(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2479]!, self._r[2479]!, [_0])
+ return formatWithArgumentRanges(self._s[2480]!, self._r[2480]!, [_0])
}
- public var ArchivedPacksAlert_Title: String { return self._s[2480]! }
- public var PeerInfo_PaneMembers: String { return self._s[2481]! }
- public var PhotoEditor_SelectCoverFrame: String { return self._s[2482]! }
+ public var ArchivedPacksAlert_Title: String { return self._s[2481]! }
+ public var PeerInfo_PaneMembers: String { return self._s[2482]! }
+ public var PhotoEditor_SelectCoverFrame: String { return self._s[2483]! }
public func Location_ProximityAlertSetTextGroup(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2483]!, self._r[2483]!, [_0])
+ return formatWithArgumentRanges(self._s[2484]!, self._r[2484]!, [_0])
}
- public var ContactInfo_PhoneLabelMain: String { return self._s[2484]! }
+ public var ContactInfo_PhoneLabelMain: String { return self._s[2485]! }
public func Time_PreciseDate_m7(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2485]!, self._r[2485]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[2486]!, self._r[2486]!, [_1, _2, _3])
}
- public var TwoFactorSetup_EmailVerification_ChangeAction: String { return self._s[2486]! }
- public var Channel_DiscussionGroup: String { return self._s[2487]! }
- public var EditTheme_Edit_Preview_IncomingReplyName: String { return self._s[2488]! }
- public var InviteLink_Create_TimeLimit: String { return self._s[2490]! }
- public var Channel_EditAdmin_PermissionsHeader: String { return self._s[2491]! }
- public var VoiceOver_MessageContextForward: String { return self._s[2492]! }
- public var SocksProxySetup_TypeNone: String { return self._s[2493]! }
- public var CreatePoll_MultipleChoiceQuizAlert: String { return self._s[2495]! }
- public var ProfilePhoto_OpenInEditor: String { return self._s[2497]! }
- public var WallpaperSearch_ColorPurple: String { return self._s[2498]! }
- public var ChatListFolder_IncludeChatsTitle: String { return self._s[2499]! }
- public var Group_Username_InvalidTooShort: String { return self._s[2500]! }
- public var Location_ProximityNotification_DistanceM: String { return self._s[2501]! }
- public var VoiceChat_EditTitleText: String { return self._s[2502]! }
+ public var TwoFactorSetup_EmailVerification_ChangeAction: String { return self._s[2487]! }
+ public var Channel_DiscussionGroup: String { return self._s[2488]! }
+ public var EditTheme_Edit_Preview_IncomingReplyName: String { return self._s[2489]! }
+ public var InviteLink_Create_TimeLimit: String { return self._s[2491]! }
+ public var Channel_EditAdmin_PermissionsHeader: String { return self._s[2492]! }
+ public var VoiceOver_MessageContextForward: String { return self._s[2493]! }
+ public var SocksProxySetup_TypeNone: String { return self._s[2494]! }
+ public var CreatePoll_MultipleChoiceQuizAlert: String { return self._s[2496]! }
+ public var ProfilePhoto_OpenInEditor: String { return self._s[2498]! }
+ public var WallpaperSearch_ColorPurple: String { return self._s[2499]! }
+ public var ChatListFolder_IncludeChatsTitle: String { return self._s[2500]! }
+ public var Group_Username_InvalidTooShort: String { return self._s[2501]! }
+ public var Location_ProximityNotification_DistanceM: String { return self._s[2502]! }
+ public var VoiceChat_EditTitleText: String { return self._s[2503]! }
public func Login_EmailPhoneBody(_ _0: String, _ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2503]!, self._r[2503]!, [_0, _1, _2])
+ return formatWithArgumentRanges(self._s[2504]!, self._r[2504]!, [_0, _1, _2])
}
- public var Passport_Language_tk: String { return self._s[2504]! }
- public var ConvertToSupergroup_Title: String { return self._s[2505]! }
- public var Channel_BanUser_PermissionEmbedLinks: String { return self._s[2506]! }
- public var Cache_KeepMediaHelp: String { return self._s[2507]! }
- public var Channel_Management_Title: String { return self._s[2508]! }
+ public var Passport_Language_tk: String { return self._s[2505]! }
+ public var ConvertToSupergroup_Title: String { return self._s[2506]! }
+ public var Channel_BanUser_PermissionEmbedLinks: String { return self._s[2507]! }
+ public var Cache_KeepMediaHelp: String { return self._s[2508]! }
+ public var Channel_Management_Title: String { return self._s[2509]! }
public func PUSH_MESSAGE_PHOTO_SECRET(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2509]!, self._r[2509]!, [_1])
+ return formatWithArgumentRanges(self._s[2510]!, self._r[2510]!, [_1])
}
- public var Conversation_ForwardChats: String { return self._s[2510]! }
- public var Passport_Language_bg: String { return self._s[2511]! }
- public var SocksProxySetup_TypeSocks: String { return self._s[2512]! }
- public var Permissions_PrivacyPolicy: String { return self._s[2513]! }
- public var VoiceOver_Chat_YourMusic: String { return self._s[2514]! }
- public var SettingsSearch_Synonyms_Notifications_ResetAllNotifications: String { return self._s[2515]! }
- public var Conversation_EmptyGifPanelPlaceholder: String { return self._s[2516]! }
- public var Conversation_ContextMenuOpenChannel: String { return self._s[2517]! }
- public var Report_AdditionalDetailsPlaceholder: String { return self._s[2518]! }
- public var Activity_UploadingVideo: String { return self._s[2519]! }
- public var PrivacyPolicy_AgeVerificationAgree: String { return self._s[2521]! }
- public var Widget_LongTapToEdit: String { return self._s[2522]! }
- public var VoiceChat_InviteLink_Listener: String { return self._s[2524]! }
- public var SocksProxySetup_Credentials: String { return self._s[2525]! }
- public var Preview_SaveGif: String { return self._s[2526]! }
- public var Cache_Photos: String { return self._s[2527]! }
- public var Channel_AdminLogFilter_EventsCalls: String { return self._s[2528]! }
- public var Conversation_ContextMenuCancelEditing: String { return self._s[2529]! }
- public var Contacts_FailedToSendInvitesMessage: String { return self._s[2530]! }
+ public var Conversation_ForwardChats: String { return self._s[2511]! }
+ public var Passport_Language_bg: String { return self._s[2512]! }
+ public var SocksProxySetup_TypeSocks: String { return self._s[2513]! }
+ public var Permissions_PrivacyPolicy: String { return self._s[2514]! }
+ public var VoiceOver_Chat_YourMusic: String { return self._s[2515]! }
+ public var SettingsSearch_Synonyms_Notifications_ResetAllNotifications: String { return self._s[2516]! }
+ public var Conversation_EmptyGifPanelPlaceholder: String { return self._s[2517]! }
+ public var Conversation_ContextMenuOpenChannel: String { return self._s[2518]! }
+ public var Report_AdditionalDetailsPlaceholder: String { return self._s[2519]! }
+ public var Activity_UploadingVideo: String { return self._s[2520]! }
+ public var PrivacyPolicy_AgeVerificationAgree: String { return self._s[2522]! }
+ public var Widget_LongTapToEdit: String { return self._s[2523]! }
+ public var VoiceChat_InviteLink_Listener: String { return self._s[2525]! }
+ public var SocksProxySetup_Credentials: String { return self._s[2526]! }
+ public var Preview_SaveGif: String { return self._s[2527]! }
+ public var Cache_Photos: String { return self._s[2528]! }
+ public var Channel_AdminLogFilter_EventsCalls: String { return self._s[2529]! }
+ public var Conversation_ContextMenuCancelEditing: String { return self._s[2530]! }
+ public var Contacts_FailedToSendInvitesMessage: String { return self._s[2531]! }
public func VoiceChat_RemoveAndBanPeerConfirmation(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2531]!, self._r[2531]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2532]!, self._r[2532]!, [_1, _2])
}
- public var Passport_Language_lt: String { return self._s[2532]! }
- public var Passport_DeleteDocument: String { return self._s[2534]! }
- public var GroupInfo_SetGroupPhotoStop: String { return self._s[2535]! }
+ public var Passport_Language_lt: String { return self._s[2533]! }
+ public var Passport_DeleteDocument: String { return self._s[2535]! }
+ public var GroupInfo_SetGroupPhotoStop: String { return self._s[2536]! }
public func Location_ProximityNotification_NotifyLong(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2536]!, self._r[2536]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2537]!, self._r[2537]!, [_1, _2])
}
- public var AccessDenied_VideoMessageMicrophone: String { return self._s[2537]! }
+ public var AccessDenied_VideoMessageMicrophone: String { return self._s[2538]! }
public func PeopleNearby_VisibleUntil(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2538]!, self._r[2538]!, [_0])
+ return formatWithArgumentRanges(self._s[2539]!, self._r[2539]!, [_0])
}
- public var AccessDenied_VideoCallCamera: String { return self._s[2539]! }
+ public var AccessDenied_VideoCallCamera: String { return self._s[2540]! }
public func Channel_AdminLog_MessageDeleted(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2540]!, self._r[2540]!, [_0])
+ return formatWithArgumentRanges(self._s[2541]!, self._r[2541]!, [_0])
}
- public var PhotoEditor_SharpenTool: String { return self._s[2541]! }
+ public var PhotoEditor_SharpenTool: String { return self._s[2542]! }
public func PUSH_CHANNEL_MESSAGE_AUDIO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2542]!, self._r[2542]!, [_1])
+ return formatWithArgumentRanges(self._s[2543]!, self._r[2543]!, [_1])
}
- public var DialogList_Unpin: String { return self._s[2543]! }
- public var Stickers_NoStickersFound: String { return self._s[2544]! }
- public var UserInfo_AddContact: String { return self._s[2546]! }
+ public var DialogList_Unpin: String { return self._s[2544]! }
+ public var Stickers_NoStickersFound: String { return self._s[2545]! }
+ public var UserInfo_AddContact: String { return self._s[2547]! }
public func AddContact_SharedContactExceptionInfo(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2548]!, self._r[2548]!, [_0])
- }
- public func Notification_PinnedLocationMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[2549]!, self._r[2549]!, [_0])
}
- public var CallFeedback_VideoReasonDistorted: String { return self._s[2550]! }
- public var Tour_Text2: String { return self._s[2551]! }
+ public func Notification_PinnedLocationMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[2550]!, self._r[2550]!, [_0])
+ }
+ public var CallFeedback_VideoReasonDistorted: String { return self._s[2551]! }
+ public var Tour_Text2: String { return self._s[2552]! }
public func Conversation_TitleCommentsFormat(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2553]!, self._r[2553]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2554]!, self._r[2554]!, [_1, _2])
}
- public var InviteLink_DeleteAllRevokedLinksAlert_Text: String { return self._s[2555]! }
- public var Paint_Delete: String { return self._s[2556]! }
+ public var InviteLink_DeleteAllRevokedLinksAlert_Text: String { return self._s[2556]! }
+ public var Paint_Delete: String { return self._s[2557]! }
public func Call_VoiceChatInProgressMessage(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2557]!, self._r[2557]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2558]!, self._r[2558]!, [_1, _2])
}
- public var SettingsSearch_Synonyms_Notifications_InAppNotificationsVibrate: String { return self._s[2558]! }
+ public var SettingsSearch_Synonyms_Notifications_InAppNotificationsVibrate: String { return self._s[2559]! }
public func PrivacySettings_LastSeenEverybodyMinus(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2560]!, self._r[2560]!, [_0])
+ return formatWithArgumentRanges(self._s[2561]!, self._r[2561]!, [_0])
}
- public var Privacy_Calls_NeverAllow_Title: String { return self._s[2561]! }
- public var Notification_CallOutgoingShort: String { return self._s[2562]! }
- public var Checkout_PasswordEntry_Title: String { return self._s[2563]! }
- public var Channel_AdminLogFilter_AdminsAll: String { return self._s[2564]! }
- public var Notification_MessageLifetime1m: String { return self._s[2565]! }
- public var BlockedUsers_AddNew: String { return self._s[2567]! }
- public var FastTwoStepSetup_EmailSection: String { return self._s[2568]! }
- public var Settings_SaveEditedPhotos: String { return self._s[2569]! }
- public var GroupInfo_GroupNamePlaceholder: String { return self._s[2570]! }
+ public var Privacy_Calls_NeverAllow_Title: String { return self._s[2562]! }
+ public var Notification_CallOutgoingShort: String { return self._s[2563]! }
+ public var Checkout_PasswordEntry_Title: String { return self._s[2564]! }
+ public var Channel_AdminLogFilter_AdminsAll: String { return self._s[2565]! }
+ public var Notification_MessageLifetime1m: String { return self._s[2566]! }
+ public var BlockedUsers_AddNew: String { return self._s[2568]! }
+ public var FastTwoStepSetup_EmailSection: String { return self._s[2569]! }
+ public var Settings_SaveEditedPhotos: String { return self._s[2570]! }
+ public var GroupInfo_GroupNamePlaceholder: String { return self._s[2571]! }
public func ImportStickerPack_Of(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2571]!, self._r[2571]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2572]!, self._r[2572]!, [_1, _2])
}
- public var Channel_AboutItem: String { return self._s[2572]! }
- public var GroupInfo_InviteLink_RevokeLink: String { return self._s[2573]! }
- public var Privacy_Calls_P2PNever: String { return self._s[2575]! }
- public var Passport_Language_uk: String { return self._s[2576]! }
- public var NetworkUsageSettings_Wifi: String { return self._s[2577]! }
- public var Conversation_Moderate_Report: String { return self._s[2578]! }
- public var Wallpaper_ResetWallpapersConfirmation: String { return self._s[2579]! }
- public var VoiceOver_Chat_SeenByRecipients: String { return self._s[2580]! }
- public var Permissions_SiriText_v0: String { return self._s[2581]! }
- public var Theme_Colors_Background: String { return self._s[2582]! }
- public var Notification_CallMissed: String { return self._s[2583]! }
- public var Stats_ZoomOut: String { return self._s[2584]! }
- public var Profile_AddToExisting: String { return self._s[2585]! }
- public var Passport_FieldAddressUploadHelp: String { return self._s[2588]! }
- public var VoiceChat_RemovePeerRemove: String { return self._s[2589]! }
- public var Undo_DeletedChannel: String { return self._s[2590]! }
+ public var Channel_AboutItem: String { return self._s[2573]! }
+ public var GroupInfo_InviteLink_RevokeLink: String { return self._s[2574]! }
+ public var Privacy_Calls_P2PNever: String { return self._s[2576]! }
+ public var Passport_Language_uk: String { return self._s[2577]! }
+ public var NetworkUsageSettings_Wifi: String { return self._s[2578]! }
+ public var Conversation_Moderate_Report: String { return self._s[2579]! }
+ public var Wallpaper_ResetWallpapersConfirmation: String { return self._s[2580]! }
+ public var VoiceOver_Chat_SeenByRecipients: String { return self._s[2581]! }
+ public var Permissions_SiriText_v0: String { return self._s[2582]! }
+ public var Theme_Colors_Background: String { return self._s[2583]! }
+ public var Notification_CallMissed: String { return self._s[2584]! }
+ public var Stats_ZoomOut: String { return self._s[2585]! }
+ public var Profile_AddToExisting: String { return self._s[2586]! }
+ public var Passport_FieldAddressUploadHelp: String { return self._s[2589]! }
+ public var VoiceChat_RemovePeerRemove: String { return self._s[2590]! }
+ public var Undo_DeletedChannel: String { return self._s[2591]! }
public func Channel_AdminLog_MessagePinned(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2591]!, self._r[2591]!, [_0])
+ return formatWithArgumentRanges(self._s[2592]!, self._r[2592]!, [_0])
}
- public var Login_ResetAccountProtected_TimerTitle: String { return self._s[2592]! }
- public var Map_LiveLocationGroupDescription: String { return self._s[2593]! }
- public var Passport_InfoFAQ_URL: String { return self._s[2594]! }
- public var IntentsSettings_SuggestedChats: String { return self._s[2597]! }
+ public var Login_ResetAccountProtected_TimerTitle: String { return self._s[2593]! }
+ public var Map_LiveLocationGroupDescription: String { return self._s[2594]! }
+ public var Passport_InfoFAQ_URL: String { return self._s[2595]! }
+ public var IntentsSettings_SuggestedChats: String { return self._s[2598]! }
public func PUSH_MESSAGE_DOC(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2598]!, self._r[2598]!, [_1])
+ return formatWithArgumentRanges(self._s[2599]!, self._r[2599]!, [_1])
}
- public var State_connecting: String { return self._s[2599]! }
- public var Passport_Identity_Country: String { return self._s[2600]! }
- public var Passport_PasswordDescription: String { return self._s[2601]! }
- public var ChatList_PsaLabel_covid: String { return self._s[2602]! }
+ public var State_connecting: String { return self._s[2600]! }
+ public var Passport_Identity_Country: String { return self._s[2601]! }
+ public var Passport_PasswordDescription: String { return self._s[2602]! }
+ public var ChatList_PsaLabel_covid: String { return self._s[2603]! }
public func PUSH_MESSAGE(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2603]!, self._r[2603]!, [_1])
+ return formatWithArgumentRanges(self._s[2604]!, self._r[2604]!, [_1])
}
- public var Contacts_AddPeopleNearby: String { return self._s[2604]! }
- public var OwnershipTransfer_SetupTwoStepAuth: String { return self._s[2605]! }
- public var ClearCache_Description: String { return self._s[2606]! }
- public var Localization_LanguageName: String { return self._s[2607]! }
+ public var Contacts_AddPeopleNearby: String { return self._s[2605]! }
+ public var OwnershipTransfer_SetupTwoStepAuth: String { return self._s[2606]! }
+ public var ClearCache_Description: String { return self._s[2607]! }
+ public var Localization_LanguageName: String { return self._s[2608]! }
public func UserInfo_UnblockConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2608]!, self._r[2608]!, [_0])
+ return formatWithArgumentRanges(self._s[2609]!, self._r[2609]!, [_0])
}
- public var Conversation_AddMembers: String { return self._s[2609]! }
- public var ChatList_TabIconFoldersTooltipEmptyFolders: String { return self._s[2610]! }
- public var UserInfo_CreateNewContact: String { return self._s[2611]! }
- public var Channel_Stickers_NotFound: String { return self._s[2613]! }
- public var Message_FakeAccount: String { return self._s[2614]! }
- public var Watch_Message_Poll: String { return self._s[2615]! }
- public var Group_Members_Title: String { return self._s[2616]! }
- public var Privacy_Forwards_WhoCanForward: String { return self._s[2617]! }
+ public var Conversation_AddMembers: String { return self._s[2610]! }
+ public var ChatList_TabIconFoldersTooltipEmptyFolders: String { return self._s[2611]! }
+ public var UserInfo_CreateNewContact: String { return self._s[2612]! }
+ public var Channel_Stickers_NotFound: String { return self._s[2614]! }
+ public var Message_FakeAccount: String { return self._s[2615]! }
+ public var Watch_Message_Poll: String { return self._s[2616]! }
+ public var Group_Members_Title: String { return self._s[2617]! }
+ public var Privacy_Forwards_WhoCanForward: String { return self._s[2618]! }
public func Notification_Kicked(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2618]!, self._r[2618]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[2619]!, self._r[2619]!, [_0, _1])
}
- public var VoiceChat_CancelConfirmationText: String { return self._s[2619]! }
- public var BroadcastGroups_Convert: String { return self._s[2620]! }
- public var Login_InfoDeletePhoto: String { return self._s[2621]! }
- public var Appearance_ThemePreview_ChatList_6_Name: String { return self._s[2622]! }
- public var InstantPage_FeedbackButton: String { return self._s[2623]! }
- public var Appearance_PreviewReplyText: String { return self._s[2624]! }
- public var Passport_FieldPhoneHelp: String { return self._s[2625]! }
- public var Group_ErrorAddTooMuchBots: String { return self._s[2626]! }
- public var Media_SendingOptionsTooltip: String { return self._s[2627]! }
- public var ScheduledMessages_ScheduledOnline: String { return self._s[2628]! }
- public var Notifications_Badge: String { return self._s[2629]! }
- public var VoiceOver_Chat_VideoMessage: String { return self._s[2630]! }
- public var TwoStepAuth_RecoveryCodeExpired: String { return self._s[2631]! }
+ public var VoiceChat_CancelConfirmationText: String { return self._s[2620]! }
+ public var BroadcastGroups_Convert: String { return self._s[2621]! }
+ public var Login_InfoDeletePhoto: String { return self._s[2622]! }
+ public var Appearance_ThemePreview_ChatList_6_Name: String { return self._s[2623]! }
+ public var InstantPage_FeedbackButton: String { return self._s[2624]! }
+ public var Appearance_PreviewReplyText: String { return self._s[2625]! }
+ public var Passport_FieldPhoneHelp: String { return self._s[2626]! }
+ public var Group_ErrorAddTooMuchBots: String { return self._s[2627]! }
+ public var Media_SendingOptionsTooltip: String { return self._s[2628]! }
+ public var ScheduledMessages_ScheduledOnline: String { return self._s[2629]! }
+ public var Notifications_Badge: String { return self._s[2630]! }
+ public var VoiceOver_Chat_VideoMessage: String { return self._s[2631]! }
+ public var TwoStepAuth_RecoveryCodeExpired: String { return self._s[2632]! }
public func Notification_PinnedPhotoMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2633]!, self._r[2633]!, [_0])
+ return formatWithArgumentRanges(self._s[2634]!, self._r[2634]!, [_0])
}
- public var Passport_InfoLearnMore: String { return self._s[2634]! }
- public var EnterPasscode_EnterTitle: String { return self._s[2635]! }
- public var Appearance_EditTheme: String { return self._s[2636]! }
- public var EditTheme_Expand_BottomInfo: String { return self._s[2637]! }
- public var Stats_FollowersTitle: String { return self._s[2638]! }
- public var Passport_Identity_SurnamePlaceholder: String { return self._s[2639]! }
- public var Channel_Subscribers_Title: String { return self._s[2640]! }
- public var Group_ErrorSupergroupConversionNotPossible: String { return self._s[2641]! }
- public var ChatImportActivity_ErrorGeneric: String { return self._s[2642]! }
- public var EditTheme_ThemeTemplateAlertTitle: String { return self._s[2643]! }
- public var EditTheme_Create_Preview_IncomingText: String { return self._s[2644]! }
- public var Conversation_AddToReadingList: String { return self._s[2645]! }
- public var VoiceChat_EditBioPlaceholder: String { return self._s[2646]! }
+ public var Passport_InfoLearnMore: String { return self._s[2635]! }
+ public var EnterPasscode_EnterTitle: String { return self._s[2636]! }
+ public var Appearance_EditTheme: String { return self._s[2637]! }
+ public var EditTheme_Expand_BottomInfo: String { return self._s[2638]! }
+ public var Stats_FollowersTitle: String { return self._s[2639]! }
+ public var Passport_Identity_SurnamePlaceholder: String { return self._s[2640]! }
+ public var Channel_Subscribers_Title: String { return self._s[2641]! }
+ public var Group_ErrorSupergroupConversionNotPossible: String { return self._s[2642]! }
+ public var ChatImportActivity_ErrorGeneric: String { return self._s[2643]! }
+ public var EditTheme_ThemeTemplateAlertTitle: String { return self._s[2644]! }
+ public var EditTheme_Create_Preview_IncomingText: String { return self._s[2645]! }
+ public var Conversation_AddToReadingList: String { return self._s[2646]! }
+ public var VoiceChat_EditBioPlaceholder: String { return self._s[2647]! }
public func Notifications_ExceptionsChangeSound(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2647]!, self._r[2647]!, [_0])
+ return formatWithArgumentRanges(self._s[2648]!, self._r[2648]!, [_0])
}
- public var Group_AdminLog_EmptyText: String { return self._s[2648]! }
- public var Passport_Identity_EditInternalPassport: String { return self._s[2649]! }
- public var Watch_Location_Current: String { return self._s[2650]! }
- public var Appearance_AppIconNew1: String { return self._s[2651]! }
- public var PrivacyPolicy_Title: String { return self._s[2652]! }
- public var Privacy_GroupsAndChannels_CustomHelp: String { return self._s[2659]! }
- public var Channel_TypeSetup_Title: String { return self._s[2663]! }
- public var Appearance_PreviewReplyAuthor: String { return self._s[2664]! }
- public var Passport_Language_ja: String { return self._s[2665]! }
- public var ReportPeer_ReasonSpam: String { return self._s[2666]! }
- public var Widget_GalleryDescription: String { return self._s[2667]! }
- public var Privacy_PaymentsClearInfoHelp: String { return self._s[2668]! }
- public var VoiceChat_ChangePhoto: String { return self._s[2670]! }
- public var Conversation_EditingMessageMediaEditCurrentPhoto: String { return self._s[2671]! }
- public var Channel_AdminLog_ChangeInfo: String { return self._s[2672]! }
- public var ChatListFolder_NameNonContacts: String { return self._s[2673]! }
+ public var Group_AdminLog_EmptyText: String { return self._s[2649]! }
+ public var Passport_Identity_EditInternalPassport: String { return self._s[2650]! }
+ public var Watch_Location_Current: String { return self._s[2651]! }
+ public var Appearance_AppIconNew1: String { return self._s[2652]! }
+ public var PrivacyPolicy_Title: String { return self._s[2653]! }
+ public var Privacy_GroupsAndChannels_CustomHelp: String { return self._s[2660]! }
+ public var Channel_TypeSetup_Title: String { return self._s[2664]! }
+ public var Appearance_PreviewReplyAuthor: String { return self._s[2665]! }
+ public var Passport_Language_ja: String { return self._s[2666]! }
+ public var ReportPeer_ReasonSpam: String { return self._s[2667]! }
+ public var Widget_GalleryDescription: String { return self._s[2668]! }
+ public var Privacy_PaymentsClearInfoHelp: String { return self._s[2669]! }
+ public var VoiceChat_ChangePhoto: String { return self._s[2671]! }
+ public var Conversation_EditingMessageMediaEditCurrentPhoto: String { return self._s[2672]! }
+ public var Channel_AdminLog_ChangeInfo: String { return self._s[2673]! }
+ public var ChatListFolder_NameNonContacts: String { return self._s[2674]! }
public func InviteLink_ExpiresIn(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2674]!, self._r[2674]!, [_0])
+ return formatWithArgumentRanges(self._s[2675]!, self._r[2675]!, [_0])
}
- public var Call_Audio: String { return self._s[2675]! }
- public var PhotoEditor_CurvesGreen: String { return self._s[2676]! }
- public var ChatList_Search_NoResultsFitlerFiles: String { return self._s[2677]! }
- public var Settings_PrivacySettings: String { return self._s[2678]! }
- public var InviteLink_UsageLimitReached: String { return self._s[2679]! }
- public var Stats_Followers: String { return self._s[2680]! }
- public var Notifications_AddExceptionTitle: String { return self._s[2681]! }
- public var TwoFactorSetup_Password_Title: String { return self._s[2682]! }
- public var ChannelMembers_WhoCanAddMembersAllHelp: String { return self._s[2683]! }
- public var OldChannels_NoticeText: String { return self._s[2684]! }
- public var Conversation_SavedMessages: String { return self._s[2685]! }
- public var Intents_ErrorLockedText: String { return self._s[2686]! }
+ public var Call_Audio: String { return self._s[2676]! }
+ public var PhotoEditor_CurvesGreen: String { return self._s[2677]! }
+ public var ChatList_Search_NoResultsFitlerFiles: String { return self._s[2678]! }
+ public var Settings_PrivacySettings: String { return self._s[2679]! }
+ public var InviteLink_UsageLimitReached: String { return self._s[2680]! }
+ public var Stats_Followers: String { return self._s[2681]! }
+ public var Notifications_AddExceptionTitle: String { return self._s[2682]! }
+ public var TwoFactorSetup_Password_Title: String { return self._s[2683]! }
+ public var ChannelMembers_WhoCanAddMembersAllHelp: String { return self._s[2684]! }
+ public var OldChannels_NoticeText: String { return self._s[2685]! }
+ public var Conversation_SavedMessages: String { return self._s[2686]! }
+ public var Intents_ErrorLockedText: String { return self._s[2687]! }
public func Conversation_PeerNearbyTitle(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2688]!, self._r[2688]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2689]!, self._r[2689]!, [_1, _2])
}
- public var Passport_Address_TypeResidentialAddress: String { return self._s[2689]! }
- public var Appearance_ThemeNightBlue: String { return self._s[2690]! }
- public var Notification_ChannelInviterSelf: String { return self._s[2691]! }
- public var Conversation_ForwardTooltip_SavedMessages_Many: String { return self._s[2692]! }
- public var InviteLink_Create_TimeLimitExpiryDateNever: String { return self._s[2694]! }
- public var Watch_UserInfo_Service: String { return self._s[2695]! }
- public var ChatList_Context_Back: String { return self._s[2696]! }
- public var Passport_Email_Title: String { return self._s[2697]! }
- public var ImportStickerPack_AddToExistingStickerSet: String { return self._s[2698]! }
- public var Stats_GroupTopAdmin_Promote: String { return self._s[2699]! }
+ public var Passport_Address_TypeResidentialAddress: String { return self._s[2690]! }
+ public var Appearance_ThemeNightBlue: String { return self._s[2691]! }
+ public var Notification_ChannelInviterSelf: String { return self._s[2692]! }
+ public var Conversation_ForwardTooltip_SavedMessages_Many: String { return self._s[2693]! }
+ public var InviteLink_Create_TimeLimitExpiryDateNever: String { return self._s[2695]! }
+ public var Watch_UserInfo_Service: String { return self._s[2696]! }
+ public var ChatList_Context_Back: String { return self._s[2697]! }
+ public var Passport_Email_Title: String { return self._s[2698]! }
+ public var ImportStickerPack_AddToExistingStickerSet: String { return self._s[2699]! }
+ public var Stats_GroupTopAdmin_Promote: String { return self._s[2700]! }
public func PUSH_PINNED_INVOICE(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2700]!, self._r[2700]!, [_1])
+ return formatWithArgumentRanges(self._s[2701]!, self._r[2701]!, [_1])
}
- public var Conversation_UnsupportedMedia: String { return self._s[2701]! }
- public var Passport_Address_OneOfTypePassportRegistration: String { return self._s[2702]! }
- public var Privacy_TopPeersHelp: String { return self._s[2704]! }
- public var Privacy_Forwards_AlwaysLink: String { return self._s[2705]! }
- public var Notifications_Badge_CountUnreadMessages_InfoOn: String { return self._s[2706]! }
- public var Permissions_NotificationsTitle_v0: String { return self._s[2707]! }
+ public var Conversation_UnsupportedMedia: String { return self._s[2702]! }
+ public var Passport_Address_OneOfTypePassportRegistration: String { return self._s[2703]! }
+ public var Privacy_TopPeersHelp: String { return self._s[2705]! }
+ public var Privacy_Forwards_AlwaysLink: String { return self._s[2706]! }
+ public var Notifications_Badge_CountUnreadMessages_InfoOn: String { return self._s[2707]! }
+ public var Permissions_NotificationsTitle_v0: String { return self._s[2708]! }
public func Location_ProximityNotification_AlreadyClose(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2708]!, self._r[2708]!, [_0])
+ return formatWithArgumentRanges(self._s[2709]!, self._r[2709]!, [_0])
}
- public var Notification_PassportValueProofOfAddress: String { return self._s[2709]! }
- public var Map_Map: String { return self._s[2710]! }
- public var WallpaperSearch_ColorBlue: String { return self._s[2711]! }
- public var Privacy_Calls_CustomShareHelp: String { return self._s[2712]! }
- public var PhotoEditor_BlurToolRadial: String { return self._s[2713]! }
- public var ChatList_Search_FilterMusic: String { return self._s[2714]! }
- public var SettingsSearch_Synonyms_Data_AutoplayGifs: String { return self._s[2715]! }
- public var Privacy_PaymentsClear_ShippingInfo: String { return self._s[2716]! }
- public var Settings_LogoutConfirmationTitle: String { return self._s[2718]! }
+ public var Notification_PassportValueProofOfAddress: String { return self._s[2710]! }
+ public var Map_Map: String { return self._s[2711]! }
+ public var WallpaperSearch_ColorBlue: String { return self._s[2712]! }
+ public var Privacy_Calls_CustomShareHelp: String { return self._s[2713]! }
+ public var PhotoEditor_BlurToolRadial: String { return self._s[2714]! }
+ public var ChatList_Search_FilterMusic: String { return self._s[2715]! }
+ public var SettingsSearch_Synonyms_Data_AutoplayGifs: String { return self._s[2716]! }
+ public var Privacy_PaymentsClear_ShippingInfo: String { return self._s[2717]! }
+ public var Settings_LogoutConfirmationTitle: String { return self._s[2719]! }
public func PUSH_CHANNEL_MESSAGE_VIDEOS(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2719]!, self._r[2719]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2720]!, self._r[2720]!, [_1, _2])
}
public func Notification_ChangedGroupPhoto(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2720]!, self._r[2720]!, [_0])
+ return formatWithArgumentRanges(self._s[2721]!, self._r[2721]!, [_0])
}
- public var Channel_Username_RevokeExistingUsernamesInfo: String { return self._s[2721]! }
- public var Group_Username_CreatePublicLinkHelp: String { return self._s[2722]! }
- public var VoiceOver_ChatList_MessageEmpty: String { return self._s[2724]! }
- public var GroupInfo_Location: String { return self._s[2725]! }
- public var Passport_Language_ka: String { return self._s[2726]! }
+ public var Channel_Username_RevokeExistingUsernamesInfo: String { return self._s[2722]! }
+ public var Group_Username_CreatePublicLinkHelp: String { return self._s[2723]! }
+ public var VoiceOver_ChatList_MessageEmpty: String { return self._s[2725]! }
+ public var GroupInfo_Location: String { return self._s[2726]! }
+ public var Passport_Language_ka: String { return self._s[2727]! }
public func TwoStepAuth_SetupPendingEmail(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2727]!, self._r[2727]!, [_0])
+ return formatWithArgumentRanges(self._s[2728]!, self._r[2728]!, [_0])
}
- public var Conversation_ContextMenuOpenChannelProfile: String { return self._s[2728]! }
- public var ChatImport_SelectionConfirmationAlertTitle: String { return self._s[2730]! }
- public var ScheduledMessages_ClearAllConfirmation: String { return self._s[2732]! }
- public var DialogList_SearchSectionRecent: String { return self._s[2733]! }
- public var Passport_Address_OneOfTypeTemporaryRegistration: String { return self._s[2734]! }
- public var Conversation_Timer_Send: String { return self._s[2735]! }
+ public var Conversation_ContextMenuOpenChannelProfile: String { return self._s[2729]! }
+ public var ChatImport_SelectionConfirmationAlertTitle: String { return self._s[2731]! }
+ public var ScheduledMessages_ClearAllConfirmation: String { return self._s[2733]! }
+ public var DialogList_SearchSectionRecent: String { return self._s[2734]! }
+ public var Passport_Address_OneOfTypeTemporaryRegistration: String { return self._s[2735]! }
+ public var Conversation_Timer_Send: String { return self._s[2736]! }
public func VoiceOver_ScrollStatus(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2737]!, self._r[2737]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2738]!, self._r[2738]!, [_1, _2])
}
- public var ChatState_Updating: String { return self._s[2738]! }
- public var ChannelMembers_WhoCanAddMembers: String { return self._s[2739]! }
- public var ChannelInfo_DeleteGroup: String { return self._s[2740]! }
- public var TwoStepAuth_RecoveryFailed: String { return self._s[2741]! }
- public var Channel_OwnershipTransfer_EnterPassword: String { return self._s[2742]! }
- public var InviteLink_Create_TimeLimitExpiryTime: String { return self._s[2743]! }
- public var ChannelInfo_InviteLink_RevokeAlert_Text: String { return self._s[2744]! }
- public var ChatList_Search_NoResults: String { return self._s[2745]! }
- public var ChatListFolderSettings_AddRecommended: String { return self._s[2747]! }
- public var ChangePhoneNumberCode_Called: String { return self._s[2748]! }
- public var PeerInfo_GroupAboutItem: String { return self._s[2749]! }
- public var VoiceOver_SelfDestructTimerOff: String { return self._s[2751]! }
+ public var ChatState_Updating: String { return self._s[2739]! }
+ public var ChannelMembers_WhoCanAddMembers: String { return self._s[2740]! }
+ public var ChannelInfo_DeleteGroup: String { return self._s[2741]! }
+ public var TwoStepAuth_RecoveryFailed: String { return self._s[2742]! }
+ public var Channel_OwnershipTransfer_EnterPassword: String { return self._s[2743]! }
+ public var InviteLink_Create_TimeLimitExpiryTime: String { return self._s[2744]! }
+ public var ChannelInfo_InviteLink_RevokeAlert_Text: String { return self._s[2745]! }
+ public var ChatList_Search_NoResults: String { return self._s[2746]! }
+ public var ChatListFolderSettings_AddRecommended: String { return self._s[2748]! }
+ public var ChangePhoneNumberCode_Called: String { return self._s[2749]! }
+ public var PeerInfo_GroupAboutItem: String { return self._s[2750]! }
+ public var VoiceOver_SelfDestructTimerOff: String { return self._s[2752]! }
public func Channel_AdminLog_DeletedInviteLink(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2752]!, self._r[2752]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2753]!, self._r[2753]!, [_1, _2])
}
public func LiveLocationUpdated_YesterdayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2753]!, self._r[2753]!, [_0])
+ return formatWithArgumentRanges(self._s[2754]!, self._r[2754]!, [_0])
}
- public var PrivacySettings_AuthSessions: String { return self._s[2754]! }
- public var Passport_Address_Postcode: String { return self._s[2755]! }
- public var VoiceOver_Chat_YourVideoMessage: String { return self._s[2756]! }
+ public var PrivacySettings_AuthSessions: String { return self._s[2755]! }
+ public var Passport_Address_Postcode: String { return self._s[2756]! }
+ public var VoiceOver_Chat_YourVideoMessage: String { return self._s[2757]! }
public func VoiceChat_ForwardTooltip_ManyChats(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2757]!, self._r[2757]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[2758]!, self._r[2758]!, [_0, _1])
}
- public var Passport_Address_Street2Placeholder: String { return self._s[2758]! }
- public var Group_Location_Title: String { return self._s[2759]! }
- public var SettingsSearch_Synonyms_Data_AutoDownloadReset: String { return self._s[2760]! }
- public var PeopleNearby_UsersEmpty: String { return self._s[2761]! }
- public var Conversation_ContextMenuSpeak: String { return self._s[2763]! }
- public var SettingsSearch_Synonyms_Data_Title: String { return self._s[2764]! }
+ public var Passport_Address_Street2Placeholder: String { return self._s[2759]! }
+ public var Group_Location_Title: String { return self._s[2760]! }
+ public var SettingsSearch_Synonyms_Data_AutoDownloadReset: String { return self._s[2761]! }
+ public var PeopleNearby_UsersEmpty: String { return self._s[2762]! }
+ public var Conversation_ContextMenuSpeak: String { return self._s[2764]! }
+ public var SettingsSearch_Synonyms_Data_Title: String { return self._s[2765]! }
public func Checkout_PasswordEntry_Text(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2766]!, self._r[2766]!, [_0])
+ return formatWithArgumentRanges(self._s[2767]!, self._r[2767]!, [_0])
}
- public var Proxy_TooltipUnavailable: String { return self._s[2767]! }
- public var Map_Search: String { return self._s[2768]! }
- public var VoiceChat_CancelConfirmationTitle: String { return self._s[2769]! }
- public var AutoDownloadSettings_TypeContacts: String { return self._s[2770]! }
- public var Conversation_SearchByName_Prefix: String { return self._s[2771]! }
+ public var Proxy_TooltipUnavailable: String { return self._s[2768]! }
+ public var Map_Search: String { return self._s[2769]! }
+ public var VoiceChat_CancelConfirmationTitle: String { return self._s[2770]! }
+ public var AutoDownloadSettings_TypeContacts: String { return self._s[2771]! }
+ public var Conversation_SearchByName_Prefix: String { return self._s[2772]! }
public func Channel_AdminLog_MessageToggleSignaturesOff(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2772]!, self._r[2772]!, [_0])
+ return formatWithArgumentRanges(self._s[2773]!, self._r[2773]!, [_0])
}
- public var TwoStepAuth_EmailAddSuccess: String { return self._s[2773]! }
- public var ProfilePhoto_MainPhoto: String { return self._s[2774]! }
- public var SettingsSearch_Synonyms_Notifications_InAppNotificationsSound: String { return self._s[2775]! }
- public var SharedMedia_EmptyMusicText: String { return self._s[2776]! }
- public var ChatSettings_AutoDownloadPhotos: String { return self._s[2777]! }
- public var NetworkUsageSettings_BytesReceived: String { return self._s[2778]! }
- public var Channel_AdminLog_EmptyText: String { return self._s[2779]! }
- public var ImportStickerPack_InProgress: String { return self._s[2780]! }
- public var Channel_BanUser_PermissionSendMessages: String { return self._s[2781]! }
- public var Undo_ChatDeletedForBothSides: String { return self._s[2782]! }
- public var Notifications_GroupNotifications: String { return self._s[2783]! }
- public var AccessDenied_SaveMedia: String { return self._s[2784]! }
- public var InviteLink_Create_Revoke: String { return self._s[2785]! }
- public var GroupInfo_LabelOwner: String { return self._s[2786]! }
- public var TwoFactorSetup_PasswordRecovery_Action: String { return self._s[2787]! }
- public var Passport_Language_id: String { return self._s[2789]! }
- public var ChatSettings_AutoDownloadTitle: String { return self._s[2790]! }
- public var Conversation_UnpinMessageAlert: String { return self._s[2791]! }
+ public var TwoStepAuth_EmailAddSuccess: String { return self._s[2774]! }
+ public var ProfilePhoto_MainPhoto: String { return self._s[2775]! }
+ public var SettingsSearch_Synonyms_Notifications_InAppNotificationsSound: String { return self._s[2776]! }
+ public var SharedMedia_EmptyMusicText: String { return self._s[2777]! }
+ public var ChatSettings_AutoDownloadPhotos: String { return self._s[2778]! }
+ public var NetworkUsageSettings_BytesReceived: String { return self._s[2779]! }
+ public var Channel_AdminLog_EmptyText: String { return self._s[2780]! }
+ public var ImportStickerPack_InProgress: String { return self._s[2781]! }
+ public var Channel_BanUser_PermissionSendMessages: String { return self._s[2782]! }
+ public var Undo_ChatDeletedForBothSides: String { return self._s[2783]! }
+ public var Notifications_GroupNotifications: String { return self._s[2784]! }
+ public var AccessDenied_SaveMedia: String { return self._s[2785]! }
+ public var InviteLink_Create_Revoke: String { return self._s[2786]! }
+ public var GroupInfo_LabelOwner: String { return self._s[2787]! }
+ public var TwoFactorSetup_PasswordRecovery_Action: String { return self._s[2788]! }
+ public var Passport_Language_id: String { return self._s[2790]! }
+ public var ChatSettings_AutoDownloadTitle: String { return self._s[2791]! }
+ public var Conversation_UnpinMessageAlert: String { return self._s[2792]! }
public func LiveLocationUpdated_TodayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2792]!, self._r[2792]!, [_0])
- }
- public func Call_RemoteVideoPaused(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[2793]!, self._r[2793]!, [_0])
}
- public var TwoFactorSetup_Done_Text: String { return self._s[2794]! }
+ public func Call_RemoteVideoPaused(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[2794]!, self._r[2794]!, [_0])
+ }
+ public var TwoFactorSetup_Done_Text: String { return self._s[2795]! }
public func LastSeen_AtDate(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2795]!, self._r[2795]!, [_0])
+ return formatWithArgumentRanges(self._s[2796]!, self._r[2796]!, [_0])
}
- public var NetworkUsageSettings_BytesSent: String { return self._s[2796]! }
- public var Conversation_AudioRateTooltipNormal: String { return self._s[2797]! }
- public var VoiceChat_EditDescriptionSuccess: String { return self._s[2798]! }
- public var OwnershipTransfer_Transfer: String { return self._s[2799]! }
+ public var NetworkUsageSettings_BytesSent: String { return self._s[2797]! }
+ public var Conversation_AudioRateTooltipNormal: String { return self._s[2798]! }
+ public var VoiceChat_EditDescriptionSuccess: String { return self._s[2799]! }
+ public var OwnershipTransfer_Transfer: String { return self._s[2800]! }
public func Notification_Exceptions_Sound(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2800]!, self._r[2800]!, [_0])
+ return formatWithArgumentRanges(self._s[2801]!, self._r[2801]!, [_0])
}
- public var Passport_Language_pt: String { return self._s[2801]! }
- public var PrivacySettings_WebSessions: String { return self._s[2802]! }
- public var PrivacyPolicy_DeclineDeleteNow: String { return self._s[2804]! }
- public var TwoFactorSetup_Hint_Title: String { return self._s[2805]! }
+ public var Passport_Language_pt: String { return self._s[2802]! }
+ public var PrivacySettings_WebSessions: String { return self._s[2803]! }
+ public var PrivacyPolicy_DeclineDeleteNow: String { return self._s[2805]! }
+ public var TwoFactorSetup_Hint_Title: String { return self._s[2806]! }
public func Notification_Joined(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2806]!, self._r[2806]!, [_0])
+ return formatWithArgumentRanges(self._s[2807]!, self._r[2807]!, [_0])
}
- public var Group_Username_RemoveExistingUsernamesInfo: String { return self._s[2807]! }
- public var PrivacyLastSeenSettings_CustomShareSettings_Delete: String { return self._s[2808]! }
- public var AutoNightTheme_Scheduled: String { return self._s[2809]! }
- public var CreatePoll_ExplanationHeader: String { return self._s[2810]! }
- public var Calls_TabTitle: String { return self._s[2811]! }
- public var VoiceChat_RecordingInProgress: String { return self._s[2812]! }
- public var ChatList_UndoArchiveHiddenText: String { return self._s[2813]! }
- public var Notification_VideoCallCanceled: String { return self._s[2814]! }
- public var Login_CodeSentInternal: String { return self._s[2815]! }
- public var SettingsSearch_Synonyms_Proxy_AddProxy: String { return self._s[2816]! }
- public var Call_RecordingDisabledMessage: String { return self._s[2818]! }
+ public var Group_Username_RemoveExistingUsernamesInfo: String { return self._s[2808]! }
+ public var PrivacyLastSeenSettings_CustomShareSettings_Delete: String { return self._s[2809]! }
+ public var AutoNightTheme_Scheduled: String { return self._s[2810]! }
+ public var CreatePoll_ExplanationHeader: String { return self._s[2811]! }
+ public var Calls_TabTitle: String { return self._s[2812]! }
+ public var VoiceChat_RecordingInProgress: String { return self._s[2813]! }
+ public var ChatList_UndoArchiveHiddenText: String { return self._s[2814]! }
+ public var Notification_VideoCallCanceled: String { return self._s[2815]! }
+ public var Login_CodeSentInternal: String { return self._s[2816]! }
+ public var SettingsSearch_Synonyms_Proxy_AddProxy: String { return self._s[2817]! }
+ public var Call_RecordingDisabledMessage: String { return self._s[2819]! }
public func VoiceChat_RemovedPeerText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2819]!, self._r[2819]!, [_0])
+ return formatWithArgumentRanges(self._s[2820]!, self._r[2820]!, [_0])
}
- public var Conversation_UsersTooMuchError: String { return self._s[2821]! }
- public var AutoDownloadSettings_TypeChannels: String { return self._s[2822]! }
- public var VoiceChat_StopScreenSharingShort: String { return self._s[2823]! }
- public var Channel_Info_Stickers: String { return self._s[2824]! }
- public var Passport_DeleteAddressConfirmation: String { return self._s[2825]! }
+ public var Conversation_UsersTooMuchError: String { return self._s[2822]! }
+ public var AutoDownloadSettings_TypeChannels: String { return self._s[2823]! }
+ public var VoiceChat_StopScreenSharingShort: String { return self._s[2824]! }
+ public var Channel_Info_Stickers: String { return self._s[2825]! }
+ public var Passport_DeleteAddressConfirmation: String { return self._s[2826]! }
public func Conversation_PeerNearbyDistance(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2826]!, self._r[2826]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2827]!, self._r[2827]!, [_1, _2])
}
- public var ChannelMembers_WhoCanAddMembers_Admins: String { return self._s[2827]! }
+ public var ChannelMembers_WhoCanAddMembers_Admins: String { return self._s[2828]! }
public func Call_StatusOngoing(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2828]!, self._r[2828]!, [_0])
+ return formatWithArgumentRanges(self._s[2829]!, self._r[2829]!, [_0])
}
- public var Passport_DiscardMessageTitle: String { return self._s[2829]! }
- public var Call_VoiceOver_VideoCallIncoming: String { return self._s[2830]! }
- public var Localization_LanguageOther: String { return self._s[2831]! }
- public var Conversation_EncryptionCanceled: String { return self._s[2832]! }
- public var ChatSettings_AutomaticPhotoDownload: String { return self._s[2833]! }
- public var ReportPeer_ReasonFake: String { return self._s[2835]! }
+ public var Passport_DiscardMessageTitle: String { return self._s[2830]! }
+ public var Call_VoiceOver_VideoCallIncoming: String { return self._s[2831]! }
+ public var Localization_LanguageOther: String { return self._s[2832]! }
+ public var Conversation_EncryptionCanceled: String { return self._s[2833]! }
+ public var ChatSettings_AutomaticPhotoDownload: String { return self._s[2834]! }
+ public var ReportPeer_ReasonFake: String { return self._s[2836]! }
public func Notification_SecretChatMessageScreenshot(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2836]!, self._r[2836]!, [_0])
+ return formatWithArgumentRanges(self._s[2837]!, self._r[2837]!, [_0])
}
- public var Target_InviteToGroupErrorAlreadyInvited: String { return self._s[2838]! }
- public var SocksProxySetup_SavedProxies: String { return self._s[2839]! }
- public var InviteLink_Create_UsersLimitNumberOfUsers: String { return self._s[2840]! }
+ public var Target_InviteToGroupErrorAlreadyInvited: String { return self._s[2839]! }
+ public var SocksProxySetup_SavedProxies: String { return self._s[2840]! }
+ public var InviteLink_Create_UsersLimitNumberOfUsers: String { return self._s[2841]! }
public func ApplyLanguage_ChangeLanguageAlreadyActive(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2841]!, self._r[2841]!, [_1])
+ return formatWithArgumentRanges(self._s[2842]!, self._r[2842]!, [_1])
}
- public var Conversation_ScamWarning: String { return self._s[2843]! }
- public var Channel_AdminLog_InfoPanelAlertTitle: String { return self._s[2844]! }
- public var LocalGroup_Title: String { return self._s[2845]! }
- public var SettingsSearch_Synonyms_Notifications_MessageNotificationsAlert: String { return self._s[2847]! }
- public var SettingsSearch_Synonyms_Privacy_PasscodeAndFaceId: String { return self._s[2848]! }
- public var VoiceChat_SelectAccount: String { return self._s[2849]! }
- public var Login_PhoneFloodError: String { return self._s[2850]! }
- public var Conversation_PinMessageAlert_PinAndNotifyMembers: String { return self._s[2851]! }
- public var Username_InvalidTaken: String { return self._s[2853]! }
- public var SocksProxySetup_AddProxy: String { return self._s[2855]! }
- public var PrivacyLastSeenSettings_WhoCanSeeMyTimestamp: String { return self._s[2856]! }
- public var MediaPicker_UngroupDescription: String { return self._s[2857]! }
- public var Login_CodeExpired: String { return self._s[2858]! }
- public var Localization_ChooseLanguage: String { return self._s[2859]! }
- public var Checkout_NewCard_PostcodePlaceholder: String { return self._s[2860]! }
+ public var Conversation_ScamWarning: String { return self._s[2844]! }
+ public var Channel_AdminLog_InfoPanelAlertTitle: String { return self._s[2845]! }
+ public var LocalGroup_Title: String { return self._s[2846]! }
+ public var SettingsSearch_Synonyms_Notifications_MessageNotificationsAlert: String { return self._s[2848]! }
+ public var SettingsSearch_Synonyms_Privacy_PasscodeAndFaceId: String { return self._s[2849]! }
+ public var VoiceChat_SelectAccount: String { return self._s[2850]! }
+ public var Login_PhoneFloodError: String { return self._s[2851]! }
+ public var Conversation_PinMessageAlert_PinAndNotifyMembers: String { return self._s[2852]! }
+ public var Username_InvalidTaken: String { return self._s[2854]! }
+ public var SocksProxySetup_AddProxy: String { return self._s[2856]! }
+ public var PrivacyLastSeenSettings_WhoCanSeeMyTimestamp: String { return self._s[2857]! }
+ public var MediaPicker_UngroupDescription: String { return self._s[2858]! }
+ public var Login_CodeExpired: String { return self._s[2859]! }
+ public var Localization_ChooseLanguage: String { return self._s[2860]! }
+ public var Checkout_NewCard_PostcodePlaceholder: String { return self._s[2861]! }
public func ChangePhone_ErrorOccupied(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2861]!, self._r[2861]!, [_0])
- }
- public func Channel_DiscussionGroup_HeaderSet(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[2862]!, self._r[2862]!, [_0])
}
- public var ReportPeer_ReasonOther_Title: String { return self._s[2864]! }
- public var Conversation_ScheduleMessage_Title: String { return self._s[2865]! }
+ public func Channel_DiscussionGroup_HeaderSet(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[2863]!, self._r[2863]!, [_0])
+ }
+ public var ReportPeer_ReasonOther_Title: String { return self._s[2865]! }
+ public var Conversation_ScheduleMessage_Title: String { return self._s[2866]! }
public func VoiceChat_UserInvited(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2866]!, self._r[2866]!, [_0])
+ return formatWithArgumentRanges(self._s[2867]!, self._r[2867]!, [_0])
}
- public var PeerInfo_ButtonDiscuss: String { return self._s[2867]! }
- public var SettingsSearch_Synonyms_Notifications_BadgeIncludeMutedPublicGroups: String { return self._s[2868]! }
- public var Call_StatusNoAnswer: String { return self._s[2869]! }
- public var ScheduledMessages_DeleteMany: String { return self._s[2871]! }
- public var Channel_DiscussionGroupInfo: String { return self._s[2872]! }
- public var Conversation_UnarchiveDone: String { return self._s[2873]! }
- public var LogoutOptions_AddAccountText: String { return self._s[2874]! }
- public var Message_PinnedContactMessage: String { return self._s[2875]! }
+ public var PeerInfo_ButtonDiscuss: String { return self._s[2868]! }
+ public var SettingsSearch_Synonyms_Notifications_BadgeIncludeMutedPublicGroups: String { return self._s[2869]! }
+ public var Call_StatusNoAnswer: String { return self._s[2870]! }
+ public var ScheduledMessages_DeleteMany: String { return self._s[2872]! }
+ public var Channel_DiscussionGroupInfo: String { return self._s[2873]! }
+ public var Conversation_UnarchiveDone: String { return self._s[2874]! }
+ public var LogoutOptions_AddAccountText: String { return self._s[2875]! }
+ public var Message_PinnedContactMessage: String { return self._s[2876]! }
public func ChatList_DeleteAndLeaveGroupConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2876]!, self._r[2876]!, [_0])
+ return formatWithArgumentRanges(self._s[2877]!, self._r[2877]!, [_0])
}
- public var VoiceChat_EditBioTitle: String { return self._s[2878]! }
+ public var VoiceChat_EditBioTitle: String { return self._s[2879]! }
public func FileSize_GB(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2879]!, self._r[2879]!, [_0])
+ return formatWithArgumentRanges(self._s[2880]!, self._r[2880]!, [_0])
}
- public var Stats_GroupLanguagesTitle: String { return self._s[2880]! }
- public var Passport_FieldAddressHelp: String { return self._s[2881]! }
+ public var Stats_GroupLanguagesTitle: String { return self._s[2881]! }
+ public var Passport_FieldAddressHelp: String { return self._s[2882]! }
public func Passport_FieldOneOf_Or(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2882]!, self._r[2882]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2883]!, self._r[2883]!, [_1, _2])
}
- public var ChatSettings_OpenLinksIn: String { return self._s[2884]! }
- public var TwoFactorSetup_Hint_SkipAction: String { return self._s[2885]! }
- public var Message_Photo: String { return self._s[2886]! }
- public var Media_LimitedAccessManage: String { return self._s[2888]! }
- public var MediaPicker_AddCaption: String { return self._s[2889]! }
- public var LogoutOptions_Title: String { return self._s[2890]! }
+ public var ChatSettings_OpenLinksIn: String { return self._s[2885]! }
+ public var TwoFactorSetup_Hint_SkipAction: String { return self._s[2886]! }
+ public var Message_Photo: String { return self._s[2887]! }
+ public var Media_LimitedAccessManage: String { return self._s[2889]! }
+ public var MediaPicker_AddCaption: String { return self._s[2890]! }
+ public var LogoutOptions_Title: String { return self._s[2891]! }
public func PUSH_PINNED_GIF(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2891]!, self._r[2891]!, [_1])
+ return formatWithArgumentRanges(self._s[2892]!, self._r[2892]!, [_1])
}
- public var Conversation_StatusKickedFromGroup: String { return self._s[2892]! }
- public var Channel_AdminLogFilter_AdminsTitle: String { return self._s[2893]! }
- public var ChatList_DeleteSavedMessagesConfirmationTitle: String { return self._s[2894]! }
- public var Channel_AdminLogFilter_Title: String { return self._s[2895]! }
- public var Passport_Address_TypeRentalAgreementUploadScan: String { return self._s[2896]! }
- public var Compose_GroupTokenListPlaceholder: String { return self._s[2897]! }
- public var Notifications_MessageNotificationsExceptions: String { return self._s[2898]! }
- public var ChannelIntro_Title: String { return self._s[2899]! }
- public var Stats_Message_Views: String { return self._s[2900]! }
- public var Stickers_Install: String { return self._s[2901]! }
+ public var Conversation_StatusKickedFromGroup: String { return self._s[2893]! }
+ public var Channel_AdminLogFilter_AdminsTitle: String { return self._s[2894]! }
+ public var ChatList_DeleteSavedMessagesConfirmationTitle: String { return self._s[2895]! }
+ public var Channel_AdminLogFilter_Title: String { return self._s[2896]! }
+ public var Passport_Address_TypeRentalAgreementUploadScan: String { return self._s[2897]! }
+ public var Compose_GroupTokenListPlaceholder: String { return self._s[2898]! }
+ public var Notifications_MessageNotificationsExceptions: String { return self._s[2899]! }
+ public var ChannelIntro_Title: String { return self._s[2900]! }
+ public var Stats_Message_Views: String { return self._s[2901]! }
+ public var Stickers_Install: String { return self._s[2902]! }
public func VoiceOver_Chat_FileFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2902]!, self._r[2902]!, [_0])
+ return formatWithArgumentRanges(self._s[2903]!, self._r[2903]!, [_0])
}
- public var EditTheme_Create_Preview_IncomingReplyText: String { return self._s[2903]! }
- public var Conversation_SwipeToReplyHintTitle: String { return self._s[2905]! }
- public var Settings_Username: String { return self._s[2908]! }
- public var FastTwoStepSetup_Title: String { return self._s[2909]! }
- public var Notifications_Badge_CountUnreadMessages_InfoOff: String { return self._s[2910]! }
- public var SettingsSearch_Synonyms_Privacy_Title: String { return self._s[2911]! }
- public var Passport_Identity_IssueDatePlaceholder: String { return self._s[2913]! }
- public var CallFeedback_ReasonEcho: String { return self._s[2914]! }
+ public var EditTheme_Create_Preview_IncomingReplyText: String { return self._s[2904]! }
+ public var Conversation_SwipeToReplyHintTitle: String { return self._s[2906]! }
+ public var Settings_Username: String { return self._s[2909]! }
+ public var FastTwoStepSetup_Title: String { return self._s[2910]! }
+ public var Notifications_Badge_CountUnreadMessages_InfoOff: String { return self._s[2911]! }
+ public var SettingsSearch_Synonyms_Privacy_Title: String { return self._s[2912]! }
+ public var Passport_Identity_IssueDatePlaceholder: String { return self._s[2914]! }
+ public var CallFeedback_ReasonEcho: String { return self._s[2915]! }
public func Time_MonthOfYear_m1(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2915]!, self._r[2915]!, [_0])
+ return formatWithArgumentRanges(self._s[2916]!, self._r[2916]!, [_0])
}
- public var Conversation_OpenBotLinkTitle: String { return self._s[2916]! }
- public var SocksProxySetup_Title: String { return self._s[2917]! }
- public var CallFeedback_Success: String { return self._s[2918]! }
- public var WallpaperPreview_SwipeTopText: String { return self._s[2920]! }
- public var InstantPage_AutoNightTheme: String { return self._s[2922]! }
- public var Watch_Conversation_Reply: String { return self._s[2923]! }
- public var VoiceChat_Share: String { return self._s[2925]! }
- public var VoiceChat_AddPhoto: String { return self._s[2926]! }
- public var Chat_PanelUnpinAllMessages: String { return self._s[2927]! }
- public var WallpaperPreview_Pattern: String { return self._s[2928]! }
- public var CheckoutInfo_ReceiverInfoEmail: String { return self._s[2929]! }
+ public var Conversation_OpenBotLinkTitle: String { return self._s[2917]! }
+ public var SocksProxySetup_Title: String { return self._s[2918]! }
+ public var CallFeedback_Success: String { return self._s[2919]! }
+ public var WallpaperPreview_SwipeTopText: String { return self._s[2921]! }
+ public var InstantPage_AutoNightTheme: String { return self._s[2923]! }
+ public var Watch_Conversation_Reply: String { return self._s[2924]! }
+ public var VoiceChat_Share: String { return self._s[2926]! }
+ public var VoiceChat_AddPhoto: String { return self._s[2927]! }
+ public var Chat_PanelUnpinAllMessages: String { return self._s[2928]! }
+ public var WallpaperPreview_Pattern: String { return self._s[2929]! }
+ public var CheckoutInfo_ReceiverInfoEmail: String { return self._s[2930]! }
public func Conversation_DeleteMessagesFor(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2930]!, self._r[2930]!, [_0])
+ return formatWithArgumentRanges(self._s[2931]!, self._r[2931]!, [_0])
}
- public var AutoDownloadSettings_TypeGroupChats: String { return self._s[2931]! }
- public var VoiceOver_Chat_GroupInfo: String { return self._s[2932]! }
- public var DialogList_SavedMessagesTooltip: String { return self._s[2934]! }
- public var Update_Title: String { return self._s[2935]! }
- public var Conversation_ShareMyPhoneNumber: String { return self._s[2936]! }
- public var WallpaperPreview_CropTopText: String { return self._s[2939]! }
- public var Channel_EditMessageErrorGeneric: String { return self._s[2940]! }
- public var AccessDenied_LocationAlwaysDenied: String { return self._s[2941]! }
- public var ChatListFolder_DiscardCancel: String { return self._s[2942]! }
- public var Message_PinnedPhotoMessage: String { return self._s[2943]! }
- public var Appearance_ThemeDayClassic: String { return self._s[2944]! }
- public var VoiceChat_ChangeName: String { return self._s[2945]! }
- public var SocksProxySetup_ProxySocks5: String { return self._s[2947]! }
- public var VoiceChat_DisplayAsInfo: String { return self._s[2949]! }
- public var AccessDenied_Wallpapers: String { return self._s[2954]! }
+ public var AutoDownloadSettings_TypeGroupChats: String { return self._s[2932]! }
+ public var VoiceOver_Chat_GroupInfo: String { return self._s[2933]! }
+ public var DialogList_SavedMessagesTooltip: String { return self._s[2935]! }
+ public var Update_Title: String { return self._s[2936]! }
+ public var Conversation_ShareMyPhoneNumber: String { return self._s[2937]! }
+ public var WallpaperPreview_CropTopText: String { return self._s[2940]! }
+ public var Channel_EditMessageErrorGeneric: String { return self._s[2941]! }
+ public var AccessDenied_LocationAlwaysDenied: String { return self._s[2942]! }
+ public var ChatListFolder_DiscardCancel: String { return self._s[2943]! }
+ public var Message_PinnedPhotoMessage: String { return self._s[2944]! }
+ public var Appearance_ThemeDayClassic: String { return self._s[2945]! }
+ public var VoiceChat_ChangeName: String { return self._s[2946]! }
+ public var SocksProxySetup_ProxySocks5: String { return self._s[2948]! }
+ public var VoiceChat_DisplayAsInfo: String { return self._s[2950]! }
+ public var AccessDenied_Wallpapers: String { return self._s[2955]! }
public func Channel_AdminLog_MessageChangedGroupAbout(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2955]!, self._r[2955]!, [_0])
+ return formatWithArgumentRanges(self._s[2956]!, self._r[2956]!, [_0])
}
- public var Weekday_Sunday: String { return self._s[2956]! }
- public var SettingsSearch_Synonyms_Privacy_GroupsAndChannels: String { return self._s[2958]! }
- public var PeopleNearby_MakeVisibleDescription: String { return self._s[2959]! }
- public var AccessDenied_LocationDisabled: String { return self._s[2960]! }
- public var Tour_Text3: String { return self._s[2961]! }
- public var AuthSessions_AddDevice_ScanTitle: String { return self._s[2962]! }
+ public var Weekday_Sunday: String { return self._s[2957]! }
+ public var SettingsSearch_Synonyms_Privacy_GroupsAndChannels: String { return self._s[2959]! }
+ public var PeopleNearby_MakeVisibleDescription: String { return self._s[2960]! }
+ public var AccessDenied_LocationDisabled: String { return self._s[2961]! }
+ public var Tour_Text3: String { return self._s[2962]! }
+ public var AuthSessions_AddDevice_ScanTitle: String { return self._s[2963]! }
public func Time_TodayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2963]!, self._r[2963]!, [_0])
+ return formatWithArgumentRanges(self._s[2964]!, self._r[2964]!, [_0])
}
- public var Privacy_SecretChatsLinkPreviewsHelp: String { return self._s[2964]! }
- public var Conversation_ClearCache: String { return self._s[2965]! }
- public var StickerPacksSettings_ArchivedMasks_Info: String { return self._s[2966]! }
- public var ChatList_Tabs_AllChats: String { return self._s[2967]! }
- public var DialogList_RecentTitlePeople: String { return self._s[2968]! }
- public var Stickers_AddToFavorites: String { return self._s[2969]! }
- public var ChatList_Context_RemoveFromFolder: String { return self._s[2970]! }
- public var VoiceChat_CancelSpeakRequest: String { return self._s[2971]! }
- public var Settings_RemoveVideo: String { return self._s[2972]! }
- public var PhotoEditor_CropAspectRatioSquare: String { return self._s[2973]! }
- public var ConversationProfile_LeaveDeleteAndExit: String { return self._s[2974]! }
- public var VoiceOver_Chat_YourFile: String { return self._s[2975]! }
- public var SettingsSearch_Synonyms_Privacy_Forwards: String { return self._s[2977]! }
- public var Group_OwnershipTransfer_ErrorPrivacyRestricted: String { return self._s[2978]! }
- public var VoiceChat_TapToAddBio: String { return self._s[2979]! }
- public var Channel_AdminLog_AddMembers: String { return self._s[2980]! }
- public var Map_SendThisLocation: String { return self._s[2982]! }
- public var TwoStepAuth_EmailSkipAlert: String { return self._s[2984]! }
- public var IntentsSettings_SuggestedChatsPrivateChats: String { return self._s[2985]! }
- public var CloudStorage_Title: String { return self._s[2986]! }
- public var TwoFactorSetup_Password_Action: String { return self._s[2987]! }
- public var TwoStepAuth_ConfirmationText: String { return self._s[2988]! }
- public var Passport_Address_EditTemporaryRegistration: String { return self._s[2990]! }
- public var Undo_LeftGroup: String { return self._s[2991]! }
- public var Conversation_StopLiveLocation: String { return self._s[2992]! }
- public var NotificationSettings_ShowNotificationsFromAccountsSection: String { return self._s[2993]! }
- public var Message_PinnedInvoice: String { return self._s[2994]! }
- public var ApplyLanguage_LanguageNotSupportedError: String { return self._s[2995]! }
+ public var Privacy_SecretChatsLinkPreviewsHelp: String { return self._s[2965]! }
+ public var Conversation_ClearCache: String { return self._s[2966]! }
+ public var StickerPacksSettings_ArchivedMasks_Info: String { return self._s[2967]! }
+ public var ChatList_Tabs_AllChats: String { return self._s[2968]! }
+ public var DialogList_RecentTitlePeople: String { return self._s[2969]! }
+ public var Stickers_AddToFavorites: String { return self._s[2970]! }
+ public var ChatList_Context_RemoveFromFolder: String { return self._s[2971]! }
+ public var VoiceChat_CancelSpeakRequest: String { return self._s[2972]! }
+ public var Settings_RemoveVideo: String { return self._s[2973]! }
+ public var PhotoEditor_CropAspectRatioSquare: String { return self._s[2974]! }
+ public var ConversationProfile_LeaveDeleteAndExit: String { return self._s[2975]! }
+ public var VoiceOver_Chat_YourFile: String { return self._s[2976]! }
+ public var SettingsSearch_Synonyms_Privacy_Forwards: String { return self._s[2978]! }
+ public var Group_OwnershipTransfer_ErrorPrivacyRestricted: String { return self._s[2979]! }
+ public var VoiceChat_TapToAddBio: String { return self._s[2980]! }
+ public var Channel_AdminLog_AddMembers: String { return self._s[2981]! }
+ public var Map_SendThisLocation: String { return self._s[2983]! }
+ public var TwoStepAuth_EmailSkipAlert: String { return self._s[2985]! }
+ public var IntentsSettings_SuggestedChatsPrivateChats: String { return self._s[2986]! }
+ public var CloudStorage_Title: String { return self._s[2987]! }
+ public var TwoFactorSetup_Password_Action: String { return self._s[2988]! }
+ public var TwoStepAuth_ConfirmationText: String { return self._s[2989]! }
+ public var Passport_Address_EditTemporaryRegistration: String { return self._s[2991]! }
+ public var Undo_LeftGroup: String { return self._s[2992]! }
+ public var Conversation_StopLiveLocation: String { return self._s[2993]! }
+ public var NotificationSettings_ShowNotificationsFromAccountsSection: String { return self._s[2994]! }
+ public var Message_PinnedInvoice: String { return self._s[2995]! }
+ public var ApplyLanguage_LanguageNotSupportedError: String { return self._s[2996]! }
public func PUSH_CHAT_MESSAGE(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2997]!, self._r[2997]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[2998]!, self._r[2998]!, [_1, _2])
}
public func Notification_PinnedAudioMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[2998]!, self._r[2998]!, [_0])
+ return formatWithArgumentRanges(self._s[2999]!, self._r[2999]!, [_0])
}
- public var TwoStepAuth_RecoveryUnavailableResetTitle: String { return self._s[2999]! }
- public var Weekday_Tuesday: String { return self._s[3000]! }
- public var ChangePhoneNumberCode_Code: String { return self._s[3001]! }
- public var VoiceOver_Chat_YourMessage: String { return self._s[3002]! }
- public var Calls_CallTabDescription: String { return self._s[3003]! }
- public var ChatImport_SelectionErrorNotAdmin: String { return self._s[3004]! }
- public var SocksProxySetup_UseProxy: String { return self._s[3006]! }
- public var SettingsSearch_Synonyms_Stickers_Title: String { return self._s[3007]! }
- public var PasscodeSettings_AlphanumericCode: String { return self._s[3008]! }
- public var VoiceOver_Chat_YourVideo: String { return self._s[3009]! }
- public var ChannelMembers_WhoCanAddMembersAdminsHelp: String { return self._s[3011]! }
- public var SettingsSearch_Synonyms_Privacy_DeleteAccountIfAwayFor: String { return self._s[3012]! }
- public var Exceptions_AddToExceptions: String { return self._s[3013]! }
- public var UserInfo_Title: String { return self._s[3014]! }
- public var Passport_DeleteDocumentConfirmation: String { return self._s[3016]! }
- public var VoiceChat_EditDescription: String { return self._s[3018]! }
- public var ChatList_Unmute: String { return self._s[3019]! }
- public var SettingsSearch_Synonyms_Privacy_Data_ContactsSync: String { return self._s[3020]! }
+ public var TwoStepAuth_RecoveryUnavailableResetTitle: String { return self._s[3000]! }
+ public var Weekday_Tuesday: String { return self._s[3001]! }
+ public var ChangePhoneNumberCode_Code: String { return self._s[3002]! }
+ public var VoiceOver_Chat_YourMessage: String { return self._s[3003]! }
+ public var Calls_CallTabDescription: String { return self._s[3004]! }
+ public var ChatImport_SelectionErrorNotAdmin: String { return self._s[3005]! }
+ public var SocksProxySetup_UseProxy: String { return self._s[3007]! }
+ public var SettingsSearch_Synonyms_Stickers_Title: String { return self._s[3008]! }
+ public var PasscodeSettings_AlphanumericCode: String { return self._s[3009]! }
+ public var VoiceOver_Chat_YourVideo: String { return self._s[3010]! }
+ public var ChannelMembers_WhoCanAddMembersAdminsHelp: String { return self._s[3012]! }
+ public var SettingsSearch_Synonyms_Privacy_DeleteAccountIfAwayFor: String { return self._s[3013]! }
+ public var Exceptions_AddToExceptions: String { return self._s[3014]! }
+ public var UserInfo_Title: String { return self._s[3015]! }
+ public var Passport_DeleteDocumentConfirmation: String { return self._s[3017]! }
+ public var VoiceChat_EditDescription: String { return self._s[3019]! }
+ public var ChatList_Unmute: String { return self._s[3020]! }
+ public var SettingsSearch_Synonyms_Privacy_Data_ContactsSync: String { return self._s[3021]! }
public func Channel_AdminLog_MessageChangedAutoremoveTimeoutSet(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3021]!, self._r[3021]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3022]!, self._r[3022]!, [_1, _2])
}
- public var Stats_GroupTopPostersTitle: String { return self._s[3022]! }
- public var Username_CheckingUsername: String { return self._s[3024]! }
- public var WallpaperColors_SetCustomColor: String { return self._s[3025]! }
- public var PeerSelection_ImportIntoNewGroup: String { return self._s[3029]! }
- public var Location_ProximityAlertSetTitle: String { return self._s[3030]! }
- public var AuthSessions_AddedDeviceTerminate: String { return self._s[3031]! }
- public var Conversation_JoinVoiceChatAsSpeaker: String { return self._s[3032]! }
- public var Privacy_ProfilePhoto_CustomHelp: String { return self._s[3033]! }
- public var Settings_ChangePhoneNumber: String { return self._s[3034]! }
- public var PeerInfo_PaneLinks: String { return self._s[3035]! }
- public var Appearance_ThemePreview_ChatList_1_Text: String { return self._s[3038]! }
- public var Channel_EditAdmin_PermissionInviteSubscribers: String { return self._s[3040]! }
+ public var Stats_GroupTopPostersTitle: String { return self._s[3023]! }
+ public var Username_CheckingUsername: String { return self._s[3025]! }
+ public var WallpaperColors_SetCustomColor: String { return self._s[3026]! }
+ public var PeerSelection_ImportIntoNewGroup: String { return self._s[3030]! }
+ public var Location_ProximityAlertSetTitle: String { return self._s[3031]! }
+ public var AuthSessions_AddedDeviceTerminate: String { return self._s[3032]! }
+ public var Conversation_JoinVoiceChatAsSpeaker: String { return self._s[3033]! }
+ public var Privacy_ProfilePhoto_CustomHelp: String { return self._s[3034]! }
+ public var Settings_ChangePhoneNumber: String { return self._s[3035]! }
+ public var PeerInfo_PaneLinks: String { return self._s[3036]! }
+ public var Appearance_ThemePreview_ChatList_1_Text: String { return self._s[3039]! }
+ public var Channel_EditAdmin_PermissionInviteSubscribers: String { return self._s[3041]! }
public func PUSH_CHAT_VOICECHAT_INVITE_YOU(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3041]!, self._r[3041]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3042]!, self._r[3042]!, [_1, _2])
}
- public var LogoutOptions_ChangePhoneNumberText: String { return self._s[3042]! }
- public var VoiceOver_Media_PlaybackPause: String { return self._s[3043]! }
- public var VoiceChat_CancelConfirmationEnd: String { return self._s[3044]! }
- public var BroadcastGroups_ConfirmationAlert_Title: String { return self._s[3045]! }
- public var Stats_FollowersBySourceTitle: String { return self._s[3047]! }
+ public var LogoutOptions_ChangePhoneNumberText: String { return self._s[3043]! }
+ public var VoiceOver_Media_PlaybackPause: String { return self._s[3044]! }
+ public var VoiceChat_CancelConfirmationEnd: String { return self._s[3045]! }
+ public var BroadcastGroups_ConfirmationAlert_Title: String { return self._s[3046]! }
+ public var Stats_FollowersBySourceTitle: String { return self._s[3048]! }
public func Conversation_ScheduleMessage_SendOn(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3048]!, self._r[3048]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[3049]!, self._r[3049]!, [_0, _1])
}
- public var Compose_NewEncryptedChatTitle: String { return self._s[3049]! }
- public var Channel_CommentsGroup_Header: String { return self._s[3051]! }
+ public var Compose_NewEncryptedChatTitle: String { return self._s[3050]! }
+ public var Channel_CommentsGroup_Header: String { return self._s[3052]! }
public func ShareFileTip_Text(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3055]!, self._r[3055]!, [_0])
+ return formatWithArgumentRanges(self._s[3056]!, self._r[3056]!, [_0])
}
public func PUSH_MESSAGE_AUDIO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3056]!, self._r[3056]!, [_1])
+ return formatWithArgumentRanges(self._s[3057]!, self._r[3057]!, [_1])
}
- public var Group_Setup_BasicHistoryHiddenHelp: String { return self._s[3058]! }
+ public var Group_Setup_BasicHistoryHiddenHelp: String { return self._s[3059]! }
public func TwoStepAuth_RecoveryEmailUnavailable(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3059]!, self._r[3059]!, [_0])
+ return formatWithArgumentRanges(self._s[3060]!, self._r[3060]!, [_0])
}
- public var Conversation_ReportMessages: String { return self._s[3060]! }
- public var Conversation_OpenBotLinkOpen: String { return self._s[3061]! }
- public var VoiceOver_Chat_RecordModeVoiceMessage: String { return self._s[3062]! }
- public var PrivacySettings_LastSeen: String { return self._s[3064]! }
- public var SettingsSearch_Synonyms_Privacy_Passcode: String { return self._s[3065]! }
- public var Theme_Colors_Proceed: String { return self._s[3066]! }
- public var UserInfo_ScamBotWarning: String { return self._s[3067]! }
- public var LogoutOptions_LogOut: String { return self._s[3069]! }
- public var Conversation_SendMessage: String { return self._s[3070]! }
- public var Conversation_CancelForwardCancelForward: String { return self._s[3071]! }
- public var VoiceChat_Scheduled: String { return self._s[3073]! }
- public var Passport_Address_Region: String { return self._s[3074]! }
- public var MediaPicker_CameraRoll: String { return self._s[3076]! }
+ public var Conversation_ReportMessages: String { return self._s[3061]! }
+ public var Conversation_OpenBotLinkOpen: String { return self._s[3062]! }
+ public var VoiceOver_Chat_RecordModeVoiceMessage: String { return self._s[3063]! }
+ public var PrivacySettings_LastSeen: String { return self._s[3065]! }
+ public var SettingsSearch_Synonyms_Privacy_Passcode: String { return self._s[3066]! }
+ public var Theme_Colors_Proceed: String { return self._s[3067]! }
+ public var UserInfo_ScamBotWarning: String { return self._s[3068]! }
+ public var LogoutOptions_LogOut: String { return self._s[3070]! }
+ public var Conversation_SendMessage: String { return self._s[3071]! }
+ public var Conversation_CancelForwardCancelForward: String { return self._s[3072]! }
+ public var VoiceChat_Scheduled: String { return self._s[3074]! }
+ public var Passport_Address_Region: String { return self._s[3075]! }
+ public var MediaPicker_CameraRoll: String { return self._s[3077]! }
public func VoiceOver_Chat_ForwardedFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3078]!, self._r[3078]!, [_0])
+ return formatWithArgumentRanges(self._s[3079]!, self._r[3079]!, [_0])
}
- public var Call_ReportSend: String { return self._s[3080]! }
- public var VoiceOver_ChatList_Message: String { return self._s[3081]! }
- public var Month_ShortJune: String { return self._s[3082]! }
- public var AutoDownloadSettings_GroupChats: String { return self._s[3083]! }
+ public var Call_ReportSend: String { return self._s[3081]! }
+ public var VoiceOver_ChatList_Message: String { return self._s[3082]! }
+ public var Month_ShortJune: String { return self._s[3083]! }
+ public var AutoDownloadSettings_GroupChats: String { return self._s[3084]! }
public func Channel_AdminLog_CaptionEdited(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3086]!, self._r[3086]!, [_0])
+ return formatWithArgumentRanges(self._s[3087]!, self._r[3087]!, [_0])
}
- public var TwoStepAuth_DisableSuccess: String { return self._s[3087]! }
- public var Cache_KeepMedia: String { return self._s[3088]! }
+ public var TwoStepAuth_DisableSuccess: String { return self._s[3088]! }
+ public var Cache_KeepMedia: String { return self._s[3089]! }
public func Date_ChatDateHeaderYear(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3089]!, self._r[3089]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[3090]!, self._r[3090]!, [_1, _2, _3])
}
- public var Appearance_LargeEmoji: String { return self._s[3090]! }
+ public var Appearance_LargeEmoji: String { return self._s[3091]! }
public func Notification_NewAuthDetected(_ _1: String, _ _2: String, _ _3: String, _ _4: String, _ _5: String, _ _6: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3091]!, self._r[3091]!, [_1, _2, _3, _4, _5, _6])
+ return formatWithArgumentRanges(self._s[3092]!, self._r[3092]!, [_1, _2, _3, _4, _5, _6])
}
- public var Chat_AttachmentMultipleForwardDisabled: String { return self._s[3092]! }
- public var Privacy_PaymentsClear_PaymentInfoCleared: String { return self._s[3093]! }
- public var Call_CameraConfirmationText: String { return self._s[3094]! }
+ public var Chat_AttachmentMultipleForwardDisabled: String { return self._s[3093]! }
+ public var Privacy_PaymentsClear_PaymentInfoCleared: String { return self._s[3094]! }
+ public var Call_CameraConfirmationText: String { return self._s[3095]! }
public func AuthSessions_AppUnofficial(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3096]!, self._r[3096]!, [_0])
+ return formatWithArgumentRanges(self._s[3097]!, self._r[3097]!, [_0])
}
- public var DialogList_SearchSectionChats: String { return self._s[3097]! }
- public var VoiceOver_MessageContextReport: String { return self._s[3099]! }
- public var VoiceChat_RemovePeer: String { return self._s[3100]! }
- public var ChatListFolder_ExcludeChatsTitle: String { return self._s[3101]! }
- public var InviteLink_ContextCopy: String { return self._s[3102]! }
- public var NotificationsSound_Tritone: String { return self._s[3104]! }
- public var VoiceChat_YouAreSharingScreen: String { return self._s[3106]! }
- public var Notifications_InAppNotificationsPreview: String { return self._s[3108]! }
- public var Stats_GroupTopAdmin_Actions: String { return self._s[3109]! }
- public var TwoFactorSetup_PasswordRecovery_SkipAlertText: String { return self._s[3110]! }
- public var TwoStepAuth_ResetAction: String { return self._s[3111]! }
- public var PeerInfo_AddToContacts: String { return self._s[3112]! }
- public var VoiceChat_OpenChat: String { return self._s[3113]! }
- public var AccessDenied_Title: String { return self._s[3114]! }
- public var InviteLink_QRCode_InfoChannel: String { return self._s[3115]! }
- public var Tour_Title1: String { return self._s[3116]! }
- public var VoiceOver_AttachMedia: String { return self._s[3117]! }
+ public var DialogList_SearchSectionChats: String { return self._s[3098]! }
+ public var VoiceOver_MessageContextReport: String { return self._s[3100]! }
+ public var VoiceChat_RemovePeer: String { return self._s[3101]! }
+ public var ChatListFolder_ExcludeChatsTitle: String { return self._s[3102]! }
+ public var InviteLink_ContextCopy: String { return self._s[3103]! }
+ public var NotificationsSound_Tritone: String { return self._s[3105]! }
+ public var VoiceChat_YouAreSharingScreen: String { return self._s[3107]! }
+ public var Notifications_InAppNotificationsPreview: String { return self._s[3109]! }
+ public var Stats_GroupTopAdmin_Actions: String { return self._s[3110]! }
+ public var TwoFactorSetup_PasswordRecovery_SkipAlertText: String { return self._s[3111]! }
+ public var TwoStepAuth_ResetAction: String { return self._s[3112]! }
+ public var PeerInfo_AddToContacts: String { return self._s[3113]! }
+ public var VoiceChat_OpenChat: String { return self._s[3114]! }
+ public var AccessDenied_Title: String { return self._s[3115]! }
+ public var InviteLink_QRCode_InfoChannel: String { return self._s[3116]! }
+ public var Tour_Title1: String { return self._s[3117]! }
+ public var VoiceOver_AttachMedia: String { return self._s[3118]! }
public func SharedMedia_SearchNoResultsDescription(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3119]!, self._r[3119]!, [_0])
+ return formatWithArgumentRanges(self._s[3120]!, self._r[3120]!, [_0])
}
- public var Chat_Gifs_SavedSectionHeader: String { return self._s[3120]! }
- public var Privacy_DeleteDrafts_DraftsDeleted: String { return self._s[3121]! }
- public var LogoutOptions_ChangePhoneNumberTitle: String { return self._s[3122]! }
+ public var Chat_Gifs_SavedSectionHeader: String { return self._s[3121]! }
+ public var Privacy_DeleteDrafts_DraftsDeleted: String { return self._s[3122]! }
+ public var LogoutOptions_ChangePhoneNumberTitle: String { return self._s[3123]! }
public func Passport_Scans_ScanIndex(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3123]!, self._r[3123]!, [_0])
+ return formatWithArgumentRanges(self._s[3124]!, self._r[3124]!, [_0])
}
- public var Channel_AdminLog_MessagePreviousLink: String { return self._s[3124]! }
- public var OldChannels_Title: String { return self._s[3125]! }
- public var LoginPassword_FloodError: String { return self._s[3126]! }
- public var ChatImportActivity_InProgress: String { return self._s[3128]! }
- public var Checkout_ErrorPaymentFailed: String { return self._s[3129]! }
+ public var Channel_AdminLog_MessagePreviousLink: String { return self._s[3125]! }
+ public var OldChannels_Title: String { return self._s[3126]! }
+ public var LoginPassword_FloodError: String { return self._s[3127]! }
+ public var ChatImportActivity_InProgress: String { return self._s[3129]! }
+ public var Checkout_ErrorPaymentFailed: String { return self._s[3130]! }
public func Time_MonthOfYear_m7(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3130]!, self._r[3130]!, [_0])
+ return formatWithArgumentRanges(self._s[3131]!, self._r[3131]!, [_0])
}
- public var VoiceOver_Media_PlaybackPlay: String { return self._s[3133]! }
- public var Passport_CorrectErrors: String { return self._s[3135]! }
+ public var VoiceOver_Media_PlaybackPlay: String { return self._s[3134]! }
+ public var Passport_CorrectErrors: String { return self._s[3136]! }
public func PUSH_CHAT_PHOTO_EDITED(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3136]!, self._r[3136]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3137]!, self._r[3137]!, [_1, _2])
}
- public var ChatListFolderSettings_Title: String { return self._s[3137]! }
+ public var ChatListFolderSettings_Title: String { return self._s[3138]! }
public func AutoDownloadSettings_UpToFor(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3138]!, self._r[3138]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3139]!, self._r[3139]!, [_1, _2])
}
- public var PhotoEditor_HighlightsTool: String { return self._s[3139]! }
- public var Contacts_NotRegisteredSection: String { return self._s[3142]! }
+ public var PhotoEditor_HighlightsTool: String { return self._s[3140]! }
+ public var Contacts_NotRegisteredSection: String { return self._s[3143]! }
public func Call_VoiceChatInProgressCallMessage(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3143]!, self._r[3143]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3144]!, self._r[3144]!, [_1, _2])
}
public func PUSH_PINNED_DOC(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3144]!, self._r[3144]!, [_1])
+ return formatWithArgumentRanges(self._s[3145]!, self._r[3145]!, [_1])
}
- public var InviteLink_Create_UsersLimitInfo: String { return self._s[3145]! }
- public var User_DeletedAccount: String { return self._s[3146]! }
- public var Conversation_ViewContactDetails: String { return self._s[3147]! }
- public var Conversation_Dice_u1F3B3: String { return self._s[3148]! }
- public var WebSearch_GIFs: String { return self._s[3149]! }
- public var ChatList_DeleteSavedMessagesConfirmationAction: String { return self._s[3150]! }
- public var Appearance_PreviewOutgoingText: String { return self._s[3151]! }
- public var Calls_CallTabTitle: String { return self._s[3152]! }
- public var Call_VoiceChatInProgressTitle: String { return self._s[3153]! }
- public var Checkout_OptionalTipItem: String { return self._s[3154]! }
+ public var InviteLink_Create_UsersLimitInfo: String { return self._s[3146]! }
+ public var User_DeletedAccount: String { return self._s[3147]! }
+ public var Conversation_ViewContactDetails: String { return self._s[3148]! }
+ public var Conversation_Dice_u1F3B3: String { return self._s[3149]! }
+ public var WebSearch_GIFs: String { return self._s[3150]! }
+ public var ChatList_DeleteSavedMessagesConfirmationAction: String { return self._s[3151]! }
+ public var Appearance_PreviewOutgoingText: String { return self._s[3152]! }
+ public var Calls_CallTabTitle: String { return self._s[3153]! }
+ public var Call_VoiceChatInProgressTitle: String { return self._s[3154]! }
+ public var Checkout_OptionalTipItem: String { return self._s[3155]! }
public func LastSeen_YesterdayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3155]!, self._r[3155]!, [_0])
+ return formatWithArgumentRanges(self._s[3156]!, self._r[3156]!, [_0])
}
- public var Channel_Status: String { return self._s[3156]! }
- public var Conversation_SendMessageErrorGroupRestricted: String { return self._s[3158]! }
- public var VoiceOver_Chat_OptionSelected: String { return self._s[3159]! }
- public var SettingsSearch_Synonyms_Notifications_ChannelNotificationsAlert: String { return self._s[3160]! }
+ public var Channel_Status: String { return self._s[3157]! }
+ public var Conversation_SendMessageErrorGroupRestricted: String { return self._s[3159]! }
+ public var VoiceOver_Chat_OptionSelected: String { return self._s[3160]! }
+ public var SettingsSearch_Synonyms_Notifications_ChannelNotificationsAlert: String { return self._s[3161]! }
public func ClearCache_Success(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3161]!, self._r[3161]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[3162]!, self._r[3162]!, [_0, _1])
}
- public var Passport_Identity_ExpiryDateNone: String { return self._s[3163]! }
- public var Your_cards_expiration_month_is_invalid: String { return self._s[3165]! }
- public var Month_ShortDecember: String { return self._s[3166]! }
- public var Username_Help: String { return self._s[3167]! }
- public var Login_InfoAvatarAdd: String { return self._s[3168]! }
- public var Month_ShortMay: String { return self._s[3169]! }
- public var DialogList_UnknownPinLimitError: String { return self._s[3170]! }
- public var PasscodeSettings_AutoLock_IfAwayFor_5hours: String { return self._s[3171]! }
- public var TwoStepAuth_EnabledSuccess: String { return self._s[3172]! }
- public var VoiceChat_StopScreenSharing: String { return self._s[3173]! }
- public var VoiceChat_AskedToSpeak: String { return self._s[3174]! }
- public var Weekday_ShortSunday: String { return self._s[3175]! }
- public var Channel_Username_InvalidTooShort: String { return self._s[3176]! }
- public var AuthSessions_TerminateSession: String { return self._s[3177]! }
- public var Passport_Identity_FilesTitle: String { return self._s[3178]! }
+ public var Passport_Identity_ExpiryDateNone: String { return self._s[3164]! }
+ public var Your_cards_expiration_month_is_invalid: String { return self._s[3166]! }
+ public var Month_ShortDecember: String { return self._s[3167]! }
+ public var Username_Help: String { return self._s[3168]! }
+ public var Login_InfoAvatarAdd: String { return self._s[3169]! }
+ public var Month_ShortMay: String { return self._s[3170]! }
+ public var DialogList_UnknownPinLimitError: String { return self._s[3171]! }
+ public var PasscodeSettings_AutoLock_IfAwayFor_5hours: String { return self._s[3172]! }
+ public var TwoStepAuth_EnabledSuccess: String { return self._s[3173]! }
+ public var VoiceChat_StopScreenSharing: String { return self._s[3174]! }
+ public var VoiceChat_AskedToSpeak: String { return self._s[3175]! }
+ public var Weekday_ShortSunday: String { return self._s[3176]! }
+ public var Channel_Username_InvalidTooShort: String { return self._s[3177]! }
+ public var AuthSessions_TerminateSession: String { return self._s[3178]! }
+ public var Passport_Identity_FilesTitle: String { return self._s[3179]! }
public func Notification_PinnedRoundMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3179]!, self._r[3179]!, [_0])
+ return formatWithArgumentRanges(self._s[3180]!, self._r[3180]!, [_0])
}
- public var PeopleNearby_MakeVisible: String { return self._s[3181]! }
+ public var PeopleNearby_MakeVisible: String { return self._s[3182]! }
public func Conversation_RestrictedMediaTimed(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3182]!, self._r[3182]!, [_0])
+ return formatWithArgumentRanges(self._s[3183]!, self._r[3183]!, [_0])
}
- public var Widget_UpdatedAt: String { return self._s[3183]! }
+ public var Widget_UpdatedAt: String { return self._s[3184]! }
public func Notification_MessageLifetimeChanged(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3184]!, self._r[3184]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3185]!, self._r[3185]!, [_1, _2])
}
public func GroupInfo_AddParticipantConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3185]!, self._r[3185]!, [_0])
+ return formatWithArgumentRanges(self._s[3186]!, self._r[3186]!, [_0])
}
- public var PrivacyPolicy_DeclineDeclineAndDelete: String { return self._s[3186]! }
- public var VoiceChat_VideoPreviewShareScreen: String { return self._s[3187]! }
- public var ImportStickerPack_ChooseStickerSet: String { return self._s[3189]! }
- public var Conversation_ContextMenuForward: String { return self._s[3190]! }
- public var Channel_AdminLog_CanManageCalls: String { return self._s[3191]! }
+ public var PrivacyPolicy_DeclineDeclineAndDelete: String { return self._s[3187]! }
+ public var VoiceChat_VideoPreviewShareScreen: String { return self._s[3188]! }
+ public var ImportStickerPack_ChooseStickerSet: String { return self._s[3190]! }
+ public var Conversation_ContextMenuForward: String { return self._s[3191]! }
+ public var Channel_AdminLog_CanManageCalls: String { return self._s[3192]! }
public func PUSH_CHAT_MESSAGE_QUIZ(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3193]!, self._r[3193]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[3194]!, self._r[3194]!, [_1, _2, _3])
}
- public var Notification_GroupInviterSelf: String { return self._s[3195]! }
- public var Privacy_Forwards_NeverLink: String { return self._s[3196]! }
- public var AuthSessions_CurrentSession: String { return self._s[3197]! }
- public var Passport_Address_EditPassportRegistration: String { return self._s[3198]! }
- public var ChannelInfo_DeleteChannelConfirmation: String { return self._s[3199]! }
- public var ChatSearch_ResultsTooltip: String { return self._s[3201]! }
- public var CheckoutInfo_Pay: String { return self._s[3202]! }
+ public var Notification_GroupInviterSelf: String { return self._s[3196]! }
+ public var Privacy_Forwards_NeverLink: String { return self._s[3197]! }
+ public var AuthSessions_CurrentSession: String { return self._s[3198]! }
+ public var Passport_Address_EditPassportRegistration: String { return self._s[3199]! }
+ public var ChannelInfo_DeleteChannelConfirmation: String { return self._s[3200]! }
+ public var ChatSearch_ResultsTooltip: String { return self._s[3202]! }
+ public var CheckoutInfo_Pay: String { return self._s[3203]! }
public func Conversation_PinMessagesFor(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3204]!, self._r[3204]!, [_0])
+ return formatWithArgumentRanges(self._s[3205]!, self._r[3205]!, [_0])
}
- public var GroupInfo_AddParticipant: String { return self._s[3205]! }
- public var GroupPermission_ApplyAlertAction: String { return self._s[3206]! }
+ public var GroupInfo_AddParticipant: String { return self._s[3206]! }
+ public var GroupPermission_ApplyAlertAction: String { return self._s[3207]! }
public func Channel_AdminLog_MessageChangedChannelUsername(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3207]!, self._r[3207]!, [_0])
+ return formatWithArgumentRanges(self._s[3208]!, self._r[3208]!, [_0])
}
- public var Localization_LanguageCustom: String { return self._s[3208]! }
- public var SettingsSearch_Synonyms_Passport: String { return self._s[3209]! }
- public var Settings_UsernameEmpty: String { return self._s[3210]! }
- public var Settings_FAQ_URL: String { return self._s[3211]! }
- public var ChatList_UndoArchiveText1: String { return self._s[3212]! }
- public var Common_Select: String { return self._s[3214]! }
- public var Notification_MessageLifetimeRemovedOutgoing: String { return self._s[3215]! }
- public var Notification_PassportValueAddress: String { return self._s[3216]! }
- public var Conversation_MessageDialogDelete: String { return self._s[3217]! }
- public var Map_OpenInYandexNavigator: String { return self._s[3219]! }
- public var DialogList_SearchSectionDialogs: String { return self._s[3220]! }
- public var AccessDenied_Contacts: String { return self._s[3221]! }
- public var SettingsSearch_Synonyms_Privacy_Data_DeleteDrafts: String { return self._s[3223]! }
- public var Passport_ScanPassportHelp: String { return self._s[3224]! }
- public var Chat_PinnedListPreview_HidePinnedMessages: String { return self._s[3225]! }
- public var ChatListFolder_NameChannels: String { return self._s[3226]! }
- public var Appearance_ThemePreview_Chat_5_Text: String { return self._s[3227]! }
+ public var Localization_LanguageCustom: String { return self._s[3209]! }
+ public var SettingsSearch_Synonyms_Passport: String { return self._s[3210]! }
+ public var Settings_UsernameEmpty: String { return self._s[3211]! }
+ public var Settings_FAQ_URL: String { return self._s[3212]! }
+ public var ChatList_UndoArchiveText1: String { return self._s[3213]! }
+ public var Common_Select: String { return self._s[3215]! }
+ public var Notification_MessageLifetimeRemovedOutgoing: String { return self._s[3216]! }
+ public var Notification_PassportValueAddress: String { return self._s[3217]! }
+ public var Conversation_MessageDialogDelete: String { return self._s[3218]! }
+ public var Map_OpenInYandexNavigator: String { return self._s[3220]! }
+ public var DialogList_SearchSectionDialogs: String { return self._s[3221]! }
+ public var AccessDenied_Contacts: String { return self._s[3222]! }
+ public var SettingsSearch_Synonyms_Privacy_Data_DeleteDrafts: String { return self._s[3224]! }
+ public var Passport_ScanPassportHelp: String { return self._s[3225]! }
+ public var Chat_PinnedListPreview_HidePinnedMessages: String { return self._s[3226]! }
+ public var ChatListFolder_NameChannels: String { return self._s[3227]! }
+ public var Appearance_ThemePreview_Chat_5_Text: String { return self._s[3228]! }
public func Channel_OwnershipTransfer_TransferCompleted(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3228]!, self._r[3228]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3229]!, self._r[3229]!, [_1, _2])
}
- public var Checkout_ErrorInvoiceAlreadyPaid: String { return self._s[3229]! }
+ public var Checkout_ErrorInvoiceAlreadyPaid: String { return self._s[3230]! }
public func VoiceChat_InviteMemberToGroupFirstText(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3230]!, self._r[3230]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3231]!, self._r[3231]!, [_1, _2])
}
- public var Conversation_GifTooltip: String { return self._s[3231]! }
- public var Widget_MessageAutoremoveTimerUpdated: String { return self._s[3232]! }
- public var Passport_Identity_TypeDriversLicenseUploadScan: String { return self._s[3234]! }
- public var VoiceChat_Connecting: String { return self._s[3235]! }
- public var AutoDownloadSettings_OffForAll: String { return self._s[3236]! }
+ public var Conversation_GifTooltip: String { return self._s[3232]! }
+ public var Widget_MessageAutoremoveTimerUpdated: String { return self._s[3233]! }
+ public var Passport_Identity_TypeDriversLicenseUploadScan: String { return self._s[3235]! }
+ public var VoiceChat_Connecting: String { return self._s[3236]! }
+ public var AutoDownloadSettings_OffForAll: String { return self._s[3237]! }
public func Channel_AdminLog_CreatedInviteLink(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3237]!, self._r[3237]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3238]!, self._r[3238]!, [_1, _2])
}
- public var Privacy_GroupsAndChannels_InviteToChannelMultipleError: String { return self._s[3238]! }
- public var AutoDownloadSettings_PreloadVideo: String { return self._s[3239]! }
- public var CreatePoll_Quiz: String { return self._s[3240]! }
- public var TwoFactorSetup_Email_Placeholder: String { return self._s[3242]! }
- public var Watch_Message_Invoice: String { return self._s[3243]! }
- public var Settings_AddAnotherAccount_Help: String { return self._s[3244]! }
- public var Watch_Message_Unsupported: String { return self._s[3245]! }
+ public var Privacy_GroupsAndChannels_InviteToChannelMultipleError: String { return self._s[3239]! }
+ public var AutoDownloadSettings_PreloadVideo: String { return self._s[3240]! }
+ public var CreatePoll_Quiz: String { return self._s[3241]! }
+ public var TwoFactorSetup_Email_Placeholder: String { return self._s[3243]! }
+ public var Watch_Message_Invoice: String { return self._s[3244]! }
+ public var Settings_AddAnotherAccount_Help: String { return self._s[3245]! }
+ public var Watch_Message_Unsupported: String { return self._s[3246]! }
public func Call_CameraOff(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3247]!, self._r[3247]!, [_0])
+ return formatWithArgumentRanges(self._s[3248]!, self._r[3248]!, [_0])
}
- public var AuthSessions_TerminateOtherSessions: String { return self._s[3248]! }
- public var CreatePoll_AllOptionsAdded: String { return self._s[3250]! }
- public var TwoStepAuth_RecoveryEmailTitle: String { return self._s[3251]! }
- public var Call_IncomingVoiceCall: String { return self._s[3252]! }
+ public var AuthSessions_TerminateOtherSessions: String { return self._s[3249]! }
+ public var CreatePoll_AllOptionsAdded: String { return self._s[3251]! }
+ public var TwoStepAuth_RecoveryEmailTitle: String { return self._s[3252]! }
+ public var Call_IncomingVoiceCall: String { return self._s[3253]! }
public func Channel_AdminLog_MessageTransferedNameUsername(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3253]!, self._r[3253]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3254]!, self._r[3254]!, [_1, _2])
}
- public var PrivacySettings_DeleteAccountHelp: String { return self._s[3254]! }
- public var Passport_Address_TypePassportRegistrationUploadScan: String { return self._s[3255]! }
- public var Group_EditAdmin_RankOwnerPlaceholder: String { return self._s[3256]! }
- public var Group_ErrorAccessDenied: String { return self._s[3257]! }
- public var PasscodeSettings_HelpTop: String { return self._s[3258]! }
- public var Watch_ChatList_NoConversationsTitle: String { return self._s[3259]! }
- public var AddContact_SharedContactException: String { return self._s[3260]! }
- public var AccessDenied_MicrophoneRestricted: String { return self._s[3261]! }
- public var Privacy_TopPeers: String { return self._s[3262]! }
- public var Web_OpenExternal: String { return self._s[3263]! }
- public var Group_ErrorSendRestrictedStickers: String { return self._s[3264]! }
- public var Channel_Management_LabelAdministrator: String { return self._s[3265]! }
+ public var PrivacySettings_DeleteAccountHelp: String { return self._s[3255]! }
+ public var Passport_Address_TypePassportRegistrationUploadScan: String { return self._s[3256]! }
+ public var Group_EditAdmin_RankOwnerPlaceholder: String { return self._s[3257]! }
+ public var Group_ErrorAccessDenied: String { return self._s[3258]! }
+ public var PasscodeSettings_HelpTop: String { return self._s[3259]! }
+ public var Watch_ChatList_NoConversationsTitle: String { return self._s[3260]! }
+ public var AddContact_SharedContactException: String { return self._s[3261]! }
+ public var AccessDenied_MicrophoneRestricted: String { return self._s[3262]! }
+ public var Privacy_TopPeers: String { return self._s[3263]! }
+ public var Web_OpenExternal: String { return self._s[3264]! }
+ public var Group_ErrorSendRestrictedStickers: String { return self._s[3265]! }
+ public var Channel_Management_LabelAdministrator: String { return self._s[3266]! }
public func ChangePhoneNumberCode_CallTimer(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3266]!, self._r[3266]!, [_0])
+ return formatWithArgumentRanges(self._s[3267]!, self._r[3267]!, [_0])
}
- public var Conversation_PhoneCopied: String { return self._s[3267]! }
- public var Permissions_Skip: String { return self._s[3268]! }
- public var Notifications_GroupNotificationsExceptions: String { return self._s[3269]! }
+ public var Conversation_PhoneCopied: String { return self._s[3268]! }
+ public var Permissions_Skip: String { return self._s[3269]! }
+ public var Notifications_GroupNotificationsExceptions: String { return self._s[3270]! }
public func VoiceChat_ForwardTooltip_TwoChats(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3270]!, self._r[3270]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[3271]!, self._r[3271]!, [_0, _1])
}
- public var PeopleNearby_Title: String { return self._s[3271]! }
- public var GroupInfo_SharedMediaNone: String { return self._s[3272]! }
+ public var PeopleNearby_Title: String { return self._s[3272]! }
+ public var GroupInfo_SharedMediaNone: String { return self._s[3273]! }
public func PUSH_MESSAGE_GEOLIVE(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3274]!, self._r[3274]!, [_1])
+ return formatWithArgumentRanges(self._s[3275]!, self._r[3275]!, [_1])
}
- public var Profile_MessageLifetime1w: String { return self._s[3275]! }
+ public var Profile_MessageLifetime1w: String { return self._s[3276]! }
public func Time_PreciseDate_m6(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3276]!, self._r[3276]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[3277]!, self._r[3277]!, [_1, _2, _3])
}
- public var WebBrowser_DefaultBrowser: String { return self._s[3277]! }
- public var Conversation_PinOlderMessageAlertTitle: String { return self._s[3279]! }
- public var EditTheme_Edit_BottomInfo: String { return self._s[3280]! }
- public var Privacy_Forwards_Preview: String { return self._s[3281]! }
- public var Settings_EditAccount: String { return self._s[3282]! }
+ public var WebBrowser_DefaultBrowser: String { return self._s[3278]! }
+ public var Conversation_PinOlderMessageAlertTitle: String { return self._s[3280]! }
+ public var EditTheme_Edit_BottomInfo: String { return self._s[3281]! }
+ public var Privacy_Forwards_Preview: String { return self._s[3282]! }
+ public var Settings_EditAccount: String { return self._s[3283]! }
public func Conversation_RestrictedInlineTimed(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3283]!, self._r[3283]!, [_0])
+ return formatWithArgumentRanges(self._s[3284]!, self._r[3284]!, [_0])
}
- public var TwoFactorSetup_Intro_Title: String { return self._s[3284]! }
+ public var TwoFactorSetup_Intro_Title: String { return self._s[3285]! }
public func Channel_AdminLog_MessagePromotedName(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3286]!, self._r[3286]!, [_1])
+ return formatWithArgumentRanges(self._s[3287]!, self._r[3287]!, [_1])
}
- public var PeerInfo_ButtonVideoCall: String { return self._s[3287]! }
+ public var PeerInfo_ButtonVideoCall: String { return self._s[3288]! }
public func DialogList_SingleUploadingPhotoSuffix(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3288]!, self._r[3288]!, [_0])
+ return formatWithArgumentRanges(self._s[3289]!, self._r[3289]!, [_0])
}
- public var Login_InfoHelp: String { return self._s[3289]! }
- public var Notification_SecretChatMessageScreenshotSelf: String { return self._s[3290]! }
- public var VoiceChat_SpeakPermissionEveryone: String { return self._s[3291]! }
- public var Profile_MessageLifetime1d: String { return self._s[3292]! }
- public var Group_UpgradeConfirmation: String { return self._s[3293]! }
+ public var Login_InfoHelp: String { return self._s[3290]! }
+ public var Notification_SecretChatMessageScreenshotSelf: String { return self._s[3291]! }
+ public var VoiceChat_SpeakPermissionEveryone: String { return self._s[3292]! }
+ public var Profile_MessageLifetime1d: String { return self._s[3293]! }
+ public var Group_UpgradeConfirmation: String { return self._s[3294]! }
public func PUSH_PINNED_STICKER(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3294]!, self._r[3294]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3295]!, self._r[3295]!, [_1, _2])
}
- public var Appearance_RemoveThemeColor: String { return self._s[3295]! }
- public var Channel_AdminLog_TitleSelectedEvents: String { return self._s[3296]! }
+ public var Appearance_RemoveThemeColor: String { return self._s[3296]! }
+ public var VoiceChat_VideoPreviewFrontCamera: String { return self._s[3297]! }
+ public var Channel_AdminLog_TitleSelectedEvents: String { return self._s[3298]! }
public func Call_AnsweringWithAccount(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3297]!, self._r[3297]!, [_0])
+ return formatWithArgumentRanges(self._s[3299]!, self._r[3299]!, [_0])
}
- public var UserInfo_BotSettings: String { return self._s[3298]! }
+ public var UserInfo_BotSettings: String { return self._s[3300]! }
public func Notification_ChannelInviter(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3300]!, self._r[3300]!, [_0])
+ return formatWithArgumentRanges(self._s[3302]!, self._r[3302]!, [_0])
}
- public var Permissions_ContactsText_v0: String { return self._s[3301]! }
- public var Conversation_PinMessagesForMe: String { return self._s[3302]! }
- public var VoiceChat_PanelJoin: String { return self._s[3303]! }
- public var Conversation_DiscussionStarted: String { return self._s[3305]! }
- public var SettingsSearch_Synonyms_Privacy_TwoStepAuth: String { return self._s[3306]! }
- public var SharedMedia_SearchNoResults: String { return self._s[3308]! }
+ public var Permissions_ContactsText_v0: String { return self._s[3303]! }
+ public var Conversation_PinMessagesForMe: String { return self._s[3304]! }
+ public var VoiceChat_PanelJoin: String { return self._s[3305]! }
+ public var Conversation_DiscussionStarted: String { return self._s[3307]! }
+ public var SettingsSearch_Synonyms_Privacy_TwoStepAuth: String { return self._s[3308]! }
+ public var SharedMedia_SearchNoResults: String { return self._s[3310]! }
public func Login_EmailPhoneSubject(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3310]!, self._r[3310]!, [_0])
- }
- public func Conversation_ShareMyPhoneNumber_StatusSuccess(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[3312]!, self._r[3312]!, [_0])
}
- public var ReportPeer_ReasonOther_Placeholder: String { return self._s[3313]! }
- public func TwoStepAuth_ResetPendingText(_ _0: String) -> (String, [(Int, NSRange)]) {
+ public func Conversation_ShareMyPhoneNumber_StatusSuccess(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[3314]!, self._r[3314]!, [_0])
}
- public var ContactInfo_PhoneLabelHomeFax: String { return self._s[3315]! }
- public var Call_AudioRouteHeadphones: String { return self._s[3316]! }
+ public var ReportPeer_ReasonOther_Placeholder: String { return self._s[3315]! }
+ public func TwoStepAuth_ResetPendingText(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[3316]!, self._r[3316]!, [_0])
+ }
+ public var ContactInfo_PhoneLabelHomeFax: String { return self._s[3317]! }
+ public var Call_AudioRouteHeadphones: String { return self._s[3318]! }
public func Notification_VoiceChatScheduledTomorrowChannel(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3318]!, self._r[3318]!, [_0])
+ return formatWithArgumentRanges(self._s[3320]!, self._r[3320]!, [_0])
}
public func PUSH_AUTH_UNKNOWN(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3319]!, self._r[3319]!, [_1])
+ return formatWithArgumentRanges(self._s[3321]!, self._r[3321]!, [_1])
}
- public var Passport_Identity_FilesView: String { return self._s[3320]! }
- public var TwoStepAuth_SetupEmail: String { return self._s[3321]! }
- public var Widget_ApplicationStartRequired: String { return self._s[3322]! }
- public var PhotoEditor_Original: String { return self._s[3323]! }
- public var Call_YourMicrophoneOff: String { return self._s[3324]! }
- public var Permissions_ContactsAllow_v0: String { return self._s[3325]! }
- public var Conversation_CardNumberCopied: String { return self._s[3326]! }
- public var Notification_Exceptions_PreviewAlwaysOn: String { return self._s[3327]! }
- public var PrivacyPolicy_Decline: String { return self._s[3328]! }
- public var SettingsSearch_Synonyms_ChatFolders: String { return self._s[3329]! }
- public var TwoStepAuth_PasswordRemoveConfirmation: String { return self._s[3330]! }
- public var ChatListFolder_IncludeSectionInfo: String { return self._s[3331]! }
+ public var Passport_Identity_FilesView: String { return self._s[3322]! }
+ public var TwoStepAuth_SetupEmail: String { return self._s[3323]! }
+ public var Widget_ApplicationStartRequired: String { return self._s[3324]! }
+ public var PhotoEditor_Original: String { return self._s[3325]! }
+ public var Call_YourMicrophoneOff: String { return self._s[3326]! }
+ public var Permissions_ContactsAllow_v0: String { return self._s[3327]! }
+ public var Conversation_CardNumberCopied: String { return self._s[3328]! }
+ public var Notification_Exceptions_PreviewAlwaysOn: String { return self._s[3329]! }
+ public var PrivacyPolicy_Decline: String { return self._s[3330]! }
+ public var SettingsSearch_Synonyms_ChatFolders: String { return self._s[3331]! }
+ public var TwoStepAuth_PasswordRemoveConfirmation: String { return self._s[3332]! }
+ public var ChatListFolder_IncludeSectionInfo: String { return self._s[3333]! }
public func Map_DirectionsDriveEta(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3332]!, self._r[3332]!, [_0])
+ return formatWithArgumentRanges(self._s[3334]!, self._r[3334]!, [_0])
}
- public var Passport_Identity_Name: String { return self._s[3333]! }
- public var WallpaperPreview_PatternTitle: String { return self._s[3335]! }
- public var VoiceOver_Chat_RecordModeVideoMessage: String { return self._s[3336]! }
- public var WallpaperSearch_ColorOrange: String { return self._s[3338]! }
- public var Appearance_ThemePreview_ChatList_5_Name: String { return self._s[3339]! }
- public var GroupInfo_Permissions_SlowmodeInfo: String { return self._s[3340]! }
- public var Your_cards_security_code_is_invalid: String { return self._s[3341]! }
- public var IntentsSettings_ResetAll: String { return self._s[3342]! }
- public var SettingsSearch_Synonyms_Calls_CallTab: String { return self._s[3344]! }
- public var Group_EditAdmin_TransferOwnership: String { return self._s[3345]! }
- public var ChatList_DeleteForAllSubscribers: String { return self._s[3346]! }
- public var Notification_Exceptions_Add: String { return self._s[3347]! }
- public var Group_DeleteGroup: String { return self._s[3348]! }
- public var Cache_Help: String { return self._s[3349]! }
- public var Call_AudioRouteMute: String { return self._s[3350]! }
- public var VoiceOver_Chat_YourVoiceMessage: String { return self._s[3351]! }
- public var SocksProxySetup_ProxyEnabled: String { return self._s[3352]! }
+ public var Passport_Identity_Name: String { return self._s[3335]! }
+ public var WallpaperPreview_PatternTitle: String { return self._s[3337]! }
+ public var VoiceOver_Chat_RecordModeVideoMessage: String { return self._s[3338]! }
+ public var WallpaperSearch_ColorOrange: String { return self._s[3340]! }
+ public var Appearance_ThemePreview_ChatList_5_Name: String { return self._s[3341]! }
+ public var GroupInfo_Permissions_SlowmodeInfo: String { return self._s[3342]! }
+ public var Your_cards_security_code_is_invalid: String { return self._s[3343]! }
+ public var IntentsSettings_ResetAll: String { return self._s[3344]! }
+ public var SettingsSearch_Synonyms_Calls_CallTab: String { return self._s[3346]! }
+ public var Group_EditAdmin_TransferOwnership: String { return self._s[3347]! }
+ public var ChatList_DeleteForAllSubscribers: String { return self._s[3348]! }
+ public var Notification_Exceptions_Add: String { return self._s[3349]! }
+ public var Group_DeleteGroup: String { return self._s[3350]! }
+ public var Cache_Help: String { return self._s[3351]! }
+ public var Call_AudioRouteMute: String { return self._s[3352]! }
+ public var VoiceOver_Chat_YourVoiceMessage: String { return self._s[3353]! }
+ public var SocksProxySetup_ProxyEnabled: String { return self._s[3354]! }
public func VoiceChat_Status_MembersFormat(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3353]!, self._r[3353]!, [_1, _2])
- }
- public func ApplyLanguage_UnsufficientDataText(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3354]!, self._r[3354]!, [_1])
- }
- public func Call_CallInProgressMessage(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[3355]!, self._r[3355]!, [_1, _2])
}
- public var AutoDownloadSettings_VideoMessagesTitle: String { return self._s[3356]! }
- public var Channel_BanUser_PermissionAddMembers: String { return self._s[3357]! }
+ public func ApplyLanguage_UnsufficientDataText(_ _1: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[3356]!, self._r[3356]!, [_1])
+ }
+ public func Call_CallInProgressMessage(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[3357]!, self._r[3357]!, [_1, _2])
+ }
+ public var AutoDownloadSettings_VideoMessagesTitle: String { return self._s[3358]! }
+ public var Channel_BanUser_PermissionAddMembers: String { return self._s[3359]! }
public func PUSH_CHAT_VOICECHAT_INVITE(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3358]!, self._r[3358]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[3360]!, self._r[3360]!, [_1, _2, _3])
}
- public var Contacts_MemberSearchSectionTitleGroup: String { return self._s[3359]! }
- public var TwoStepAuth_RecoveryCodeHelp: String { return self._s[3360]! }
- public var ClearCache_StorageFree: String { return self._s[3361]! }
+ public var Contacts_MemberSearchSectionTitleGroup: String { return self._s[3361]! }
+ public var TwoStepAuth_RecoveryCodeHelp: String { return self._s[3362]! }
+ public var ClearCache_StorageFree: String { return self._s[3363]! }
public func DialogList_SingleRecordingVideoMessageSuffix(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3362]!, self._r[3362]!, [_0])
+ return formatWithArgumentRanges(self._s[3364]!, self._r[3364]!, [_0])
}
- public var Privacy_Forwards_CustomHelp: String { return self._s[3363]! }
+ public var Privacy_Forwards_CustomHelp: String { return self._s[3365]! }
public func Channel_AdminLog_EditedInviteLink(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3365]!, self._r[3365]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3367]!, self._r[3367]!, [_1, _2])
}
- public var Group_ErrorAddTooMuchAdmins: String { return self._s[3366]! }
- public var DialogList_Typing: String { return self._s[3367]! }
+ public var Group_ErrorAddTooMuchAdmins: String { return self._s[3368]! }
+ public var DialogList_Typing: String { return self._s[3369]! }
public func Login_EmailCodeSubject(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3368]!, self._r[3368]!, [_0])
+ return formatWithArgumentRanges(self._s[3370]!, self._r[3370]!, [_0])
}
- public var Target_SelectGroup: String { return self._s[3369]! }
- public var AuthSessions_IncompleteAttempts: String { return self._s[3370]! }
- public var TwoStepAuth_RecoveryEmailResetText: String { return self._s[3371]! }
- public var TwoFactorRemember_Done_Text: String { return self._s[3372]! }
+ public var Target_SelectGroup: String { return self._s[3371]! }
+ public var AuthSessions_IncompleteAttempts: String { return self._s[3372]! }
+ public var TwoStepAuth_RecoveryEmailResetText: String { return self._s[3373]! }
+ public var TwoFactorRemember_Done_Text: String { return self._s[3374]! }
public func Notification_ProximityReached(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3373]!, self._r[3373]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[3375]!, self._r[3375]!, [_1, _2, _3])
}
- public var Chat_PinnedListPreview_ShowAllMessages: String { return self._s[3374]! }
- public var TwoStepAuth_EmailChangeSuccess: String { return self._s[3375]! }
+ public var Chat_PinnedListPreview_ShowAllMessages: String { return self._s[3376]! }
+ public var TwoStepAuth_EmailChangeSuccess: String { return self._s[3377]! }
public func Settings_CheckPhoneNumberTitle(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3376]!, self._r[3376]!, [_0])
+ return formatWithArgumentRanges(self._s[3378]!, self._r[3378]!, [_0])
}
- public var Channel_AdminLog_CanSendMessages: String { return self._s[3377]! }
- public var TwoFactorSetup_EmailVerification_Title: String { return self._s[3378]! }
- public var ChatSettings_TextSize: String { return self._s[3379]! }
- public var Channel_AdminLogFilter_EventsEditedMessages: String { return self._s[3381]! }
- public var Map_SendThisPlace: String { return self._s[3382]! }
- public var Conversation_TextCopied: String { return self._s[3383]! }
- public var Login_PhoneNumberAlreadyAuthorized: String { return self._s[3384]! }
- public var ContactInfo_BirthdayLabel: String { return self._s[3385]! }
- public var Call_ShareStats: String { return self._s[3386]! }
+ public var Channel_AdminLog_CanSendMessages: String { return self._s[3379]! }
+ public var TwoFactorSetup_EmailVerification_Title: String { return self._s[3380]! }
+ public var ChatSettings_TextSize: String { return self._s[3381]! }
+ public var Channel_AdminLogFilter_EventsEditedMessages: String { return self._s[3383]! }
+ public var Map_SendThisPlace: String { return self._s[3384]! }
+ public var Conversation_TextCopied: String { return self._s[3385]! }
+ public var Login_PhoneNumberAlreadyAuthorized: String { return self._s[3386]! }
+ public var ContactInfo_BirthdayLabel: String { return self._s[3387]! }
+ public var Call_ShareStats: String { return self._s[3388]! }
public func PUSH_CHAT_VOICECHAT_END(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3388]!, self._r[3388]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3390]!, self._r[3390]!, [_1, _2])
}
- public var ChatList_UndoArchiveRevealedText: String { return self._s[3389]! }
- public var Notifications_GroupNotificationsPreview: String { return self._s[3390]! }
- public var Settings_Support: String { return self._s[3391]! }
- public var GroupInfo_ChannelListNamePlaceholder: String { return self._s[3392]! }
+ public var ChatList_UndoArchiveRevealedText: String { return self._s[3391]! }
+ public var Notifications_GroupNotificationsPreview: String { return self._s[3392]! }
+ public var Settings_Support: String { return self._s[3393]! }
+ public var GroupInfo_ChannelListNamePlaceholder: String { return self._s[3394]! }
public func EmptyGroupInfo_Line1(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3394]!, self._r[3394]!, [_0])
+ return formatWithArgumentRanges(self._s[3396]!, self._r[3396]!, [_0])
}
- public var Watch_Conversation_GroupInfo: String { return self._s[3395]! }
- public var Tour_Text4: String { return self._s[3396]! }
- public var VoiceChat_CancelReminder: String { return self._s[3397]! }
- public var Calls_StartNewCall: String { return self._s[3398]! }
- public var UserInfo_FakeUserWarning: String { return self._s[3400]! }
- public var PasscodeSettings_AutoLock: String { return self._s[3401]! }
- public var Channel_BanList_BlockedTitle: String { return self._s[3402]! }
- public var Bot_DescriptionTitle: String { return self._s[3404]! }
- public var Map_LocationTitle: String { return self._s[3405]! }
- public var ChatListFolder_ExcludeSectionInfo: String { return self._s[3406]! }
- public var Conversation_HashtagCopied: String { return self._s[3407]! }
+ public var Watch_Conversation_GroupInfo: String { return self._s[3397]! }
+ public var Tour_Text4: String { return self._s[3398]! }
+ public var VoiceChat_CancelReminder: String { return self._s[3399]! }
+ public var Calls_StartNewCall: String { return self._s[3400]! }
+ public var UserInfo_FakeUserWarning: String { return self._s[3402]! }
+ public var PasscodeSettings_AutoLock: String { return self._s[3403]! }
+ public var Channel_BanList_BlockedTitle: String { return self._s[3404]! }
+ public var Bot_DescriptionTitle: String { return self._s[3406]! }
+ public var Map_LocationTitle: String { return self._s[3407]! }
+ public var ChatListFolder_ExcludeSectionInfo: String { return self._s[3408]! }
+ public var Conversation_HashtagCopied: String { return self._s[3409]! }
public func Notification_MessageLifetimeChangedOutgoing(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3408]!, self._r[3408]!, [_1])
+ return formatWithArgumentRanges(self._s[3410]!, self._r[3410]!, [_1])
}
- public var VoiceChat_ReminderNotify: String { return self._s[3409]! }
- public var Login_EmailNotConfiguredError: String { return self._s[3410]! }
- public var AutoDownloadSettings_LimitBySize: String { return self._s[3411]! }
- public var PrivacySettings_LastSeenNobody: String { return self._s[3412]! }
- public var Permissions_CellularDataText_v0: String { return self._s[3413]! }
- public var Conversation_EncryptionProcessing: String { return self._s[3414]! }
- public var GroupPermission_Delete: String { return self._s[3416]! }
- public var Contacts_SortByName: String { return self._s[3417]! }
- public var TwoStepAuth_RecoveryUnavailable: String { return self._s[3418]! }
- public var Compose_ChannelTokenListPlaceholder: String { return self._s[3419]! }
- public var Group_Management_AddModeratorHelp: String { return self._s[3421]! }
- public var SettingsSearch_Synonyms_EditProfile_Logout: String { return self._s[3422]! }
- public var Forward_ErrorPublicPollDisabledInChannels: String { return self._s[3423]! }
- public var CallFeedback_IncludeLogsInfo: String { return self._s[3425]! }
+ public var VoiceChat_ReminderNotify: String { return self._s[3411]! }
+ public var Login_EmailNotConfiguredError: String { return self._s[3412]! }
+ public var AutoDownloadSettings_LimitBySize: String { return self._s[3413]! }
+ public var PrivacySettings_LastSeenNobody: String { return self._s[3414]! }
+ public var Permissions_CellularDataText_v0: String { return self._s[3415]! }
+ public var Conversation_EncryptionProcessing: String { return self._s[3416]! }
+ public var GroupPermission_Delete: String { return self._s[3418]! }
+ public var Contacts_SortByName: String { return self._s[3419]! }
+ public var TwoStepAuth_RecoveryUnavailable: String { return self._s[3420]! }
+ public var Compose_ChannelTokenListPlaceholder: String { return self._s[3421]! }
+ public var Group_Management_AddModeratorHelp: String { return self._s[3423]! }
+ public var SettingsSearch_Synonyms_EditProfile_Logout: String { return self._s[3424]! }
+ public var Forward_ErrorPublicPollDisabledInChannels: String { return self._s[3425]! }
+ public var CallFeedback_IncludeLogsInfo: String { return self._s[3427]! }
public func PUSH_CHANNEL_MESSAGE_QUIZ(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3426]!, self._r[3426]!, [_1])
+ return formatWithArgumentRanges(self._s[3428]!, self._r[3428]!, [_1])
}
public func SecretVideo_NotViewedYet(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3427]!, self._r[3427]!, [_0])
+ return formatWithArgumentRanges(self._s[3429]!, self._r[3429]!, [_0])
}
- public var ChatList_Context_Delete: String { return self._s[3428]! }
- public var VoiceChat_InviteMember: String { return self._s[3429]! }
- public var PrivacyPhoneNumberSettings_CustomDisabledHelp: String { return self._s[3430]! }
- public var Conversation_Processing: String { return self._s[3431]! }
- public var TwoStepAuth_EmailCodeExpired: String { return self._s[3432]! }
- public var ChatSettings_Stickers: String { return self._s[3433]! }
- public var AppleWatch_ReplyPresetsHelp: String { return self._s[3434]! }
- public var Passport_Language_cs: String { return self._s[3435]! }
- public var GroupInfo_InvitationLinkGroupFull: String { return self._s[3437]! }
- public var Conversation_Contact: String { return self._s[3438]! }
- public var Passport_Identity_ReverseSideHelp: String { return self._s[3439]! }
- public var SocksProxySetup_PasteFromClipboard: String { return self._s[3441]! }
- public var Theme_Unsupported: String { return self._s[3442]! }
- public var Privacy_TopPeersWarning: String { return self._s[3443]! }
+ public var ChatList_Context_Delete: String { return self._s[3430]! }
+ public var VoiceChat_InviteMember: String { return self._s[3431]! }
+ public var PrivacyPhoneNumberSettings_CustomDisabledHelp: String { return self._s[3432]! }
+ public var Conversation_Processing: String { return self._s[3433]! }
+ public var TwoStepAuth_EmailCodeExpired: String { return self._s[3434]! }
+ public var ChatSettings_Stickers: String { return self._s[3435]! }
+ public var AppleWatch_ReplyPresetsHelp: String { return self._s[3436]! }
+ public var Passport_Language_cs: String { return self._s[3437]! }
+ public var GroupInfo_InvitationLinkGroupFull: String { return self._s[3439]! }
+ public var Conversation_Contact: String { return self._s[3440]! }
+ public var Passport_Identity_ReverseSideHelp: String { return self._s[3441]! }
+ public var SocksProxySetup_PasteFromClipboard: String { return self._s[3443]! }
+ public var Theme_Unsupported: String { return self._s[3444]! }
+ public var Privacy_TopPeersWarning: String { return self._s[3445]! }
public func Conversation_ScheduledVoiceChatStartsTodayShort(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3444]!, self._r[3444]!, [_0])
+ return formatWithArgumentRanges(self._s[3446]!, self._r[3446]!, [_0])
}
- public var InviteLink_Title: String { return self._s[3446]! }
+ public var InviteLink_Title: String { return self._s[3448]! }
public func UserInfo_BlockConfirmationTitle(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3447]!, self._r[3447]!, [_0])
+ return formatWithArgumentRanges(self._s[3449]!, self._r[3449]!, [_0])
}
- public var Conversation_SilentBroadcastTooltipOn: String { return self._s[3448]! }
- public var TwoStepAuth_RemovePassword: String { return self._s[3449]! }
- public var Settings_CheckPhoneNumberText: String { return self._s[3450]! }
- public var PeopleNearby_Users: String { return self._s[3451]! }
- public var Appearance_TextSize_UseSystem: String { return self._s[3452]! }
- public var Settings_SetProfilePhoto: String { return self._s[3453]! }
- public var Conversation_ContextMenuBan: String { return self._s[3454]! }
- public var KeyCommand_ScrollUp: String { return self._s[3455]! }
- public var Settings_ChatSettings: String { return self._s[3457]! }
- public var CallList_RecentCallsHeader: String { return self._s[3458]! }
+ public var Conversation_SilentBroadcastTooltipOn: String { return self._s[3450]! }
+ public var TwoStepAuth_RemovePassword: String { return self._s[3451]! }
+ public var Settings_CheckPhoneNumberText: String { return self._s[3452]! }
+ public var PeopleNearby_Users: String { return self._s[3453]! }
+ public var Appearance_TextSize_UseSystem: String { return self._s[3454]! }
+ public var Settings_SetProfilePhoto: String { return self._s[3455]! }
+ public var Conversation_ContextMenuBan: String { return self._s[3456]! }
+ public var KeyCommand_ScrollUp: String { return self._s[3457]! }
+ public var Settings_ChatSettings: String { return self._s[3459]! }
+ public var CallList_RecentCallsHeader: String { return self._s[3460]! }
public func PUSH_CHAT_MESSAGE_VIDEO(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3459]!, self._r[3459]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3461]!, self._r[3461]!, [_1, _2])
}
- public var Stats_GroupTopInvitersTitle: String { return self._s[3460]! }
- public var Passport_Phone_EnterOtherNumber: String { return self._s[3461]! }
- public var VoiceChat_StartRecordingTitle: String { return self._s[3462]! }
+ public var Stats_GroupTopInvitersTitle: String { return self._s[3462]! }
+ public var Passport_Phone_EnterOtherNumber: String { return self._s[3463]! }
+ public var VoiceChat_StartRecordingTitle: String { return self._s[3464]! }
public func Notification_VoiceChatScheduledToday(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3463]!, self._r[3463]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3465]!, self._r[3465]!, [_1, _2])
}
- public var Passport_Identity_MiddleNamePlaceholder: String { return self._s[3465]! }
- public var Passport_Address_OneOfTypeBankStatement: String { return self._s[3466]! }
- public var VoiceOver_ChatList_MessageRead: String { return self._s[3468]! }
- public var Stats_GroupTopPoster_Promote: String { return self._s[3471]! }
- public var Cache_Title: String { return self._s[3472]! }
+ public var Passport_Identity_MiddleNamePlaceholder: String { return self._s[3467]! }
+ public var Passport_Address_OneOfTypeBankStatement: String { return self._s[3468]! }
+ public var VoiceOver_ChatList_MessageRead: String { return self._s[3470]! }
+ public var Stats_GroupTopPoster_Promote: String { return self._s[3473]! }
+ public var Cache_Title: String { return self._s[3474]! }
public func Conversation_AutoremoveTimerSetToastText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3473]!, self._r[3473]!, [_0])
+ return formatWithArgumentRanges(self._s[3475]!, self._r[3475]!, [_0])
}
- public var Clipboard_SendPhoto: String { return self._s[3474]! }
- public var Notifications_ExceptionsMessagePlaceholder: String { return self._s[3476]! }
- public var TwoStepAuth_EnterPasswordForgot: String { return self._s[3477]! }
- public var WatchRemote_AlertTitle: String { return self._s[3480]! }
- public var Appearance_ReduceMotion: String { return self._s[3481]! }
+ public var Clipboard_SendPhoto: String { return self._s[3476]! }
+ public var Notifications_ExceptionsMessagePlaceholder: String { return self._s[3478]! }
+ public var TwoStepAuth_EnterPasswordForgot: String { return self._s[3479]! }
+ public var WatchRemote_AlertTitle: String { return self._s[3482]! }
+ public var Appearance_ReduceMotion: String { return self._s[3483]! }
public func PUSH_CHAT_MESSAGE_ROUND(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3484]!, self._r[3484]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3486]!, self._r[3486]!, [_1, _2])
}
- public var Notifications_PermissionsSuppressWarningText: String { return self._s[3485]! }
- public var ChatList_UndoArchiveHiddenTitle: String { return self._s[3486]! }
- public var Passport_Identity_TypePersonalDetails: String { return self._s[3487]! }
+ public var Notifications_PermissionsSuppressWarningText: String { return self._s[3487]! }
+ public var ChatList_UndoArchiveHiddenTitle: String { return self._s[3488]! }
+ public var Passport_Identity_TypePersonalDetails: String { return self._s[3489]! }
public func Call_CallInProgressVoiceChatMessage(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3488]!, self._r[3488]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3490]!, self._r[3490]!, [_1, _2])
}
public func Passport_Identity_UploadOneOfScan(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3490]!, self._r[3490]!, [_0])
+ return formatWithArgumentRanges(self._s[3492]!, self._r[3492]!, [_0])
}
- public var ChatListFolder_DiscardConfirmation: String { return self._s[3491]! }
+ public var ChatListFolder_DiscardConfirmation: String { return self._s[3493]! }
public func Conversation_RestrictedStickersTimed(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3493]!, self._r[3493]!, [_0])
+ return formatWithArgumentRanges(self._s[3495]!, self._r[3495]!, [_0])
}
- public var InstantPage_Search: String { return self._s[3494]! }
- public var ChatState_WaitingForNetwork: String { return self._s[3495]! }
- public var GroupInfo_Sound: String { return self._s[3496]! }
- public var NotificationsSound_Telegraph: String { return self._s[3497]! }
+ public var InstantPage_Search: String { return self._s[3496]! }
+ public var ChatState_WaitingForNetwork: String { return self._s[3497]! }
+ public var GroupInfo_Sound: String { return self._s[3498]! }
+ public var NotificationsSound_Telegraph: String { return self._s[3499]! }
public func VoiceChat_ParticipantIsSpeaking(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3498]!, self._r[3498]!, [_1])
+ return formatWithArgumentRanges(self._s[3500]!, self._r[3500]!, [_1])
}
- public var NotificationsSound_Hello: String { return self._s[3499]! }
- public var VoiceChat_LeaveConfirmation: String { return self._s[3500]! }
- public var UserInfo_LinkForwardTooltip_SavedMessages_One: String { return self._s[3501]! }
- public var Passport_FieldIdentityDetailsHelp: String { return self._s[3502]! }
- public var Group_Members_AddMemberBotErrorNotAllowed: String { return self._s[3503]! }
- public var Conversation_HoldForVideo: String { return self._s[3504]! }
- public var Conversation_PinOlderMessageAlertText: String { return self._s[3505]! }
- public var Appearance_ShareTheme: String { return self._s[3506]! }
- public var TwoStepAuth_SetupHint: String { return self._s[3507]! }
- public var Stats_GrowthTitle: String { return self._s[3510]! }
- public var GroupInfo_InviteLink_ShareLink: String { return self._s[3511]! }
- public var Conversation_DefaultRestrictedMedia: String { return self._s[3512]! }
- public var Channel_EditAdmin_PermissionPostMessages: String { return self._s[3513]! }
- public var GroupPermission_NoSendMessages: String { return self._s[3516]! }
- public var Conversation_SetReminder_Title: String { return self._s[3517]! }
- public var Privacy_Calls_CustomHelp: String { return self._s[3518]! }
- public var CheckoutInfo_ErrorPostcodeInvalid: String { return self._s[3519]! }
+ public var NotificationsSound_Hello: String { return self._s[3501]! }
+ public var VoiceChat_LeaveConfirmation: String { return self._s[3502]! }
+ public var UserInfo_LinkForwardTooltip_SavedMessages_One: String { return self._s[3503]! }
+ public var Passport_FieldIdentityDetailsHelp: String { return self._s[3504]! }
+ public var Group_Members_AddMemberBotErrorNotAllowed: String { return self._s[3505]! }
+ public var Conversation_HoldForVideo: String { return self._s[3506]! }
+ public var Conversation_PinOlderMessageAlertText: String { return self._s[3507]! }
+ public var Appearance_ShareTheme: String { return self._s[3508]! }
+ public var TwoStepAuth_SetupHint: String { return self._s[3509]! }
+ public var Stats_GrowthTitle: String { return self._s[3512]! }
+ public var GroupInfo_InviteLink_ShareLink: String { return self._s[3513]! }
+ public var Conversation_DefaultRestrictedMedia: String { return self._s[3514]! }
+ public var Channel_EditAdmin_PermissionPostMessages: String { return self._s[3515]! }
+ public var GroupPermission_NoSendMessages: String { return self._s[3518]! }
+ public var Conversation_SetReminder_Title: String { return self._s[3519]! }
+ public var Privacy_Calls_CustomHelp: String { return self._s[3520]! }
+ public var CheckoutInfo_ErrorPostcodeInvalid: String { return self._s[3521]! }
public func ClearCache_StorageTitle(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3520]!, self._r[3520]!, [_0])
+ return formatWithArgumentRanges(self._s[3522]!, self._r[3522]!, [_0])
}
- public var InviteLinks_InviteLinkExpired: String { return self._s[3522]! }
- public var Undo_SecretChatDeleted: String { return self._s[3523]! }
- public var PhotoEditor_ContrastTool: String { return self._s[3524]! }
- public var Privacy_Forwards: String { return self._s[3525]! }
- public var AuthSessions_LoggedInWithTelegram: String { return self._s[3526]! }
- public var KeyCommand_SendMessage: String { return self._s[3528]! }
- public var Conversation_PrivateMessageLinkCopiedLong: String { return self._s[3529]! }
+ public var InviteLinks_InviteLinkExpired: String { return self._s[3524]! }
+ public var Undo_SecretChatDeleted: String { return self._s[3525]! }
+ public var PhotoEditor_ContrastTool: String { return self._s[3526]! }
+ public var Privacy_Forwards: String { return self._s[3527]! }
+ public var AuthSessions_LoggedInWithTelegram: String { return self._s[3528]! }
+ public var KeyCommand_SendMessage: String { return self._s[3530]! }
+ public var Conversation_PrivateMessageLinkCopiedLong: String { return self._s[3531]! }
public func InstantPage_RelatedArticleAuthorAndDateTitle(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3530]!, self._r[3530]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3532]!, self._r[3532]!, [_1, _2])
}
- public var VoiceChat_VideoPaused: String { return self._s[3531]! }
- public var GroupPermission_NoSendGifs: String { return self._s[3532]! }
+ public var VoiceChat_VideoPaused: String { return self._s[3533]! }
+ public var GroupPermission_NoSendGifs: String { return self._s[3534]! }
public func Notification_VoiceChatEndedGroup(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3533]!, self._r[3533]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3535]!, self._r[3535]!, [_1, _2])
}
- public var Notification_MessageLifetime2s: String { return self._s[3534]! }
- public var Message_Theme: String { return self._s[3535]! }
- public var Conversation_Dice_u1F3AF: String { return self._s[3538]! }
+ public var Notification_MessageLifetime2s: String { return self._s[3536]! }
+ public var Message_Theme: String { return self._s[3537]! }
+ public var Conversation_Dice_u1F3AF: String { return self._s[3540]! }
public func DialogList_SinglePlayingGameSuffix(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3539]!, self._r[3539]!, [_0])
+ return formatWithArgumentRanges(self._s[3541]!, self._r[3541]!, [_0])
}
- public var Group_UpgradeNoticeHeader: String { return self._s[3541]! }
- public var PeerInfo_BioExpand: String { return self._s[3542]! }
- public var Passport_DeletePersonalDetails: String { return self._s[3543]! }
- public var Widget_NoUsers: String { return self._s[3544]! }
- public var TwoStepAuth_AddHintTitle: String { return self._s[3545]! }
- public var VoiceChat_VideoPreviewDescription: String { return self._s[3546]! }
- public var Login_TermsOfServiceDecline: String { return self._s[3547]! }
- public var VoiceChat_UnmuteSuggestion: String { return self._s[3548]! }
- public var CreatePoll_QuizTip: String { return self._s[3550]! }
- public var Watch_LastSeen_WithinAWeek: String { return self._s[3551]! }
- public var MessagePoll_SubmitVote: String { return self._s[3553]! }
- public var ChatSettings_AutoDownloadEnabled: String { return self._s[3554]! }
- public var Passport_Address_EditRentalAgreement: String { return self._s[3555]! }
- public var Conversation_SearchByName_Placeholder: String { return self._s[3556]! }
- public var Conversation_UpdateTelegram: String { return self._s[3557]! }
+ public var Group_UpgradeNoticeHeader: String { return self._s[3543]! }
+ public var PeerInfo_BioExpand: String { return self._s[3544]! }
+ public var Passport_DeletePersonalDetails: String { return self._s[3545]! }
+ public var Widget_NoUsers: String { return self._s[3546]! }
+ public var TwoStepAuth_AddHintTitle: String { return self._s[3547]! }
+ public var VoiceChat_VideoPreviewDescription: String { return self._s[3548]! }
+ public var Login_TermsOfServiceDecline: String { return self._s[3549]! }
+ public var VoiceChat_UnmuteSuggestion: String { return self._s[3550]! }
+ public var CreatePoll_QuizTip: String { return self._s[3552]! }
+ public var VoiceChat_VideoPreviewBackCamera: String { return self._s[3553]! }
+ public var Watch_LastSeen_WithinAWeek: String { return self._s[3554]! }
+ public var MessagePoll_SubmitVote: String { return self._s[3556]! }
+ public var ChatSettings_AutoDownloadEnabled: String { return self._s[3557]! }
+ public var Passport_Address_EditRentalAgreement: String { return self._s[3558]! }
+ public var Conversation_SearchByName_Placeholder: String { return self._s[3559]! }
+ public var Conversation_UpdateTelegram: String { return self._s[3560]! }
public func FileSize_KB(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3558]!, self._r[3558]!, [_0])
+ return formatWithArgumentRanges(self._s[3561]!, self._r[3561]!, [_0])
}
- public var UserInfo_About_Placeholder: String { return self._s[3559]! }
- public var CallSettings_Always: String { return self._s[3560]! }
- public var ChannelInfo_ScamChannelWarning: String { return self._s[3561]! }
- public var VoiceChat_MutedByAdminHelp: String { return self._s[3562]! }
- public var Login_TermsOfServiceHeader: String { return self._s[3563]! }
- public var KeyCommand_ChatInfo: String { return self._s[3564]! }
- public var MessagePoll_LabelPoll: String { return self._s[3565]! }
- public var Paint_Clear: String { return self._s[3566]! }
- public var PeerInfo_ButtonMute: String { return self._s[3567]! }
- public var LastSeen_WithinAWeek: String { return self._s[3568]! }
- public var Invitation_JoinVoiceChatAsSpeaker: String { return self._s[3569]! }
- public var Passport_Identity_FrontSide: String { return self._s[3570]! }
- public var Stickers_GroupStickers: String { return self._s[3571]! }
- public var ChangePhoneNumberNumber_NumberPlaceholder: String { return self._s[3572]! }
+ public var UserInfo_About_Placeholder: String { return self._s[3562]! }
+ public var CallSettings_Always: String { return self._s[3563]! }
+ public var ChannelInfo_ScamChannelWarning: String { return self._s[3564]! }
+ public var VoiceChat_MutedByAdminHelp: String { return self._s[3565]! }
+ public var Login_TermsOfServiceHeader: String { return self._s[3566]! }
+ public var KeyCommand_ChatInfo: String { return self._s[3567]! }
+ public var MessagePoll_LabelPoll: String { return self._s[3568]! }
+ public var Paint_Clear: String { return self._s[3569]! }
+ public var PeerInfo_ButtonMute: String { return self._s[3570]! }
+ public var LastSeen_WithinAWeek: String { return self._s[3571]! }
+ public var Invitation_JoinVoiceChatAsSpeaker: String { return self._s[3572]! }
+ public var Passport_Identity_FrontSide: String { return self._s[3573]! }
+ public var Stickers_GroupStickers: String { return self._s[3574]! }
+ public var ChangePhoneNumberNumber_NumberPlaceholder: String { return self._s[3575]! }
public func Map_SearchNoResultsDescription(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3573]!, self._r[3573]!, [_0])
+ return formatWithArgumentRanges(self._s[3576]!, self._r[3576]!, [_0])
}
- public var VoiceOver_BotCommands: String { return self._s[3574]! }
+ public var VoiceOver_BotCommands: String { return self._s[3577]! }
public func PUSH_MESSAGE_GEO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3577]!, self._r[3577]!, [_1])
+ return formatWithArgumentRanges(self._s[3580]!, self._r[3580]!, [_1])
}
- public var SocksProxySetup_ProxyStatusConnected: String { return self._s[3578]! }
- public var Chat_MultipleTextMessagesDisabled: String { return self._s[3579]! }
- public var InviteLink_ContextDelete: String { return self._s[3580]! }
+ public var SocksProxySetup_ProxyStatusConnected: String { return self._s[3581]! }
+ public var Chat_MultipleTextMessagesDisabled: String { return self._s[3582]! }
+ public var InviteLink_ContextDelete: String { return self._s[3583]! }
public func Notification_LeftChat(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3581]!, self._r[3581]!, [_0])
+ return formatWithArgumentRanges(self._s[3584]!, self._r[3584]!, [_0])
}
- public var WebSearch_SearchNoResults: String { return self._s[3583]! }
- public var Channel_DiscussionGroup_Create: String { return self._s[3584]! }
- public var Passport_Language_es: String { return self._s[3585]! }
- public var EnterPasscode_EnterCurrentPasscode: String { return self._s[3586]! }
- public var Map_LiveLocationShowAll: String { return self._s[3587]! }
- public var Cache_MaximumCacheSizeHelp: String { return self._s[3589]! }
- public var Map_OpenInGoogleMaps: String { return self._s[3590]! }
- public var CheckoutInfo_ErrorNameInvalid: String { return self._s[3592]! }
- public var EditTheme_Create_BottomInfo: String { return self._s[3593]! }
- public var PhotoEditor_BlurToolLinear: String { return self._s[3594]! }
+ public var WebSearch_SearchNoResults: String { return self._s[3586]! }
+ public var Channel_DiscussionGroup_Create: String { return self._s[3587]! }
+ public var Passport_Language_es: String { return self._s[3588]! }
+ public var EnterPasscode_EnterCurrentPasscode: String { return self._s[3589]! }
+ public var Map_LiveLocationShowAll: String { return self._s[3590]! }
+ public var Cache_MaximumCacheSizeHelp: String { return self._s[3592]! }
+ public var Map_OpenInGoogleMaps: String { return self._s[3593]! }
+ public var CheckoutInfo_ErrorNameInvalid: String { return self._s[3595]! }
+ public var EditTheme_Create_BottomInfo: String { return self._s[3596]! }
+ public var PhotoEditor_BlurToolLinear: String { return self._s[3597]! }
public func Channel_AdminLog_MessageEdited(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3595]!, self._r[3595]!, [_0])
+ return formatWithArgumentRanges(self._s[3598]!, self._r[3598]!, [_0])
}
- public var Passport_Phone_Delete: String { return self._s[3596]! }
- public var Channel_Username_CreatePrivateLinkHelp: String { return self._s[3597]! }
- public var PrivacySettings_PrivacyTitle: String { return self._s[3598]! }
- public var CheckoutInfo_ReceiverInfoNamePlaceholder: String { return self._s[3599]! }
+ public var Passport_Phone_Delete: String { return self._s[3599]! }
+ public var Channel_Username_CreatePrivateLinkHelp: String { return self._s[3600]! }
+ public var PrivacySettings_PrivacyTitle: String { return self._s[3601]! }
+ public var CheckoutInfo_ReceiverInfoNamePlaceholder: String { return self._s[3602]! }
public func EncryptionKey_Description(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3600]!, self._r[3600]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3603]!, self._r[3603]!, [_1, _2])
}
- public var LogoutOptions_LogOutInfo: String { return self._s[3601]! }
- public var Cache_ByPeerHeader: String { return self._s[3603]! }
- public var Username_InvalidCharacters: String { return self._s[3604]! }
- public var Checkout_ShippingAddress: String { return self._s[3606]! }
+ public var LogoutOptions_LogOutInfo: String { return self._s[3604]! }
+ public var Cache_ByPeerHeader: String { return self._s[3606]! }
+ public var Username_InvalidCharacters: String { return self._s[3607]! }
+ public var Checkout_ShippingAddress: String { return self._s[3609]! }
public func PUSH_CHAT_MESSAGE_GAME_SCORE(_ _1: String, _ _2: String, _ _3: String, _ _4: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3607]!, self._r[3607]!, [_1, _2, _3, _4])
+ return formatWithArgumentRanges(self._s[3610]!, self._r[3610]!, [_1, _2, _3, _4])
}
- public var VoiceChat_LeaveAndEndVoiceChat: String { return self._s[3609]! }
- public var Conversation_AddContact: String { return self._s[3610]! }
- public var Passport_Address_EditUtilityBill: String { return self._s[3611]! }
- public var InviteLink_ContextGetQRCode: String { return self._s[3612]! }
- public var Conversation_ChecksTooltip_Delivered: String { return self._s[3614]! }
+ public var VoiceChat_LeaveAndEndVoiceChat: String { return self._s[3612]! }
+ public var Conversation_AddContact: String { return self._s[3613]! }
+ public var Passport_Address_EditUtilityBill: String { return self._s[3614]! }
+ public var InviteLink_ContextGetQRCode: String { return self._s[3615]! }
+ public var Conversation_ChecksTooltip_Delivered: String { return self._s[3617]! }
public func Channel_AdminLog_MessageAddedAdminNameUsername(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3615]!, self._r[3615]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3618]!, self._r[3618]!, [_1, _2])
}
- public var Message_Video: String { return self._s[3616]! }
+ public var Message_Video: String { return self._s[3619]! }
public func Watch_Time_ShortYesterdayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3617]!, self._r[3617]!, [_0])
+ return formatWithArgumentRanges(self._s[3620]!, self._r[3620]!, [_0])
}
public func Conversation_Megabytes(_ _0: Float) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3618]!, self._r[3618]!, ["\(_0)"])
+ return formatWithArgumentRanges(self._s[3621]!, self._r[3621]!, ["\(_0)"])
}
- public var InviteLink_ReactivateLink: String { return self._s[3619]! }
- public var Passport_Language_km: String { return self._s[3621]! }
+ public var InviteLink_ReactivateLink: String { return self._s[3622]! }
+ public var Passport_Language_km: String { return self._s[3624]! }
public func PUSH_MESSAGE_CHANNEL_MESSAGE_GAME_SCORE(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3622]!, self._r[3622]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[3625]!, self._r[3625]!, [_1, _2, _3])
}
- public var EmptyGroupInfo_Line4: String { return self._s[3623]! }
- public var Conversation_SendMessageErrorTooMuchScheduled: String { return self._s[3625]! }
- public var Notification_CallCanceledShort: String { return self._s[3626]! }
- public var PhotoEditor_FadeTool: String { return self._s[3627]! }
- public var Group_PublicLink_Info: String { return self._s[3628]! }
- public var Contacts_DeselectAll: String { return self._s[3629]! }
- public var Conversation_Moderate_Delete: String { return self._s[3631]! }
- public var TwoStepAuth_RecoveryCodeInvalid: String { return self._s[3632]! }
- public var NotificationsSound_Note: String { return self._s[3635]! }
+ public var EmptyGroupInfo_Line4: String { return self._s[3626]! }
+ public var Conversation_SendMessageErrorTooMuchScheduled: String { return self._s[3628]! }
+ public var Notification_CallCanceledShort: String { return self._s[3629]! }
+ public var PhotoEditor_FadeTool: String { return self._s[3630]! }
+ public var Group_PublicLink_Info: String { return self._s[3631]! }
+ public var Contacts_DeselectAll: String { return self._s[3632]! }
+ public var Conversation_Moderate_Delete: String { return self._s[3634]! }
+ public var TwoStepAuth_RecoveryCodeInvalid: String { return self._s[3635]! }
+ public var NotificationsSound_Note: String { return self._s[3638]! }
public func Message_PaymentSent(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3636]!, self._r[3636]!, [_0])
+ return formatWithArgumentRanges(self._s[3639]!, self._r[3639]!, [_0])
}
- public var Appearance_ThemePreview_ChatList_7_Text: String { return self._s[3637]! }
- public var Channel_EditAdmin_PermissionInviteViaLink: String { return self._s[3639]! }
- public var DialogList_SearchSectionGlobal: String { return self._s[3640]! }
- public var AccessDenied_Settings: String { return self._s[3641]! }
- public var Passport_Identity_TypeIdentityCardUploadScan: String { return self._s[3642]! }
- public var AuthSessions_EmptyTitle: String { return self._s[3643]! }
- public var TwoStepAuth_PasswordChangeSuccess: String { return self._s[3644]! }
- public var GroupInfo_GroupType: String { return self._s[3645]! }
- public var Calls_Missed: String { return self._s[3646]! }
- public var Contacts_VoiceOver_AddContact: String { return self._s[3647]! }
- public var UserInfo_GenericPhoneLabel: String { return self._s[3649]! }
- public var Passport_Language_uz: String { return self._s[3650]! }
- public var Conversation_StopQuizConfirmationTitle: String { return self._s[3651]! }
- public var PhotoEditor_BlurToolPortrait: String { return self._s[3652]! }
- public var VoiceChat_CreateNewVoiceChatStartNow: String { return self._s[3653]! }
- public var Map_ChooseLocationTitle: String { return self._s[3654]! }
- public var Checkout_EnterPassword: String { return self._s[3655]! }
- public var GroupInfo_ConvertToSupergroup: String { return self._s[3656]! }
- public var AutoNightTheme_UpdateLocation: String { return self._s[3657]! }
- public var NetworkUsageSettings_Title: String { return self._s[3658]! }
- public var Location_ProximityAlertCancelled: String { return self._s[3659]! }
- public var SettingsSearch_Synonyms_ChatSettings_IntentsSettings: String { return self._s[3660]! }
- public var Message_PinnedLiveLocationMessage: String { return self._s[3661]! }
- public var Compose_NewChannel: String { return self._s[3662]! }
- public var Privacy_PaymentsClearInfo: String { return self._s[3664]! }
+ public var Appearance_ThemePreview_ChatList_7_Text: String { return self._s[3640]! }
+ public var Channel_EditAdmin_PermissionInviteViaLink: String { return self._s[3642]! }
+ public var DialogList_SearchSectionGlobal: String { return self._s[3643]! }
+ public var AccessDenied_Settings: String { return self._s[3644]! }
+ public var Passport_Identity_TypeIdentityCardUploadScan: String { return self._s[3645]! }
+ public var AuthSessions_EmptyTitle: String { return self._s[3646]! }
+ public var TwoStepAuth_PasswordChangeSuccess: String { return self._s[3647]! }
+ public var GroupInfo_GroupType: String { return self._s[3648]! }
+ public var Calls_Missed: String { return self._s[3649]! }
+ public var Contacts_VoiceOver_AddContact: String { return self._s[3650]! }
+ public var UserInfo_GenericPhoneLabel: String { return self._s[3652]! }
+ public var Passport_Language_uz: String { return self._s[3653]! }
+ public var Conversation_StopQuizConfirmationTitle: String { return self._s[3654]! }
+ public var PhotoEditor_BlurToolPortrait: String { return self._s[3655]! }
+ public var VoiceChat_CreateNewVoiceChatStartNow: String { return self._s[3656]! }
+ public var Map_ChooseLocationTitle: String { return self._s[3657]! }
+ public var Checkout_EnterPassword: String { return self._s[3658]! }
+ public var GroupInfo_ConvertToSupergroup: String { return self._s[3659]! }
+ public var AutoNightTheme_UpdateLocation: String { return self._s[3660]! }
+ public var NetworkUsageSettings_Title: String { return self._s[3661]! }
+ public var Location_ProximityAlertCancelled: String { return self._s[3662]! }
+ public var SettingsSearch_Synonyms_ChatSettings_IntentsSettings: String { return self._s[3663]! }
+ public var Message_PinnedLiveLocationMessage: String { return self._s[3664]! }
+ public var Compose_NewChannel: String { return self._s[3665]! }
+ public var Privacy_PaymentsClearInfo: String { return self._s[3667]! }
public func PUSH_MESSAGE_POLL(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3665]!, self._r[3665]!, [_1])
+ return formatWithArgumentRanges(self._s[3668]!, self._r[3668]!, [_1])
}
- public var Notification_Exceptions_AlwaysOn: String { return self._s[3666]! }
- public var Privacy_GroupsAndChannels_WhoCanAddMe: String { return self._s[3667]! }
- public var AutoNightTheme_AutomaticSection: String { return self._s[3670]! }
- public var WallpaperSearch_ColorBrown: String { return self._s[3671]! }
- public var Appearance_AppIconDefault: String { return self._s[3672]! }
- public var StickerSettings_ContextInfo: String { return self._s[3675]! }
- public var Channel_AddBotErrorNoRights: String { return self._s[3676]! }
- public var Passport_FieldPhone: String { return self._s[3678]! }
- public var Contacts_PermissionsTitle: String { return self._s[3679]! }
- public var TwoFactorSetup_Email_SkipConfirmationSkip: String { return self._s[3680]! }
+ public var Notification_Exceptions_AlwaysOn: String { return self._s[3669]! }
+ public var Privacy_GroupsAndChannels_WhoCanAddMe: String { return self._s[3670]! }
+ public var AutoNightTheme_AutomaticSection: String { return self._s[3673]! }
+ public var WallpaperSearch_ColorBrown: String { return self._s[3674]! }
+ public var Appearance_AppIconDefault: String { return self._s[3675]! }
+ public var StickerSettings_ContextInfo: String { return self._s[3678]! }
+ public var Channel_AddBotErrorNoRights: String { return self._s[3679]! }
+ public var Passport_FieldPhone: String { return self._s[3681]! }
+ public var Contacts_PermissionsTitle: String { return self._s[3682]! }
+ public var TwoFactorSetup_Email_SkipConfirmationSkip: String { return self._s[3683]! }
public func Notification_JoinedChat(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3681]!, self._r[3681]!, [_0])
+ return formatWithArgumentRanges(self._s[3684]!, self._r[3684]!, [_0])
}
- public var Bot_Unblock: String { return self._s[3682]! }
- public var PasscodeSettings_SimplePasscode: String { return self._s[3683]! }
- public var InviteLink_InviteLinkCopiedText: String { return self._s[3684]! }
- public var Passport_PasswordHelp: String { return self._s[3685]! }
- public var TwoFactorSetup_PasswordRecovery_PlaceholderConfirmPassword: String { return self._s[3686]! }
- public var Watch_Conversation_UserInfo: String { return self._s[3687]! }
+ public var Bot_Unblock: String { return self._s[3685]! }
+ public var PasscodeSettings_SimplePasscode: String { return self._s[3686]! }
+ public var InviteLink_InviteLinkCopiedText: String { return self._s[3687]! }
+ public var Passport_PasswordHelp: String { return self._s[3688]! }
+ public var TwoFactorSetup_PasswordRecovery_PlaceholderConfirmPassword: String { return self._s[3689]! }
+ public var Watch_Conversation_UserInfo: String { return self._s[3690]! }
public func Channel_AdminLog_MessageChangedGroupGeoLocation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3691]!, self._r[3691]!, [_0])
+ return formatWithArgumentRanges(self._s[3694]!, self._r[3694]!, [_0])
}
- public var State_Connecting: String { return self._s[3693]! }
- public var Passport_Address_TypeTemporaryRegistration: String { return self._s[3694]! }
- public var TextFormat_AddLinkPlaceholder: String { return self._s[3695]! }
- public var Conversation_Dice_u1F3B2: String { return self._s[3696]! }
+ public var State_Connecting: String { return self._s[3696]! }
+ public var Passport_Address_TypeTemporaryRegistration: String { return self._s[3697]! }
+ public var TextFormat_AddLinkPlaceholder: String { return self._s[3698]! }
+ public var Conversation_Dice_u1F3B2: String { return self._s[3699]! }
public func Call_StatusBar(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3697]!, self._r[3697]!, [_0])
+ return formatWithArgumentRanges(self._s[3700]!, self._r[3700]!, [_0])
}
- public var Conversation_SendingOptionsTooltip: String { return self._s[3698]! }
- public var ChatList_UndoArchiveTitle: String { return self._s[3699]! }
- public var ChatList_EmptyChatListNewMessage: String { return self._s[3700]! }
- public var WallpaperSearch_ColorGreen: String { return self._s[3702]! }
- public var PhotoEditor_BlurToolOff: String { return self._s[3703]! }
- public var Conversation_AutoremoveOff: String { return self._s[3704]! }
- public var SocksProxySetup_PortPlaceholder: String { return self._s[3705]! }
- public var Weekday_Saturday: String { return self._s[3706]! }
- public var DialogList_Unread: String { return self._s[3707]! }
- public var Watch_LastSeen_ALongTimeAgo: String { return self._s[3708]! }
- public var Stats_GroupPosters: String { return self._s[3709]! }
+ public var Conversation_SendingOptionsTooltip: String { return self._s[3701]! }
+ public var ChatList_UndoArchiveTitle: String { return self._s[3702]! }
+ public var ChatList_EmptyChatListNewMessage: String { return self._s[3703]! }
+ public var WallpaperSearch_ColorGreen: String { return self._s[3705]! }
+ public var PhotoEditor_BlurToolOff: String { return self._s[3706]! }
+ public var Conversation_AutoremoveOff: String { return self._s[3707]! }
+ public var SocksProxySetup_PortPlaceholder: String { return self._s[3708]! }
+ public var Weekday_Saturday: String { return self._s[3709]! }
+ public var DialogList_Unread: String { return self._s[3710]! }
+ public var Watch_LastSeen_ALongTimeAgo: String { return self._s[3711]! }
+ public var Stats_GroupPosters: String { return self._s[3712]! }
public func PUSH_ENCRYPTION_REQUEST(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3710]!, self._r[3710]!, [_1])
+ return formatWithArgumentRanges(self._s[3713]!, self._r[3713]!, [_1])
}
- public var Conversation_AlsoClearCacheTitle: String { return self._s[3711]! }
+ public var Conversation_AlsoClearCacheTitle: String { return self._s[3714]! }
public func Conversation_ForwardTooltip_TwoChats_One(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3712]!, self._r[3712]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[3715]!, self._r[3715]!, [_0, _1])
}
public func Target_ShareGameConfirmationGroup(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3715]!, self._r[3715]!, [_0])
+ return formatWithArgumentRanges(self._s[3718]!, self._r[3718]!, [_0])
}
- public var ReportPeer_ReasonChildAbuse: String { return self._s[3716]! }
+ public var ReportPeer_ReasonChildAbuse: String { return self._s[3719]! }
public func Channel_AdminLog_MessageUnkickedNameUsername(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3717]!, self._r[3717]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3720]!, self._r[3720]!, [_1, _2])
}
- public var InfoPlist_NSContactsUsageDescription: String { return self._s[3718]! }
- public var Conversation_EmailCopied: String { return self._s[3720]! }
- public var AutoNightTheme_UseSunsetSunrise: String { return self._s[3721]! }
- public var Channel_OwnershipTransfer_ChangeOwner: String { return self._s[3722]! }
- public var Call_VoiceOver_VoiceCallCanceled: String { return self._s[3723]! }
- public var VoiceChat_LateBy: String { return self._s[3724]! }
- public var Passport_Language_dv: String { return self._s[3725]! }
- public var TwoFactorSetup_PasswordRecovery_Text: String { return self._s[3726]! }
- public var GroupPermission_AddSuccess: String { return self._s[3728]! }
- public var Passport_Email_Help: String { return self._s[3729]! }
- public var Call_ReportPlaceholder: String { return self._s[3730]! }
- public var CreatePoll_AddOption: String { return self._s[3731]! }
- public var MessagePoll_LabelAnonymousQuiz: String { return self._s[3733]! }
- public var PeerInfo_ButtonLeave: String { return self._s[3734]! }
- public var PhotoEditor_TiltShift: String { return self._s[3737]! }
- public var SecretGif_Title: String { return self._s[3739]! }
- public var GroupInfo_InviteLinks: String { return self._s[3740]! }
- public var PhotoEditor_QualityVeryLow: String { return self._s[3741]! }
- public var SocksProxySetup_Connecting: String { return self._s[3743]! }
- public var PrivacySettings_PasscodeAndFaceId: String { return self._s[3744]! }
- public var ContactInfo_PhoneLabelWork: String { return self._s[3745]! }
- public var Stats_GroupTopHoursTitle: String { return self._s[3746]! }
- public var Compose_NewMessage: String { return self._s[3747]! }
- public var VoiceOver_Common_SwitchHint: String { return self._s[3748]! }
- public var NotificationsSound_Synth: String { return self._s[3749]! }
- public var ChatImport_UserErrorNotMutual: String { return self._s[3750]! }
- public var Conversation_FileOpenIn: String { return self._s[3751]! }
- public var AutoDownloadSettings_WifiTitle: String { return self._s[3752]! }
- public var UserInfo_SendMessage: String { return self._s[3753]! }
- public var Checkout_PayWithFaceId: String { return self._s[3754]! }
+ public var InfoPlist_NSContactsUsageDescription: String { return self._s[3721]! }
+ public var Conversation_EmailCopied: String { return self._s[3723]! }
+ public var AutoNightTheme_UseSunsetSunrise: String { return self._s[3724]! }
+ public var Channel_OwnershipTransfer_ChangeOwner: String { return self._s[3725]! }
+ public var Call_VoiceOver_VoiceCallCanceled: String { return self._s[3726]! }
+ public var VoiceChat_LateBy: String { return self._s[3727]! }
+ public var Passport_Language_dv: String { return self._s[3728]! }
+ public var TwoFactorSetup_PasswordRecovery_Text: String { return self._s[3729]! }
+ public var GroupPermission_AddSuccess: String { return self._s[3731]! }
+ public var Passport_Email_Help: String { return self._s[3732]! }
+ public var Call_ReportPlaceholder: String { return self._s[3733]! }
+ public var CreatePoll_AddOption: String { return self._s[3734]! }
+ public var MessagePoll_LabelAnonymousQuiz: String { return self._s[3736]! }
+ public var PeerInfo_ButtonLeave: String { return self._s[3737]! }
+ public var PhotoEditor_TiltShift: String { return self._s[3740]! }
+ public var SecretGif_Title: String { return self._s[3742]! }
+ public var GroupInfo_InviteLinks: String { return self._s[3743]! }
+ public var PhotoEditor_QualityVeryLow: String { return self._s[3744]! }
+ public var SocksProxySetup_Connecting: String { return self._s[3746]! }
+ public var PrivacySettings_PasscodeAndFaceId: String { return self._s[3747]! }
+ public var ContactInfo_PhoneLabelWork: String { return self._s[3748]! }
+ public var Stats_GroupTopHoursTitle: String { return self._s[3749]! }
+ public var Compose_NewMessage: String { return self._s[3750]! }
+ public var VoiceOver_Common_SwitchHint: String { return self._s[3751]! }
+ public var NotificationsSound_Synth: String { return self._s[3752]! }
+ public var ChatImport_UserErrorNotMutual: String { return self._s[3753]! }
+ public var Conversation_FileOpenIn: String { return self._s[3754]! }
+ public var AutoDownloadSettings_WifiTitle: String { return self._s[3755]! }
+ public var UserInfo_SendMessage: String { return self._s[3756]! }
+ public var Checkout_PayWithFaceId: String { return self._s[3757]! }
public func Map_LiveLocationShortHour(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3755]!, self._r[3755]!, [_0])
+ return formatWithArgumentRanges(self._s[3758]!, self._r[3758]!, [_0])
}
- public var TextFormat_Strikethrough: String { return self._s[3756]! }
- public var SettingsSearch_Synonyms_Notifications_DisplayNamesOnLockScreen: String { return self._s[3757]! }
- public var Conversation_ViewChannel: String { return self._s[3758]! }
+ public var TextFormat_Strikethrough: String { return self._s[3759]! }
+ public var SettingsSearch_Synonyms_Notifications_DisplayNamesOnLockScreen: String { return self._s[3760]! }
+ public var Conversation_ViewChannel: String { return self._s[3761]! }
public func Message_ForwardedMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3759]!, self._r[3759]!, [_0])
+ return formatWithArgumentRanges(self._s[3762]!, self._r[3762]!, [_0])
}
- public var Channel_Stickers_Placeholder: String { return self._s[3760]! }
- public var Channel_OwnershipTransfer_PasswordPlaceholder: String { return self._s[3761]! }
- public var Message_ScamAccount: String { return self._s[3762]! }
- public var Camera_FlashAuto: String { return self._s[3763]! }
- public var Conversation_EncryptedDescription1: String { return self._s[3764]! }
- public var LocalGroup_Text: String { return self._s[3765]! }
- public var SettingsSearch_Synonyms_Data_Storage_KeepMedia: String { return self._s[3766]! }
- public var UserInfo_FirstNamePlaceholder: String { return self._s[3767]! }
- public var Conversation_SendMessageErrorFlood: String { return self._s[3768]! }
- public var Conversation_EncryptedDescription2: String { return self._s[3769]! }
- public var Conversation_CancelForwardText: String { return self._s[3770]! }
- public var Notification_GroupActivated: String { return self._s[3771]! }
- public var LastSeen_Lately: String { return self._s[3772]! }
- public var Conversation_EncryptedDescription3: String { return self._s[3773]! }
- public var SettingsSearch_Synonyms_Privacy_ProfilePhoto: String { return self._s[3774]! }
- public var TwoStepAuth_RecoveryUnavailableResetText: String { return self._s[3775]! }
- public var Conversation_SwipeToReplyHintText: String { return self._s[3776]! }
- public var Conversation_EncryptedDescription4: String { return self._s[3777]! }
- public var SharedMedia_EmptyTitle: String { return self._s[3778]! }
- public var Appearance_CreateTheme: String { return self._s[3780]! }
- public var Stats_SharesPerPost: String { return self._s[3781]! }
- public var Contacts_TabTitle: String { return self._s[3782]! }
- public var Weekday_ShortThursday: String { return self._s[3783]! }
- public var MessageTimer_Forever: String { return self._s[3784]! }
- public var ChatListFolder_CategoryArchived: String { return self._s[3785]! }
- public var Channel_EditAdmin_PermissionDeleteMessages: String { return self._s[3786]! }
- public var EditTheme_Create_TopInfo: String { return self._s[3788]! }
- public var TwoFactorRemember_Forgot: String { return self._s[3789]! }
+ public var Channel_Stickers_Placeholder: String { return self._s[3763]! }
+ public var Channel_OwnershipTransfer_PasswordPlaceholder: String { return self._s[3764]! }
+ public var Message_ScamAccount: String { return self._s[3765]! }
+ public var Camera_FlashAuto: String { return self._s[3766]! }
+ public var Conversation_EncryptedDescription1: String { return self._s[3767]! }
+ public var LocalGroup_Text: String { return self._s[3768]! }
+ public var SettingsSearch_Synonyms_Data_Storage_KeepMedia: String { return self._s[3769]! }
+ public var UserInfo_FirstNamePlaceholder: String { return self._s[3770]! }
+ public var Conversation_SendMessageErrorFlood: String { return self._s[3771]! }
+ public var Conversation_EncryptedDescription2: String { return self._s[3772]! }
+ public var Conversation_CancelForwardText: String { return self._s[3773]! }
+ public var Notification_GroupActivated: String { return self._s[3774]! }
+ public var LastSeen_Lately: String { return self._s[3775]! }
+ public var Conversation_EncryptedDescription3: String { return self._s[3776]! }
+ public var SettingsSearch_Synonyms_Privacy_ProfilePhoto: String { return self._s[3777]! }
+ public var TwoStepAuth_RecoveryUnavailableResetText: String { return self._s[3778]! }
+ public var Conversation_SwipeToReplyHintText: String { return self._s[3779]! }
+ public var Conversation_EncryptedDescription4: String { return self._s[3780]! }
+ public var SharedMedia_EmptyTitle: String { return self._s[3781]! }
+ public var Appearance_CreateTheme: String { return self._s[3783]! }
+ public var Stats_SharesPerPost: String { return self._s[3784]! }
+ public var Contacts_TabTitle: String { return self._s[3785]! }
+ public var Weekday_ShortThursday: String { return self._s[3786]! }
+ public var MessageTimer_Forever: String { return self._s[3787]! }
+ public var ChatListFolder_CategoryArchived: String { return self._s[3788]! }
+ public var Channel_EditAdmin_PermissionDeleteMessages: String { return self._s[3789]! }
+ public var EditTheme_Create_TopInfo: String { return self._s[3791]! }
+ public var TwoFactorRemember_Forgot: String { return self._s[3792]! }
public func VoiceOver_ChatList_MessageFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3790]!, self._r[3790]!, [_0])
+ return formatWithArgumentRanges(self._s[3793]!, self._r[3793]!, [_0])
}
- public var Month_GenDecember: String { return self._s[3791]! }
- public var EnterPasscode_EnterPasscode: String { return self._s[3792]! }
- public var SettingsSearch_Synonyms_Appearance_LargeEmoji: String { return self._s[3793]! }
- public var PeopleNearby_CreateGroup: String { return self._s[3795]! }
- public var Group_EditAdmin_PermissionChangeInfo: String { return self._s[3796]! }
- public var Paint_ClearConfirm: String { return self._s[3797]! }
- public var ChatList_ReadAll: String { return self._s[3798]! }
- public var ChatSettings_IntentsSettings: String { return self._s[3799]! }
- public var Passport_PassportInformation: String { return self._s[3801]! }
- public var Login_CheckOtherSessionMessages: String { return self._s[3803]! }
- public var Location_ProximityNotification_DistanceMI: String { return self._s[3806]! }
- public var PhotoEditor_ExposureTool: String { return self._s[3807]! }
- public var Group_Username_CreatePrivateLinkHelp: String { return self._s[3808]! }
- public var SettingsSearch_Synonyms_Watch: String { return self._s[3809]! }
- public var Stats_GroupTopPoster_History: String { return self._s[3810]! }
- public var UserInfo_AddPhone: String { return self._s[3811]! }
- public var Media_SendWithTimer: String { return self._s[3813]! }
- public var SettingsSearch_Synonyms_Notifications_Title: String { return self._s[3814]! }
- public var Channel_EditAdmin_PermissionEnabledByDefault: String { return self._s[3815]! }
- public var GroupInfo_GroupHistoryShort: String { return self._s[3816]! }
- public var PasscodeSettings_AutoLock_Disabled: String { return self._s[3817]! }
- public var ChatList_Context_Unarchive: String { return self._s[3819]! }
+ public var Month_GenDecember: String { return self._s[3794]! }
+ public var EnterPasscode_EnterPasscode: String { return self._s[3795]! }
+ public var SettingsSearch_Synonyms_Appearance_LargeEmoji: String { return self._s[3796]! }
+ public var PeopleNearby_CreateGroup: String { return self._s[3798]! }
+ public var Group_EditAdmin_PermissionChangeInfo: String { return self._s[3799]! }
+ public var Paint_ClearConfirm: String { return self._s[3800]! }
+ public var ChatList_ReadAll: String { return self._s[3801]! }
+ public var ChatSettings_IntentsSettings: String { return self._s[3802]! }
+ public var Passport_PassportInformation: String { return self._s[3804]! }
+ public var Login_CheckOtherSessionMessages: String { return self._s[3806]! }
+ public var Location_ProximityNotification_DistanceMI: String { return self._s[3809]! }
+ public var PhotoEditor_ExposureTool: String { return self._s[3810]! }
+ public var Group_Username_CreatePrivateLinkHelp: String { return self._s[3811]! }
+ public var SettingsSearch_Synonyms_Watch: String { return self._s[3812]! }
+ public var Stats_GroupTopPoster_History: String { return self._s[3813]! }
+ public var UserInfo_AddPhone: String { return self._s[3814]! }
+ public var Media_SendWithTimer: String { return self._s[3816]! }
+ public var SettingsSearch_Synonyms_Notifications_Title: String { return self._s[3817]! }
+ public var Channel_EditAdmin_PermissionEnabledByDefault: String { return self._s[3818]! }
+ public var GroupInfo_GroupHistoryShort: String { return self._s[3819]! }
+ public var PasscodeSettings_AutoLock_Disabled: String { return self._s[3820]! }
+ public var ChatList_Context_Unarchive: String { return self._s[3822]! }
public func DialogList_LiveLocationSharingTo(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3820]!, self._r[3820]!, [_0])
+ return formatWithArgumentRanges(self._s[3823]!, self._r[3823]!, [_0])
}
- public var BlockedUsers_Title: String { return self._s[3822]! }
- public var TwoStepAuth_EmailPlaceholder: String { return self._s[3823]! }
- public var Media_ShareThisPhoto: String { return self._s[3824]! }
- public var Notifications_DisplayNamesOnLockScreen: String { return self._s[3825]! }
- public var Conversation_FilePhotoOrVideo: String { return self._s[3826]! }
- public var Appearance_ThemePreview_Chat_2_ReplyName: String { return self._s[3830]! }
- public var CallFeedback_ReasonNoise: String { return self._s[3832]! }
- public var WebBrowser_Title: String { return self._s[3833]! }
+ public var BlockedUsers_Title: String { return self._s[3825]! }
+ public var TwoStepAuth_EmailPlaceholder: String { return self._s[3826]! }
+ public var Media_ShareThisPhoto: String { return self._s[3827]! }
+ public var Notifications_DisplayNamesOnLockScreen: String { return self._s[3828]! }
+ public var Conversation_FilePhotoOrVideo: String { return self._s[3829]! }
+ public var Appearance_ThemePreview_Chat_2_ReplyName: String { return self._s[3833]! }
+ public var CallFeedback_ReasonNoise: String { return self._s[3835]! }
+ public var WebBrowser_Title: String { return self._s[3836]! }
public func Checkout_SavePasswordTimeoutAndTouchId(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3834]!, self._r[3834]!, [_0])
+ return formatWithArgumentRanges(self._s[3837]!, self._r[3837]!, [_0])
}
- public var Notification_MessageLifetime5s: String { return self._s[3836]! }
- public var Passport_Address_AddResidentialAddress: String { return self._s[3837]! }
- public var Profile_MessageLifetime1m: String { return self._s[3839]! }
- public var Passport_ScanPassport: String { return self._s[3840]! }
- public var Stats_LoadingTitle: String { return self._s[3841]! }
- public var Passport_Address_AddTemporaryRegistration: String { return self._s[3843]! }
- public var Permissions_NotificationsAllow_v0: String { return self._s[3844]! }
- public var Login_InvalidFirstNameError: String { return self._s[3845]! }
- public var Undo_ChatCleared: String { return self._s[3847]! }
+ public var Notification_MessageLifetime5s: String { return self._s[3839]! }
+ public var Passport_Address_AddResidentialAddress: String { return self._s[3840]! }
+ public var Profile_MessageLifetime1m: String { return self._s[3842]! }
+ public var Passport_ScanPassport: String { return self._s[3843]! }
+ public var Stats_LoadingTitle: String { return self._s[3844]! }
+ public var Passport_Address_AddTemporaryRegistration: String { return self._s[3846]! }
+ public var Permissions_NotificationsAllow_v0: String { return self._s[3847]! }
+ public var Login_InvalidFirstNameError: String { return self._s[3848]! }
+ public var Undo_ChatCleared: String { return self._s[3850]! }
public func ApplyLanguage_ChangeLanguageUnofficialText(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3849]!, self._r[3849]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3852]!, self._r[3852]!, [_1, _2])
}
- public var Conversation_PinMessageAlertPin: String { return self._s[3850]! }
+ public var Conversation_PinMessageAlertPin: String { return self._s[3853]! }
public func Login_PhoneBannedEmailBody(_ _1: String, _ _2: String, _ _3: String, _ _4: String, _ _5: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3851]!, self._r[3851]!, [_1, _2, _3, _4, _5])
+ return formatWithArgumentRanges(self._s[3854]!, self._r[3854]!, [_1, _2, _3, _4, _5])
}
public func PUSH_MESSAGE_FWD(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3852]!, self._r[3852]!, [_1])
+ return formatWithArgumentRanges(self._s[3855]!, self._r[3855]!, [_1])
}
- public var Share_MultipleMessagesDisabled: String { return self._s[3853]! }
- public var TwoStepAuth_EmailInvalid: String { return self._s[3854]! }
- public var EnterPasscode_ChangeTitle: String { return self._s[3856]! }
- public var VoiceChat_InviteLink_Speaker: String { return self._s[3857]! }
- public var CallSettings_RecentCalls: String { return self._s[3858]! }
- public var GroupInfo_DeactivatedStatus: String { return self._s[3859]! }
- public var AuthSessions_OtherSessions: String { return self._s[3860]! }
- public var PrivacyLastSeenSettings_CustomHelp: String { return self._s[3861]! }
- public var Tour_Text5: String { return self._s[3862]! }
- public var Login_PadPhoneHelp: String { return self._s[3863]! }
- public var Wallpaper_PhotoLibrary: String { return self._s[3866]! }
- public var Conversation_ViewGroup: String { return self._s[3867]! }
- public var PeopleNearby_MakeVisibleTitle: String { return self._s[3869]! }
- public var VoiceOver_Chat_YourContact: String { return self._s[3870]! }
- public var Watch_AuthRequired: String { return self._s[3871]! }
- public var VoiceOver_Chat_ForwardedFromYou: String { return self._s[3873]! }
- public var Conversation_ForwardContacts: String { return self._s[3874]! }
- public var Conversation_InputTextPlaceholder: String { return self._s[3875]! }
+ public var Share_MultipleMessagesDisabled: String { return self._s[3856]! }
+ public var TwoStepAuth_EmailInvalid: String { return self._s[3857]! }
+ public var EnterPasscode_ChangeTitle: String { return self._s[3859]! }
+ public var VoiceChat_InviteLink_Speaker: String { return self._s[3860]! }
+ public var CallSettings_RecentCalls: String { return self._s[3861]! }
+ public var GroupInfo_DeactivatedStatus: String { return self._s[3862]! }
+ public var AuthSessions_OtherSessions: String { return self._s[3863]! }
+ public var PrivacyLastSeenSettings_CustomHelp: String { return self._s[3864]! }
+ public var Tour_Text5: String { return self._s[3865]! }
+ public var Login_PadPhoneHelp: String { return self._s[3866]! }
+ public var Wallpaper_PhotoLibrary: String { return self._s[3869]! }
+ public var Conversation_ViewGroup: String { return self._s[3870]! }
+ public var PeopleNearby_MakeVisibleTitle: String { return self._s[3872]! }
+ public var VoiceOver_Chat_YourContact: String { return self._s[3873]! }
+ public var Watch_AuthRequired: String { return self._s[3874]! }
+ public var VoiceOver_Chat_ForwardedFromYou: String { return self._s[3876]! }
+ public var Conversation_ForwardContacts: String { return self._s[3877]! }
+ public var Conversation_InputTextPlaceholder: String { return self._s[3878]! }
public func PUSH_CHANNEL_MESSAGE_PHOTO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3876]!, self._r[3876]!, [_1])
+ return formatWithArgumentRanges(self._s[3879]!, self._r[3879]!, [_1])
}
public func Conversation_MessageViaUser(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3877]!, self._r[3877]!, [_0])
+ return formatWithArgumentRanges(self._s[3880]!, self._r[3880]!, [_0])
}
- public var Channel_Setup_TypePrivate: String { return self._s[3878]! }
+ public var Channel_Setup_TypePrivate: String { return self._s[3881]! }
public func Conversation_NoticeInvitedByInChannel(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3879]!, self._r[3879]!, [_0])
+ return formatWithArgumentRanges(self._s[3882]!, self._r[3882]!, [_0])
}
- public var Checkout_OptionalTipItemPlaceholder: String { return self._s[3880]! }
- public var InviteLink_Create_TimeLimitExpiryDate: String { return self._s[3881]! }
- public var InfoPlist_NSSiriUsageDescription: String { return self._s[3882]! }
- public var AutoDownloadSettings_Delimeter: String { return self._s[3883]! }
- public var EmptyGroupInfo_Subtitle: String { return self._s[3884]! }
- public var UserInfo_StartSecretChatStart: String { return self._s[3885]! }
+ public var Checkout_OptionalTipItemPlaceholder: String { return self._s[3883]! }
+ public var InviteLink_Create_TimeLimitExpiryDate: String { return self._s[3884]! }
+ public var InfoPlist_NSSiriUsageDescription: String { return self._s[3885]! }
+ public var AutoDownloadSettings_Delimeter: String { return self._s[3886]! }
+ public var EmptyGroupInfo_Subtitle: String { return self._s[3887]! }
+ public var UserInfo_StartSecretChatStart: String { return self._s[3888]! }
public func GroupPermission_AddedInfo(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3886]!, self._r[3886]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3889]!, self._r[3889]!, [_1, _2])
}
public func Channel_AdminLog_MessageRestricted(_ _0: String, _ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3887]!, self._r[3887]!, [_0, _1, _2])
+ return formatWithArgumentRanges(self._s[3890]!, self._r[3890]!, [_0, _1, _2])
}
public func Conversation_ForwardTooltip_TwoChats_Many(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3888]!, self._r[3888]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[3891]!, self._r[3891]!, [_0, _1])
}
- public var PrivacySettings_AutoArchiveTitle: String { return self._s[3889]! }
- public var GroupInfo_InviteLink_LinkSection: String { return self._s[3890]! }
- public var FastTwoStepSetup_EmailPlaceholder: String { return self._s[3891]! }
- public var StickerPacksSettings_ArchivedMasks: String { return self._s[3893]! }
- public var NewContact_Title: String { return self._s[3896]! }
- public var Appearance_ThemeCarouselTintedNight: String { return self._s[3897]! }
- public var VoiceChat_StatusSpeaking: String { return self._s[3898]! }
- public var Notifications_PermissionsKeepDisabled: String { return self._s[3899]! }
+ public var PrivacySettings_AutoArchiveTitle: String { return self._s[3892]! }
+ public var GroupInfo_InviteLink_LinkSection: String { return self._s[3893]! }
+ public var FastTwoStepSetup_EmailPlaceholder: String { return self._s[3894]! }
+ public var StickerPacksSettings_ArchivedMasks: String { return self._s[3896]! }
+ public var NewContact_Title: String { return self._s[3899]! }
+ public var Appearance_ThemeCarouselTintedNight: String { return self._s[3900]! }
+ public var VoiceChat_StatusSpeaking: String { return self._s[3901]! }
+ public var Notifications_PermissionsKeepDisabled: String { return self._s[3902]! }
public func Time_YesterdayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3900]!, self._r[3900]!, [_0])
+ return formatWithArgumentRanges(self._s[3903]!, self._r[3903]!, [_0])
}
public func AutoNightTheme_LocationHelp(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3901]!, self._r[3901]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[3904]!, self._r[3904]!, [_0, _1])
}
- public var Chat_SlowmodeTooltipPending: String { return self._s[3902]! }
+ public var Chat_SlowmodeTooltipPending: String { return self._s[3905]! }
public func Time_MediumDate(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3904]!, self._r[3904]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3907]!, self._r[3907]!, [_1, _2])
}
- public var ContactInfo_PhoneLabelHome: String { return self._s[3905]! }
- public var CallFeedback_ReasonInterruption: String { return self._s[3906]! }
- public var Passport_Identity_OneOfTypeDriversLicense: String { return self._s[3907]! }
- public var Conversation_MessageEditedLabel: String { return self._s[3910]! }
- public var CallList_ActiveVoiceChatsHeader: String { return self._s[3911]! }
- public var SocksProxySetup_PasswordPlaceholder: String { return self._s[3912]! }
- public var ChatList_Context_AddToContacts: String { return self._s[3913]! }
- public var Passport_Language_is: String { return self._s[3914]! }
- public var Notification_PassportValueProofOfIdentity: String { return self._s[3915]! }
- public var PhotoEditor_CurvesBlue: String { return self._s[3916]! }
+ public var ContactInfo_PhoneLabelHome: String { return self._s[3908]! }
+ public var CallFeedback_ReasonInterruption: String { return self._s[3909]! }
+ public var Passport_Identity_OneOfTypeDriversLicense: String { return self._s[3910]! }
+ public var Conversation_MessageEditedLabel: String { return self._s[3913]! }
+ public var CallList_ActiveVoiceChatsHeader: String { return self._s[3914]! }
+ public var SocksProxySetup_PasswordPlaceholder: String { return self._s[3915]! }
+ public var ChatList_Context_AddToContacts: String { return self._s[3916]! }
+ public var Passport_Language_is: String { return self._s[3917]! }
+ public var Notification_PassportValueProofOfIdentity: String { return self._s[3918]! }
+ public var PhotoEditor_CurvesBlue: String { return self._s[3919]! }
public func FileSize_MB(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3917]!, self._r[3917]!, [_0])
+ return formatWithArgumentRanges(self._s[3920]!, self._r[3920]!, [_0])
}
- public var SocksProxySetup_Username: String { return self._s[3918]! }
- public var Login_SmsRequestState3: String { return self._s[3919]! }
- public var Message_PinnedVideoMessage: String { return self._s[3920]! }
- public var SharedMedia_TitleLink: String { return self._s[3921]! }
- public var Passport_FieldIdentity: String { return self._s[3922]! }
- public var GroupInfo_Permissions_BroadcastConvert: String { return self._s[3924]! }
+ public var SocksProxySetup_Username: String { return self._s[3921]! }
+ public var Login_SmsRequestState3: String { return self._s[3922]! }
+ public var Message_PinnedVideoMessage: String { return self._s[3923]! }
+ public var SharedMedia_TitleLink: String { return self._s[3924]! }
+ public var Passport_FieldIdentity: String { return self._s[3925]! }
+ public var GroupInfo_Permissions_BroadcastConvert: String { return self._s[3927]! }
public func Conversation_EncryptedPlaceholderTitleOutgoing(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3927]!, self._r[3927]!, [_0])
+ return formatWithArgumentRanges(self._s[3930]!, self._r[3930]!, [_0])
}
- public var DialogList_ProxyConnectionIssuesTooltip: String { return self._s[3930]! }
- public var ReportSpam_DeleteThisChat: String { return self._s[3931]! }
- public var Checkout_NewCard_CardholderNamePlaceholder: String { return self._s[3932]! }
- public var Passport_Identity_DateOfBirth: String { return self._s[3933]! }
- public var Call_StatusIncoming: String { return self._s[3934]! }
- public var ChatAdmins_AdminLabel: String { return self._s[3935]! }
+ public var DialogList_ProxyConnectionIssuesTooltip: String { return self._s[3933]! }
+ public var ReportSpam_DeleteThisChat: String { return self._s[3934]! }
+ public var Checkout_NewCard_CardholderNamePlaceholder: String { return self._s[3935]! }
+ public var Passport_Identity_DateOfBirth: String { return self._s[3936]! }
+ public var Call_StatusIncoming: String { return self._s[3937]! }
+ public var ChatAdmins_AdminLabel: String { return self._s[3938]! }
public func InstantPage_OpenInBrowser(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3936]!, self._r[3936]!, [_0])
+ return formatWithArgumentRanges(self._s[3939]!, self._r[3939]!, [_0])
}
public func Time_MonthOfYear_m10(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3938]!, self._r[3938]!, [_0])
+ return formatWithArgumentRanges(self._s[3941]!, self._r[3941]!, [_0])
}
- public var Message_PinnedAnimationMessage: String { return self._s[3939]! }
- public var VoiceChat_TapToViewCameraVideo: String { return self._s[3940]! }
- public var Conversation_ReportSpamAndLeave: String { return self._s[3941]! }
- public var Preview_CopyAddress: String { return self._s[3942]! }
- public var MediaPlayer_UnknownTrack: String { return self._s[3944]! }
- public var Login_CancelSignUpConfirmation: String { return self._s[3945]! }
- public var Map_OpenInYandexMaps: String { return self._s[3947]! }
+ public var Message_PinnedAnimationMessage: String { return self._s[3942]! }
+ public var VoiceChat_TapToViewCameraVideo: String { return self._s[3943]! }
+ public var Conversation_ReportSpamAndLeave: String { return self._s[3944]! }
+ public var Preview_CopyAddress: String { return self._s[3945]! }
+ public var MediaPlayer_UnknownTrack: String { return self._s[3947]! }
+ public var Login_CancelSignUpConfirmation: String { return self._s[3948]! }
+ public var Map_OpenInYandexMaps: String { return self._s[3950]! }
public func Time_PreciseDate_m11(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3950]!, self._r[3950]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[3953]!, self._r[3953]!, [_1, _2, _3])
}
- public var GroupRemoved_Remove: String { return self._s[3951]! }
- public var ChatListFolder_TitleCreate: String { return self._s[3952]! }
+ public var GroupRemoved_Remove: String { return self._s[3954]! }
+ public var ChatListFolder_TitleCreate: String { return self._s[3955]! }
public func InstantPage_AuthorAndDateTitle(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3954]!, self._r[3954]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[3957]!, self._r[3957]!, [_1, _2])
}
- public var Watch_UserInfo_MuteTitle: String { return self._s[3955]! }
+ public var Watch_UserInfo_MuteTitle: String { return self._s[3958]! }
public func UserInfo_LinkForwardTooltip_TwoChats_One(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3957]!, self._r[3957]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[3960]!, self._r[3960]!, [_0, _1])
}
- public var Group_UpgradeNoticeText2: String { return self._s[3958]! }
- public var Stats_GroupGrowthTitle: String { return self._s[3959]! }
- public var CreatePoll_CancelConfirmation: String { return self._s[3962]! }
- public var Month_GenOctober: String { return self._s[3963]! }
- public var Conversation_TitleCommentsEmpty: String { return self._s[3964]! }
- public var Settings_Appearance: String { return self._s[3965]! }
+ public var Group_UpgradeNoticeText2: String { return self._s[3961]! }
+ public var Stats_GroupGrowthTitle: String { return self._s[3962]! }
+ public var CreatePoll_CancelConfirmation: String { return self._s[3965]! }
+ public var Month_GenOctober: String { return self._s[3966]! }
+ public var Conversation_TitleCommentsEmpty: String { return self._s[3967]! }
+ public var Settings_Appearance: String { return self._s[3968]! }
public func Time_MonthOfYear_m6(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3966]!, self._r[3966]!, [_0])
+ return formatWithArgumentRanges(self._s[3969]!, self._r[3969]!, [_0])
}
- public var UserInfo_AddToExisting: String { return self._s[3967]! }
- public var Call_PhoneCallInProgressMessage: String { return self._s[3969]! }
- public var Map_HomeAndWorkInfo: String { return self._s[3970]! }
- public var VoiceChat_ContextAudio: String { return self._s[3971]! }
- public var InstantPage_VoiceOver_ResetFontSize: String { return self._s[3972]! }
- public var Paint_Arrow: String { return self._s[3973]! }
- public var InviteLink_CreatePrivateLinkHelp: String { return self._s[3974]! }
+ public var UserInfo_AddToExisting: String { return self._s[3970]! }
+ public var Call_PhoneCallInProgressMessage: String { return self._s[3972]! }
+ public var Map_HomeAndWorkInfo: String { return self._s[3973]! }
+ public var VoiceChat_ContextAudio: String { return self._s[3974]! }
+ public var InstantPage_VoiceOver_ResetFontSize: String { return self._s[3975]! }
+ public var Paint_Arrow: String { return self._s[3976]! }
+ public var InviteLink_CreatePrivateLinkHelp: String { return self._s[3977]! }
public func DialogList_MultipleTypingPair(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3975]!, self._r[3975]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[3978]!, self._r[3978]!, [_0, _1])
}
- public var CancelResetAccount_Title: String { return self._s[3976]! }
- public var NotificationsSound_Circles: String { return self._s[3977]! }
- public var Notifications_GroupNotificationsExceptionsHelp: String { return self._s[3978]! }
- public var ChatState_Connecting: String { return self._s[3980]! }
- public var Profile_MessageLifetime5s: String { return self._s[3981]! }
+ public var CancelResetAccount_Title: String { return self._s[3979]! }
+ public var NotificationsSound_Circles: String { return self._s[3980]! }
+ public var Notifications_GroupNotificationsExceptionsHelp: String { return self._s[3981]! }
+ public var ChatState_Connecting: String { return self._s[3983]! }
+ public var Profile_MessageLifetime5s: String { return self._s[3984]! }
public func DialogList_AwaitingEncryption(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3982]!, self._r[3982]!, [_0])
+ return formatWithArgumentRanges(self._s[3985]!, self._r[3985]!, [_0])
}
- public var PrivacyPolicy_AgeVerificationTitle: String { return self._s[3983]! }
- public var Channel_Username_CreatePublicLinkHelp: String { return self._s[3984]! }
- public var AutoNightTheme_ScheduledTo: String { return self._s[3985]! }
- public var Conversation_DefaultRestrictedStickers: String { return self._s[3987]! }
- public var TwoStepAuth_ConfirmationTitle: String { return self._s[3988]! }
+ public var PrivacyPolicy_AgeVerificationTitle: String { return self._s[3986]! }
+ public var Channel_Username_CreatePublicLinkHelp: String { return self._s[3987]! }
+ public var AutoNightTheme_ScheduledTo: String { return self._s[3988]! }
+ public var Conversation_DefaultRestrictedStickers: String { return self._s[3990]! }
+ public var TwoStepAuth_ConfirmationTitle: String { return self._s[3991]! }
public func Chat_UnsendMyMessagesAlertTitle(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[3989]!, self._r[3989]!, [_0])
+ return formatWithArgumentRanges(self._s[3992]!, self._r[3992]!, [_0])
}
- public var Passport_Phone_Help: String { return self._s[3990]! }
- public var Privacy_ContactsSync: String { return self._s[3991]! }
- public var CheckoutInfo_ReceiverInfoPhone: String { return self._s[3992]! }
- public var Channel_AdminLogFilter_EventsLeavingSubscribers: String { return self._s[3994]! }
- public var Map_SendMyCurrentLocation: String { return self._s[3995]! }
- public var Map_AddressOnMap: String { return self._s[3996]! }
- public var BroadcastGroups_ConfirmationAlert_Convert: String { return self._s[3998]! }
- public var DialogList_SearchLabel: String { return self._s[3999]! }
- public var Notification_Exceptions_NewException_NotificationHeader: String { return self._s[4000]! }
- public var GroupInfo_FakeGroupWarning: String { return self._s[4001]! }
- public var Conversation_ChecksTooltip_Read: String { return self._s[4003]! }
- public var TwoFactorRemember_Placeholder: String { return self._s[4005]! }
- public var ConversationProfile_UnknownAddMemberError: String { return self._s[4006]! }
- public var ChatList_Search_ShowMore: String { return self._s[4007]! }
- public var DialogList_EncryptionRejected: String { return self._s[4008]! }
- public var VoiceChat_InviteLinkCopiedText: String { return self._s[4009]! }
- public var DialogList_DeleteBotConfirmation: String { return self._s[4010]! }
- public var VoiceChat_StartRecordingText: String { return self._s[4011]! }
- public var Privacy_TopPeersDelete: String { return self._s[4012]! }
- public var AttachmentMenu_SendAsFile: String { return self._s[4014]! }
- public var ChatList_GenericPsaAlert: String { return self._s[4016]! }
- public var SecretTimer_ImageDescription: String { return self._s[4018]! }
+ public var Passport_Phone_Help: String { return self._s[3993]! }
+ public var Privacy_ContactsSync: String { return self._s[3994]! }
+ public var CheckoutInfo_ReceiverInfoPhone: String { return self._s[3995]! }
+ public var Channel_AdminLogFilter_EventsLeavingSubscribers: String { return self._s[3997]! }
+ public var Map_SendMyCurrentLocation: String { return self._s[3998]! }
+ public var Map_AddressOnMap: String { return self._s[3999]! }
+ public var BroadcastGroups_ConfirmationAlert_Convert: String { return self._s[4001]! }
+ public var DialogList_SearchLabel: String { return self._s[4002]! }
+ public var Notification_Exceptions_NewException_NotificationHeader: String { return self._s[4003]! }
+ public var GroupInfo_FakeGroupWarning: String { return self._s[4004]! }
+ public var Conversation_ChecksTooltip_Read: String { return self._s[4006]! }
+ public var TwoFactorRemember_Placeholder: String { return self._s[4008]! }
+ public var ConversationProfile_UnknownAddMemberError: String { return self._s[4009]! }
+ public var ChatList_Search_ShowMore: String { return self._s[4010]! }
+ public var DialogList_EncryptionRejected: String { return self._s[4011]! }
+ public var VoiceChat_InviteLinkCopiedText: String { return self._s[4012]! }
+ public var DialogList_DeleteBotConfirmation: String { return self._s[4013]! }
+ public var VoiceChat_StartRecordingText: String { return self._s[4014]! }
+ public var Privacy_TopPeersDelete: String { return self._s[4015]! }
+ public var AttachmentMenu_SendAsFile: String { return self._s[4017]! }
+ public var ChatList_GenericPsaAlert: String { return self._s[4019]! }
+ public var SecretTimer_ImageDescription: String { return self._s[4021]! }
public func Conversation_SetReminder_RemindOn(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4019]!, self._r[4019]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[4022]!, self._r[4022]!, [_0, _1])
}
- public var VoiceChat_EditNameSuccess: String { return self._s[4020]! }
- public var ChatSettings_TextSizeUnits: String { return self._s[4021]! }
- public var Notification_RenamedGroup: String { return self._s[4023]! }
- public var Tour_Title2: String { return self._s[4024]! }
- public var Settings_CopyUsername: String { return self._s[4025]! }
- public var Compose_NewEncryptedChat: String { return self._s[4026]! }
- public var Conversation_CloudStorageInfo_Title: String { return self._s[4027]! }
- public var VoiceChat_SetReminder: String { return self._s[4028]! }
- public var Month_ShortSeptember: String { return self._s[4029]! }
- public var AutoDownloadSettings_OnForAll: String { return self._s[4030]! }
- public var ChatList_DeleteForEveryoneConfirmationText: String { return self._s[4031]! }
- public var VoiceChat_StartNow: String { return self._s[4032]! }
- public var Call_StatusConnecting: String { return self._s[4034]! }
- public var Privacy_GroupsAndChannels_NeverAllow_Placeholder: String { return self._s[4035]! }
- public var Map_ShareLiveLocationHelp: String { return self._s[4036]! }
- public var Cache_Files: String { return self._s[4037]! }
- public var Notifications_Reset: String { return self._s[4038]! }
+ public var VoiceChat_EditNameSuccess: String { return self._s[4023]! }
+ public var ChatSettings_TextSizeUnits: String { return self._s[4024]! }
+ public var Notification_RenamedGroup: String { return self._s[4026]! }
+ public var Tour_Title2: String { return self._s[4027]! }
+ public var Settings_CopyUsername: String { return self._s[4028]! }
+ public var Compose_NewEncryptedChat: String { return self._s[4029]! }
+ public var Conversation_CloudStorageInfo_Title: String { return self._s[4030]! }
+ public var VoiceChat_SetReminder: String { return self._s[4031]! }
+ public var Month_ShortSeptember: String { return self._s[4032]! }
+ public var AutoDownloadSettings_OnForAll: String { return self._s[4033]! }
+ public var ChatList_DeleteForEveryoneConfirmationText: String { return self._s[4034]! }
+ public var VoiceChat_StartNow: String { return self._s[4035]! }
+ public var Call_StatusConnecting: String { return self._s[4037]! }
+ public var Privacy_GroupsAndChannels_NeverAllow_Placeholder: String { return self._s[4038]! }
+ public var Map_ShareLiveLocationHelp: String { return self._s[4039]! }
+ public var Cache_Files: String { return self._s[4040]! }
+ public var Notifications_Reset: String { return self._s[4041]! }
public func Settings_KeepPhoneNumber(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4039]!, self._r[4039]!, [_0])
+ return formatWithArgumentRanges(self._s[4042]!, self._r[4042]!, [_0])
}
- public var Privacy_GroupsAndChannels_AlwaysAllow_Title: String { return self._s[4040]! }
+ public var Privacy_GroupsAndChannels_AlwaysAllow_Title: String { return self._s[4043]! }
public func Conversation_OpenBotLinkLogin(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4041]!, self._r[4041]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4044]!, self._r[4044]!, [_1, _2])
}
- public var Notification_CallIncomingShort: String { return self._s[4042]! }
- public var UserInfo_BotPrivacy: String { return self._s[4045]! }
- public var Appearance_BubbleCorners_Apply: String { return self._s[4046]! }
- public var WebSearch_RecentClearConfirmation: String { return self._s[4047]! }
- public var Conversation_ContextMenuLookUp: String { return self._s[4049]! }
- public var Calls_RatingTitle: String { return self._s[4050]! }
- public var SecretImage_Title: String { return self._s[4051]! }
- public var Weekday_Monday: String { return self._s[4052]! }
+ public var Notification_CallIncomingShort: String { return self._s[4045]! }
+ public var UserInfo_BotPrivacy: String { return self._s[4048]! }
+ public var Appearance_BubbleCorners_Apply: String { return self._s[4049]! }
+ public var WebSearch_RecentClearConfirmation: String { return self._s[4050]! }
+ public var Conversation_ContextMenuLookUp: String { return self._s[4052]! }
+ public var Calls_RatingTitle: String { return self._s[4053]! }
+ public var SecretImage_Title: String { return self._s[4054]! }
+ public var Weekday_Monday: String { return self._s[4055]! }
public func Passport_PrivacyPolicy(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4053]!, self._r[4053]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4056]!, self._r[4056]!, [_1, _2])
}
- public var KeyCommand_JumpToPreviousChat: String { return self._s[4054]! }
- public var VoiceChat_InviteLink_CopySpeakerLink: String { return self._s[4055]! }
- public var Invitation_JoinVoiceChatAsListener: String { return self._s[4056]! }
+ public var KeyCommand_JumpToPreviousChat: String { return self._s[4057]! }
+ public var VoiceChat_InviteLink_CopySpeakerLink: String { return self._s[4058]! }
+ public var Invitation_JoinVoiceChatAsListener: String { return self._s[4059]! }
public func DialogList_SearchSubtitleFormat(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4057]!, self._r[4057]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4060]!, self._r[4060]!, [_1, _2])
}
- public var Stats_GroupMembers: String { return self._s[4058]! }
- public var Camera_Retake: String { return self._s[4059]! }
- public var Conversation_SearchPlaceholder: String { return self._s[4061]! }
+ public var Stats_GroupMembers: String { return self._s[4061]! }
+ public var Camera_Retake: String { return self._s[4062]! }
+ public var Conversation_SearchPlaceholder: String { return self._s[4064]! }
public func Passport_Identity_NativeNameGenericHelp(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4062]!, self._r[4062]!, [_0])
+ return formatWithArgumentRanges(self._s[4065]!, self._r[4065]!, [_0])
}
- public var Channel_DiscussionGroup_Info: String { return self._s[4063]! }
- public var SocksProxySetup_Hostname: String { return self._s[4064]! }
- public var PrivacyLastSeenSettings_EmpryUsersPlaceholder: String { return self._s[4065]! }
- public var Privacy_DeleteDrafts: String { return self._s[4067]! }
- public var Login_CancelPhoneVerification: String { return self._s[4069]! }
- public var TwoStepAuth_ResetAccountHelp: String { return self._s[4070]! }
- public var VoiceOver_Chat_Profile: String { return self._s[4071]! }
+ public var Channel_DiscussionGroup_Info: String { return self._s[4066]! }
+ public var SocksProxySetup_Hostname: String { return self._s[4067]! }
+ public var PrivacyLastSeenSettings_EmpryUsersPlaceholder: String { return self._s[4068]! }
+ public var Privacy_DeleteDrafts: String { return self._s[4070]! }
+ public var Login_CancelPhoneVerification: String { return self._s[4072]! }
+ public var TwoStepAuth_ResetAccountHelp: String { return self._s[4073]! }
+ public var VoiceOver_Chat_Profile: String { return self._s[4074]! }
public func SocksProxySetup_ProxyStatusPing(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4072]!, self._r[4072]!, [_0])
+ return formatWithArgumentRanges(self._s[4075]!, self._r[4075]!, [_0])
}
- public var TwoStepAuth_EmailSent: String { return self._s[4073]! }
- public var Cache_Indexing: String { return self._s[4074]! }
- public var Notifications_ExceptionsNone: String { return self._s[4075]! }
- public var MessagePoll_LabelQuiz: String { return self._s[4076]! }
- public var Call_EncryptionKey_Title: String { return self._s[4077]! }
- public var Common_Yes: String { return self._s[4078]! }
- public var Channel_ErrorAddBlocked: String { return self._s[4079]! }
- public var Month_GenJanuary: String { return self._s[4080]! }
- public var Checkout_NewCard_Title: String { return self._s[4081]! }
+ public var TwoStepAuth_EmailSent: String { return self._s[4076]! }
+ public var Cache_Indexing: String { return self._s[4077]! }
+ public var Notifications_ExceptionsNone: String { return self._s[4078]! }
+ public var MessagePoll_LabelQuiz: String { return self._s[4079]! }
+ public var Call_EncryptionKey_Title: String { return self._s[4080]! }
+ public var Common_Yes: String { return self._s[4081]! }
+ public var Channel_ErrorAddBlocked: String { return self._s[4082]! }
+ public var Month_GenJanuary: String { return self._s[4083]! }
+ public var Checkout_NewCard_Title: String { return self._s[4084]! }
public func TwoStepAuth_EnterPasswordHint(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4082]!, self._r[4082]!, [_0])
+ return formatWithArgumentRanges(self._s[4085]!, self._r[4085]!, [_0])
}
- public var Conversation_InputTextPlaceholderReply: String { return self._s[4084]! }
- public var PasscodeSettings_AutoLock_IfAwayFor_1hour: String { return self._s[4085]! }
- public var Conversation_SendDice: String { return self._s[4086]! }
+ public var Conversation_InputTextPlaceholderReply: String { return self._s[4087]! }
+ public var PasscodeSettings_AutoLock_IfAwayFor_1hour: String { return self._s[4088]! }
+ public var Conversation_SendDice: String { return self._s[4089]! }
public func ChatSettings_AutoDownloadSettings_TypeVideo(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4087]!, self._r[4087]!, [_0])
+ return formatWithArgumentRanges(self._s[4090]!, self._r[4090]!, [_0])
}
public func VoiceOver_Chat_VideoFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4088]!, self._r[4088]!, [_0])
+ return formatWithArgumentRanges(self._s[4091]!, self._r[4091]!, [_0])
}
- public var Weekday_Wednesday: String { return self._s[4089]! }
- public var ReportPeer_ReasonOther_Send: String { return self._s[4090]! }
- public var PasscodeSettings_EncryptDataHelp: String { return self._s[4091]! }
- public var PrivacyLastSeenSettings_CustomShareSettingsHelp: String { return self._s[4092]! }
- public var OldChannels_NoticeTitle: String { return self._s[4093]! }
- public var TwoStepAuth_ChangeEmail: String { return self._s[4094]! }
- public var PasscodeSettings_PasscodeOptions: String { return self._s[4095]! }
- public var InfoPlist_NSPhotoLibraryUsageDescription: String { return self._s[4096]! }
- public var Passport_Address_AddUtilityBill: String { return self._s[4097]! }
+ public var Weekday_Wednesday: String { return self._s[4092]! }
+ public var ReportPeer_ReasonOther_Send: String { return self._s[4093]! }
+ public var PasscodeSettings_EncryptDataHelp: String { return self._s[4094]! }
+ public var PrivacyLastSeenSettings_CustomShareSettingsHelp: String { return self._s[4095]! }
+ public var OldChannels_NoticeTitle: String { return self._s[4096]! }
+ public var TwoStepAuth_ChangeEmail: String { return self._s[4097]! }
+ public var PasscodeSettings_PasscodeOptions: String { return self._s[4098]! }
+ public var InfoPlist_NSPhotoLibraryUsageDescription: String { return self._s[4099]! }
+ public var Passport_Address_AddUtilityBill: String { return self._s[4100]! }
public func Time_PreciseDate_m5(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4099]!, self._r[4099]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[4102]!, self._r[4102]!, [_1, _2, _3])
}
- public var TwoFactorSetup_EmailVerification_ResendAction: String { return self._s[4101]! }
- public var Stats_GroupTopAdminsTitle: String { return self._s[4102]! }
- public var Paint_Regular: String { return self._s[4104]! }
- public var Message_Contact: String { return self._s[4105]! }
- public var NetworkUsageSettings_MediaVideoDataSection: String { return self._s[4106]! }
- public var VoiceOver_Chat_YourPhoto: String { return self._s[4107]! }
- public var Notification_Mute1hMin: String { return self._s[4108]! }
+ public var TwoFactorSetup_EmailVerification_ResendAction: String { return self._s[4104]! }
+ public var Stats_GroupTopAdminsTitle: String { return self._s[4105]! }
+ public var Paint_Regular: String { return self._s[4107]! }
+ public var Message_Contact: String { return self._s[4108]! }
+ public var NetworkUsageSettings_MediaVideoDataSection: String { return self._s[4109]! }
+ public var VoiceOver_Chat_YourPhoto: String { return self._s[4110]! }
+ public var Notification_Mute1hMin: String { return self._s[4111]! }
public func Login_BannedPhoneSubject(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4109]!, self._r[4109]!, [_0])
+ return formatWithArgumentRanges(self._s[4112]!, self._r[4112]!, [_0])
}
- public var Profile_MessageLifetime1h: String { return self._s[4110]! }
- public var TwoStepAuth_GenericHelp: String { return self._s[4111]! }
- public var TwoFactorSetup_PasswordRecovery_Skip: String { return self._s[4112]! }
- public var TextFormat_Monospace: String { return self._s[4113]! }
- public var VoiceOver_Media_PlaybackRateChange: String { return self._s[4115]! }
- public var Conversation_DeleteMessagesForMe: String { return self._s[4116]! }
- public var ChatList_DeleteChat: String { return self._s[4117]! }
- public var Channel_OwnershipTransfer_EnterPasswordText: String { return self._s[4120]! }
+ public var Profile_MessageLifetime1h: String { return self._s[4113]! }
+ public var TwoStepAuth_GenericHelp: String { return self._s[4114]! }
+ public var TwoFactorSetup_PasswordRecovery_Skip: String { return self._s[4115]! }
+ public var TextFormat_Monospace: String { return self._s[4116]! }
+ public var VoiceOver_Media_PlaybackRateChange: String { return self._s[4118]! }
+ public var Conversation_DeleteMessagesForMe: String { return self._s[4119]! }
+ public var ChatList_DeleteChat: String { return self._s[4120]! }
+ public var Channel_OwnershipTransfer_EnterPasswordText: String { return self._s[4123]! }
public func Settings_ApplyProxyAlertCredentials(_ _1: String, _ _2: String, _ _3: String, _ _4: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4121]!, self._r[4121]!, [_1, _2, _3, _4])
+ return formatWithArgumentRanges(self._s[4124]!, self._r[4124]!, [_1, _2, _3, _4])
}
- public var Login_CancelPhoneVerificationStop: String { return self._s[4122]! }
- public var Appearance_ThemePreview_ChatList_4_Name: String { return self._s[4123]! }
- public var MediaPicker_MomentsDateRangeSameMonthYearFormat: String { return self._s[4124]! }
+ public var Login_CancelPhoneVerificationStop: String { return self._s[4125]! }
+ public var Appearance_ThemePreview_ChatList_4_Name: String { return self._s[4126]! }
+ public var MediaPicker_MomentsDateRangeSameMonthYearFormat: String { return self._s[4127]! }
public func Channel_AdminLog_MessageToggleInvitesOn(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4125]!, self._r[4125]!, [_0])
+ return formatWithArgumentRanges(self._s[4128]!, self._r[4128]!, [_0])
}
- public var Notifications_Badge_IncludeChannels: String { return self._s[4126]! }
- public var InviteLink_CreatePrivateLinkHelpChannel: String { return self._s[4127]! }
- public var StickerPack_ViewPack: String { return self._s[4130]! }
- public var FastTwoStepSetup_PasswordConfirmationPlaceholder: String { return self._s[4132]! }
- public var EditTheme_Expand_Preview_IncomingText: String { return self._s[4133]! }
- public var Notifications_Title: String { return self._s[4134]! }
- public var Conversation_InputTextPlaceholderComment: String { return self._s[4135]! }
- public var GroupInfo_PublicLink: String { return self._s[4136]! }
+ public var Notifications_Badge_IncludeChannels: String { return self._s[4129]! }
+ public var InviteLink_CreatePrivateLinkHelpChannel: String { return self._s[4130]! }
+ public var StickerPack_ViewPack: String { return self._s[4133]! }
+ public var FastTwoStepSetup_PasswordConfirmationPlaceholder: String { return self._s[4135]! }
+ public var EditTheme_Expand_Preview_IncomingText: String { return self._s[4136]! }
+ public var Notifications_Title: String { return self._s[4137]! }
+ public var Conversation_InputTextPlaceholderComment: String { return self._s[4138]! }
+ public var GroupInfo_PublicLink: String { return self._s[4139]! }
public func ScheduleVoiceChat_GroupText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4137]!, self._r[4137]!, [_0])
+ return formatWithArgumentRanges(self._s[4140]!, self._r[4140]!, [_0])
}
- public var VoiceOver_DiscardPreparedContent: String { return self._s[4138]! }
- public var Conversation_Moderate_Ban: String { return self._s[4142]! }
- public var InviteLink_Manage: String { return self._s[4143]! }
- public var InstantPage_FontNewYork: String { return self._s[4144]! }
+ public var VoiceOver_DiscardPreparedContent: String { return self._s[4141]! }
+ public var Conversation_Moderate_Ban: String { return self._s[4145]! }
+ public var InviteLink_Manage: String { return self._s[4146]! }
+ public var InstantPage_FontNewYork: String { return self._s[4147]! }
public func Activity_RemindAboutGroup(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4145]!, self._r[4145]!, [_0])
+ return formatWithArgumentRanges(self._s[4148]!, self._r[4148]!, [_0])
}
- public var TextFormat_Underline: String { return self._s[4146]! }
+ public var TextFormat_Underline: String { return self._s[4149]! }
public func DownloadingStatus(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4147]!, self._r[4147]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[4150]!, self._r[4150]!, [_0, _1])
}
public func PUSH_PINNED_ROUND(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4148]!, self._r[4148]!, [_1])
+ return formatWithArgumentRanges(self._s[4151]!, self._r[4151]!, [_1])
}
- public var PollResults_Collapse: String { return self._s[4150]! }
- public var Contacts_GlobalSearch: String { return self._s[4151]! }
+ public var PollResults_Collapse: String { return self._s[4153]! }
+ public var Contacts_GlobalSearch: String { return self._s[4154]! }
public func Conversation_EncryptionWaiting(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4153]!, self._r[4153]!, [_0])
+ return formatWithArgumentRanges(self._s[4156]!, self._r[4156]!, [_0])
}
- public var Channel_Management_LabelEditor: String { return self._s[4154]! }
- public var SettingsSearch_Synonyms_Stickers_FeaturedPacks: String { return self._s[4156]! }
- public var Conversation_Theme: String { return self._s[4157]! }
+ public var Channel_Management_LabelEditor: String { return self._s[4157]! }
+ public var SettingsSearch_Synonyms_Stickers_FeaturedPacks: String { return self._s[4159]! }
+ public var Conversation_Theme: String { return self._s[4160]! }
public func PUSH_CHANNEL_MESSAGE_DOCS(_ _1: String, _ _2: Int) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4158]!, self._r[4158]!, [_1, "\(_2)"])
+ return formatWithArgumentRanges(self._s[4161]!, self._r[4161]!, [_1, "\(_2)"])
}
- public var Conversation_LinkDialogSave: String { return self._s[4159]! }
- public var EnterPasscode_TouchId: String { return self._s[4160]! }
- public var Conversation_VoiceChatMediaRecordingRestricted: String { return self._s[4161]! }
- public var Group_ErrorAdminsTooMuch: String { return self._s[4162]! }
- public var Stats_MessageOverview: String { return self._s[4163]! }
- public var Privacy_Calls_P2PAlways: String { return self._s[4165]! }
- public var Message_Sticker: String { return self._s[4166]! }
- public var TwoFactorSetup_PasswordRecovery_SkipAlertTitle: String { return self._s[4167]! }
- public var Conversation_Mute: String { return self._s[4170]! }
- public var VoiceChat_AnonymousDisabledAlertText: String { return self._s[4171]! }
- public var ContactInfo_Title: String { return self._s[4172]! }
+ public var Conversation_LinkDialogSave: String { return self._s[4162]! }
+ public var EnterPasscode_TouchId: String { return self._s[4163]! }
+ public var Conversation_VoiceChatMediaRecordingRestricted: String { return self._s[4164]! }
+ public var Group_ErrorAdminsTooMuch: String { return self._s[4165]! }
+ public var Stats_MessageOverview: String { return self._s[4166]! }
+ public var Privacy_Calls_P2PAlways: String { return self._s[4168]! }
+ public var Message_Sticker: String { return self._s[4169]! }
+ public var TwoFactorSetup_PasswordRecovery_SkipAlertTitle: String { return self._s[4170]! }
+ public var Conversation_Mute: String { return self._s[4173]! }
+ public var VoiceChat_AnonymousDisabledAlertText: String { return self._s[4174]! }
+ public var ContactInfo_Title: String { return self._s[4175]! }
public func PUSH_CHANNEL_MESSAGE_CONTACT(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4173]!, self._r[4173]!, [_1])
+ return formatWithArgumentRanges(self._s[4176]!, self._r[4176]!, [_1])
}
- public var Channel_Setup_TypeHeader: String { return self._s[4174]! }
- public var AuthSessions_LogOut: String { return self._s[4175]! }
- public var ChatSettings_AutoDownloadReset: String { return self._s[4176]! }
- public var VoiceChat_PinVideo: String { return self._s[4177]! }
- public var Group_Info_Members: String { return self._s[4179]! }
- public var ChatListFolderSettings_NewFolder: String { return self._s[4180]! }
- public var Appearance_ThemePreview_ChatList_3_AuthorName: String { return self._s[4181]! }
- public var CreatePoll_Title: String { return self._s[4182]! }
- public var EditTheme_EditTitle: String { return self._s[4183]! }
- public var ChatListFolderSettings_RecommendedFoldersSection: String { return self._s[4184]! }
- public var TwoStepAuth_SetPassword: String { return self._s[4185]! }
+ public var Channel_Setup_TypeHeader: String { return self._s[4177]! }
+ public var AuthSessions_LogOut: String { return self._s[4178]! }
+ public var ChatSettings_AutoDownloadReset: String { return self._s[4179]! }
+ public var VoiceChat_PinVideo: String { return self._s[4180]! }
+ public var Group_Info_Members: String { return self._s[4182]! }
+ public var ChatListFolderSettings_NewFolder: String { return self._s[4183]! }
+ public var Appearance_ThemePreview_ChatList_3_AuthorName: String { return self._s[4184]! }
+ public var CreatePoll_Title: String { return self._s[4185]! }
+ public var EditTheme_EditTitle: String { return self._s[4186]! }
+ public var ChatListFolderSettings_RecommendedFoldersSection: String { return self._s[4187]! }
+ public var TwoStepAuth_SetPassword: String { return self._s[4188]! }
public func Login_InvalidPhoneEmailSubject(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4186]!, self._r[4186]!, [_0])
+ return formatWithArgumentRanges(self._s[4189]!, self._r[4189]!, [_0])
}
- public var BlockedUsers_Info: String { return self._s[4187]! }
- public var AuthSessions_Sessions: String { return self._s[4188]! }
- public var Group_EditAdmin_RankTitle: String { return self._s[4189]! }
- public var Common_ActionNotAllowedError: String { return self._s[4190]! }
- public var WebPreview_GettingLinkInfo: String { return self._s[4191]! }
- public var Appearance_AppIconFilledX: String { return self._s[4192]! }
- public var Passport_Email_EmailPlaceholder: String { return self._s[4193]! }
- public var FeaturedStickers_OtherSection: String { return self._s[4194]! }
- public var VoiceChat_RecordingStarted: String { return self._s[4195]! }
- public var EditTheme_Edit_Preview_OutgoingText: String { return self._s[4196]! }
- public var Profile_Username: String { return self._s[4197]! }
- public var TwoFactorRemember_Done_Title: String { return self._s[4198]! }
- public var Settings_TipsUsername: String { return self._s[4199]! }
- public var Appearance_RemoveTheme: String { return self._s[4200]! }
- public var TwoStepAuth_SetupPasswordConfirmPassword: String { return self._s[4201]! }
- public var Message_PinnedStickerMessage: String { return self._s[4202]! }
- public var AccessDenied_VideoMicrophone: String { return self._s[4203]! }
- public var WallpaperPreview_CustomColorBottomText: String { return self._s[4204]! }
- public var Passport_Address_RegionPlaceholder: String { return self._s[4205]! }
- public var Conversation_VoiceChat: String { return self._s[4206]! }
- public var VoiceChat_EditBioSuccess: String { return self._s[4207]! }
- public var ImportStickerPack_LinkAvailable: String { return self._s[4208]! }
- public var SettingsSearch_Synonyms_Data_Storage_Title: String { return self._s[4209]! }
- public var TwoStepAuth_Title: String { return self._s[4210]! }
- public var VoiceOver_Chat_YourAnimatedSticker: String { return self._s[4211]! }
- public var Checkout_WebConfirmation_Title: String { return self._s[4212]! }
- public var AutoDownloadSettings_VoiceMessagesInfo: String { return self._s[4213]! }
- public var ChatListFolder_CategoryGroups: String { return self._s[4215]! }
- public var Stats_GroupTopInviter_Promote: String { return self._s[4216]! }
- public var Conversation_EditingPhotoPanelTitle: String { return self._s[4217]! }
- public var Month_GenJuly: String { return self._s[4218]! }
- public var Passport_Identity_Gender: String { return self._s[4219]! }
- public var Channel_DiscussionGroup_UnlinkGroup: String { return self._s[4220]! }
- public var Notification_Exceptions_DeleteAll: String { return self._s[4221]! }
- public var VoiceChat_StopRecording: String { return self._s[4222]! }
+ public var BlockedUsers_Info: String { return self._s[4190]! }
+ public var AuthSessions_Sessions: String { return self._s[4191]! }
+ public var Group_EditAdmin_RankTitle: String { return self._s[4192]! }
+ public var Common_ActionNotAllowedError: String { return self._s[4193]! }
+ public var WebPreview_GettingLinkInfo: String { return self._s[4194]! }
+ public var Appearance_AppIconFilledX: String { return self._s[4195]! }
+ public var Passport_Email_EmailPlaceholder: String { return self._s[4196]! }
+ public var FeaturedStickers_OtherSection: String { return self._s[4197]! }
+ public var VoiceChat_RecordingStarted: String { return self._s[4198]! }
+ public var EditTheme_Edit_Preview_OutgoingText: String { return self._s[4199]! }
+ public var Profile_Username: String { return self._s[4200]! }
+ public var TwoFactorRemember_Done_Title: String { return self._s[4201]! }
+ public var Settings_TipsUsername: String { return self._s[4202]! }
+ public var Appearance_RemoveTheme: String { return self._s[4203]! }
+ public var TwoStepAuth_SetupPasswordConfirmPassword: String { return self._s[4204]! }
+ public var Message_PinnedStickerMessage: String { return self._s[4205]! }
+ public var AccessDenied_VideoMicrophone: String { return self._s[4206]! }
+ public var WallpaperPreview_CustomColorBottomText: String { return self._s[4207]! }
+ public var Passport_Address_RegionPlaceholder: String { return self._s[4208]! }
+ public var Conversation_VoiceChat: String { return self._s[4209]! }
+ public var VoiceChat_EditBioSuccess: String { return self._s[4210]! }
+ public var ImportStickerPack_LinkAvailable: String { return self._s[4211]! }
+ public var SettingsSearch_Synonyms_Data_Storage_Title: String { return self._s[4212]! }
+ public var TwoStepAuth_Title: String { return self._s[4213]! }
+ public var VoiceOver_Chat_YourAnimatedSticker: String { return self._s[4214]! }
+ public var Checkout_WebConfirmation_Title: String { return self._s[4215]! }
+ public var AutoDownloadSettings_VoiceMessagesInfo: String { return self._s[4216]! }
+ public var ChatListFolder_CategoryGroups: String { return self._s[4218]! }
+ public var Stats_GroupTopInviter_Promote: String { return self._s[4219]! }
+ public var Conversation_EditingPhotoPanelTitle: String { return self._s[4220]! }
+ public var Month_GenJuly: String { return self._s[4221]! }
+ public var Passport_Identity_Gender: String { return self._s[4222]! }
+ public var Channel_DiscussionGroup_UnlinkGroup: String { return self._s[4223]! }
+ public var Notification_Exceptions_DeleteAll: String { return self._s[4224]! }
+ public var VoiceChat_StopRecording: String { return self._s[4225]! }
public func Conversation_FileHowToText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4223]!, self._r[4223]!, [_0])
- }
- public func Channel_AdminLog_MessageAdmin(_ _0: String, _ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4224]!, self._r[4224]!, [_0, _1, _2])
- }
- public var Login_CodeSentSms: String { return self._s[4225]! }
- public func VoiceOver_Chat_ReplyFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[4226]!, self._r[4226]!, [_0])
}
- public var Login_CallRequestState2: String { return self._s[4227]! }
- public var Channel_DiscussionGroup_Header: String { return self._s[4228]! }
- public func Channel_AdminLog_MessageToggleInvitesOff(_ _0: String) -> (String, [(Int, NSRange)]) {
+ public func Channel_AdminLog_MessageAdmin(_ _0: String, _ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[4227]!, self._r[4227]!, [_0, _1, _2])
+ }
+ public var Login_CodeSentSms: String { return self._s[4228]! }
+ public func VoiceOver_Chat_ReplyFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[4229]!, self._r[4229]!, [_0])
}
- public var Passport_Language_ms: String { return self._s[4230]! }
- public var PeopleNearby_MakeInvisible: String { return self._s[4232]! }
- public var ImportStickerPack_CreateStickerSet: String { return self._s[4234]! }
- public var ChatList_Search_FilterVoice: String { return self._s[4235]! }
- public var Camera_TapAndHoldForVideo: String { return self._s[4237]! }
- public var Permissions_NotificationsAllowInSettings_v0: String { return self._s[4238]! }
+ public var Login_CallRequestState2: String { return self._s[4230]! }
+ public var Channel_DiscussionGroup_Header: String { return self._s[4231]! }
+ public func Channel_AdminLog_MessageToggleInvitesOff(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[4232]!, self._r[4232]!, [_0])
+ }
+ public var Passport_Language_ms: String { return self._s[4233]! }
+ public var PeopleNearby_MakeInvisible: String { return self._s[4235]! }
+ public var ImportStickerPack_CreateStickerSet: String { return self._s[4237]! }
+ public var ChatList_Search_FilterVoice: String { return self._s[4238]! }
+ public var Camera_TapAndHoldForVideo: String { return self._s[4240]! }
+ public var Permissions_NotificationsAllowInSettings_v0: String { return self._s[4241]! }
public func Notification_LeftChannel(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4239]!, self._r[4239]!, [_0])
+ return formatWithArgumentRanges(self._s[4242]!, self._r[4242]!, [_0])
}
public func Call_VoiceChatInProgressMessageCall(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4240]!, self._r[4240]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4243]!, self._r[4243]!, [_1, _2])
}
- public var Map_Locating: String { return self._s[4241]! }
+ public var Map_Locating: String { return self._s[4244]! }
public func Checkout_SavePasswordTimeout(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4243]!, self._r[4243]!, [_0])
+ return formatWithArgumentRanges(self._s[4246]!, self._r[4246]!, [_0])
}
- public var Passport_Identity_TypeInternalPassport: String { return self._s[4245]! }
- public var Appearance_ThemePreview_Chat_4_Text: String { return self._s[4246]! }
- public var SettingsSearch_Synonyms_EditProfile_Username: String { return self._s[4247]! }
- public var Stickers_Installed: String { return self._s[4248]! }
- public var Notifications_PermissionsAllowInSettings: String { return self._s[4249]! }
- public var StickerPackActionInfo_RemovedTitle: String { return self._s[4250]! }
- public var CallSettings_Never: String { return self._s[4252]! }
- public var Channel_Setup_TypePublicHelp: String { return self._s[4253]! }
+ public var Passport_Identity_TypeInternalPassport: String { return self._s[4248]! }
+ public var Appearance_ThemePreview_Chat_4_Text: String { return self._s[4249]! }
+ public var SettingsSearch_Synonyms_EditProfile_Username: String { return self._s[4250]! }
+ public var Stickers_Installed: String { return self._s[4251]! }
+ public var Notifications_PermissionsAllowInSettings: String { return self._s[4252]! }
+ public var StickerPackActionInfo_RemovedTitle: String { return self._s[4253]! }
+ public var CallSettings_Never: String { return self._s[4255]! }
+ public var Channel_Setup_TypePublicHelp: String { return self._s[4256]! }
public func ChatList_DeleteForEveryone(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4255]!, self._r[4255]!, [_0])
+ return formatWithArgumentRanges(self._s[4258]!, self._r[4258]!, [_0])
}
- public var Message_Game: String { return self._s[4256]! }
- public var Call_Message: String { return self._s[4257]! }
+ public var Message_Game: String { return self._s[4259]! }
+ public var Call_Message: String { return self._s[4260]! }
public func PUSH_CHANNEL_MESSAGE_VIDEO(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4258]!, self._r[4258]!, [_1])
+ return formatWithArgumentRanges(self._s[4261]!, self._r[4261]!, [_1])
}
- public var ChannelIntro_Text: String { return self._s[4259]! }
- public var VoiceChat_NoiseSuppressionEnabled: String { return self._s[4260]! }
- public var StickerPack_Send: String { return self._s[4261]! }
- public var Share_AuthDescription: String { return self._s[4262]! }
- public var PasscodeSettings_AutoLock_IfAwayFor_5minutes: String { return self._s[4263]! }
- public var CallFeedback_WhatWentWrong: String { return self._s[4264]! }
- public var Common_Create: String { return self._s[4267]! }
- public var Passport_Language_hy: String { return self._s[4268]! }
- public var CreatePoll_Explanation: String { return self._s[4269]! }
- public var GroupPermission_AddMembersNotAvailable: String { return self._s[4270]! }
- public var ChatImport_CreateGroupAlertImportAction: String { return self._s[4271]! }
- public var PeerInfo_ButtonVoiceChat: String { return self._s[4272]! }
- public var Undo_ChatClearedForBothSides: String { return self._s[4273]! }
- public var DialogList_NoMessagesTitle: String { return self._s[4274]! }
- public var GroupInfo_Title: String { return self._s[4276]! }
+ public var ChannelIntro_Text: String { return self._s[4262]! }
+ public var VoiceChat_NoiseSuppressionEnabled: String { return self._s[4263]! }
+ public var StickerPack_Send: String { return self._s[4264]! }
+ public var Share_AuthDescription: String { return self._s[4265]! }
+ public var PasscodeSettings_AutoLock_IfAwayFor_5minutes: String { return self._s[4266]! }
+ public var CallFeedback_WhatWentWrong: String { return self._s[4267]! }
+ public var Common_Create: String { return self._s[4270]! }
+ public var Passport_Language_hy: String { return self._s[4271]! }
+ public var CreatePoll_Explanation: String { return self._s[4272]! }
+ public var GroupPermission_AddMembersNotAvailable: String { return self._s[4273]! }
+ public var ChatImport_CreateGroupAlertImportAction: String { return self._s[4274]! }
+ public var PeerInfo_ButtonVoiceChat: String { return self._s[4275]! }
+ public var Undo_ChatClearedForBothSides: String { return self._s[4276]! }
+ public var DialogList_NoMessagesTitle: String { return self._s[4277]! }
+ public var GroupInfo_Title: String { return self._s[4279]! }
public func ScheduleVoiceChat_ScheduleToday(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4277]!, self._r[4277]!, [_0])
+ return formatWithArgumentRanges(self._s[4280]!, self._r[4280]!, [_0])
}
- public var UserInfo_ContactForwardTooltip_SavedMessages_One: String { return self._s[4278]! }
- public var Channel_AdminLog_CanBanUsers: String { return self._s[4279]! }
- public var PhoneNumberHelp_Help: String { return self._s[4280]! }
- public var TwoStepAuth_AdditionalPassword: String { return self._s[4281]! }
- public var Settings_Logout: String { return self._s[4282]! }
- public var Privacy_PaymentsTitle: String { return self._s[4283]! }
- public var StickerPacksSettings_StickerPacksSection: String { return self._s[4284]! }
- public var Tour_Text6: String { return self._s[4285]! }
- public var ChatImportActivity_Title: String { return self._s[4287]! }
- public var Channel_Username_Help: String { return self._s[4288]! }
- public var VoiceOver_Chat_RecordModeVoiceMessageInfo: String { return self._s[4289]! }
- public var AttachmentMenu_Poll: String { return self._s[4290]! }
- public var EditTheme_Create_Preview_IncomingReplyName: String { return self._s[4291]! }
- public var Conversation_ReportSpamChannelConfirmation: String { return self._s[4292]! }
- public var Passport_DeletePassport: String { return self._s[4293]! }
- public var Login_Code: String { return self._s[4294]! }
- public var Notification_SecretChatScreenshot: String { return self._s[4295]! }
- public var VoiceChat_AddBio: String { return self._s[4296]! }
- public var Login_CodeFloodError: String { return self._s[4297]! }
+ public var UserInfo_ContactForwardTooltip_SavedMessages_One: String { return self._s[4281]! }
+ public var Channel_AdminLog_CanBanUsers: String { return self._s[4282]! }
+ public var PhoneNumberHelp_Help: String { return self._s[4283]! }
+ public var TwoStepAuth_AdditionalPassword: String { return self._s[4284]! }
+ public var Settings_Logout: String { return self._s[4285]! }
+ public var Privacy_PaymentsTitle: String { return self._s[4286]! }
+ public var StickerPacksSettings_StickerPacksSection: String { return self._s[4287]! }
+ public var Tour_Text6: String { return self._s[4288]! }
+ public var ChatImportActivity_Title: String { return self._s[4290]! }
+ public var Channel_Username_Help: String { return self._s[4291]! }
+ public var VoiceOver_Chat_RecordModeVoiceMessageInfo: String { return self._s[4292]! }
+ public var AttachmentMenu_Poll: String { return self._s[4293]! }
+ public var EditTheme_Create_Preview_IncomingReplyName: String { return self._s[4294]! }
+ public var Conversation_ReportSpamChannelConfirmation: String { return self._s[4295]! }
+ public var Passport_DeletePassport: String { return self._s[4296]! }
+ public var Login_Code: String { return self._s[4297]! }
+ public var Notification_SecretChatScreenshot: String { return self._s[4298]! }
+ public var VoiceChat_AddBio: String { return self._s[4299]! }
+ public var Login_CodeFloodError: String { return self._s[4300]! }
public func Notification_PinnedAnimationMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4298]!, self._r[4298]!, [_0])
+ return formatWithArgumentRanges(self._s[4301]!, self._r[4301]!, [_0])
}
public func Channel_Username_UsernameIsAvailable(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4299]!, self._r[4299]!, [_0])
- }
- public var Watch_Stickers_Recents: String { return self._s[4300]! }
- public var Generic_ErrorMoreInfo: String { return self._s[4301]! }
- public func Call_AccountIsLoggedOnCurrentDevice(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[4302]!, self._r[4302]!, [_0])
}
- public var AutoDownloadSettings_DataUsage: String { return self._s[4303]! }
- public var Conversation_ViewTheme: String { return self._s[4304]! }
- public var Contacts_InviteSearchLabel: String { return self._s[4305]! }
- public var Settings_CancelUpload: String { return self._s[4307]! }
- public var Settings_AppLanguage_Unofficial: String { return self._s[4308]! }
+ public var Watch_Stickers_Recents: String { return self._s[4303]! }
+ public var Generic_ErrorMoreInfo: String { return self._s[4304]! }
+ public func Call_AccountIsLoggedOnCurrentDevice(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[4305]!, self._r[4305]!, [_0])
+ }
+ public var AutoDownloadSettings_DataUsage: String { return self._s[4306]! }
+ public var Conversation_ViewTheme: String { return self._s[4307]! }
+ public var Contacts_InviteSearchLabel: String { return self._s[4308]! }
+ public var Settings_CancelUpload: String { return self._s[4310]! }
+ public var Settings_AppLanguage_Unofficial: String { return self._s[4311]! }
public func ChatList_ClearChatConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4309]!, self._r[4309]!, [_0])
+ return formatWithArgumentRanges(self._s[4312]!, self._r[4312]!, [_0])
}
- public var ChatList_AddFolder: String { return self._s[4310]! }
- public var Conversation_Location: String { return self._s[4312]! }
- public var Appearance_BubbleCorners_AdjustAdjacent: String { return self._s[4313]! }
- public var DialogList_AdLabel: String { return self._s[4314]! }
+ public var ChatList_AddFolder: String { return self._s[4313]! }
+ public var Conversation_Location: String { return self._s[4315]! }
+ public var Appearance_BubbleCorners_AdjustAdjacent: String { return self._s[4316]! }
+ public var DialogList_AdLabel: String { return self._s[4317]! }
public func Time_TomorrowAt(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4316]!, self._r[4316]!, [_0])
+ return formatWithArgumentRanges(self._s[4319]!, self._r[4319]!, [_0])
}
- public var Message_InvoiceLabel: String { return self._s[4317]! }
- public var Channel_TooMuchBots: String { return self._s[4318]! }
+ public var Message_InvoiceLabel: String { return self._s[4320]! }
+ public var Channel_TooMuchBots: String { return self._s[4321]! }
public func Channel_AdminLog_MessageRemovedChannelUsername(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4320]!, self._r[4320]!, [_0])
+ return formatWithArgumentRanges(self._s[4323]!, self._r[4323]!, [_0])
}
- public var Call_IncomingVideoCall: String { return self._s[4321]! }
- public var Conversation_LiveLocation: String { return self._s[4322]! }
- public var VoiceChat_AskedToSpeakHelp: String { return self._s[4323]! }
- public var TwoStepAuth_SetupPasswordEnterPasswordChange: String { return self._s[4324]! }
- public var Passport_Identity_EditPassport: String { return self._s[4325]! }
- public var Permissions_CellularDataTitle_v0: String { return self._s[4327]! }
- public var ChatList_Search_NoResultsFitlerVoice: String { return self._s[4328]! }
- public var GroupInfo_Permissions_AddException: String { return self._s[4329]! }
+ public var Call_IncomingVideoCall: String { return self._s[4324]! }
+ public var Conversation_LiveLocation: String { return self._s[4325]! }
+ public var VoiceChat_AskedToSpeakHelp: String { return self._s[4326]! }
+ public var TwoStepAuth_SetupPasswordEnterPasswordChange: String { return self._s[4327]! }
+ public var Passport_Identity_EditPassport: String { return self._s[4328]! }
+ public var Permissions_CellularDataTitle_v0: String { return self._s[4330]! }
+ public var ChatList_Search_NoResultsFitlerVoice: String { return self._s[4331]! }
+ public var GroupInfo_Permissions_AddException: String { return self._s[4332]! }
public func VoiceChat_RemovePeerConfirmationChannel(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4331]!, self._r[4331]!, [_0])
+ return formatWithArgumentRanges(self._s[4334]!, self._r[4334]!, [_0])
}
- public var Channel_AdminLog_CanInviteUsers: String { return self._s[4332]! }
- public var Channel_MessageVideoUpdated: String { return self._s[4333]! }
- public var GroupInfo_Permissions_EditingDisabled: String { return self._s[4334]! }
- public var AutoremoveSetup_TimeSectionHeader: String { return self._s[4337]! }
- public var AccessDenied_Camera: String { return self._s[4338]! }
+ public var Channel_AdminLog_CanInviteUsers: String { return self._s[4335]! }
+ public var Channel_MessageVideoUpdated: String { return self._s[4336]! }
+ public var GroupInfo_Permissions_EditingDisabled: String { return self._s[4337]! }
+ public var AutoremoveSetup_TimeSectionHeader: String { return self._s[4340]! }
+ public var AccessDenied_Camera: String { return self._s[4341]! }
public func Target_InviteToGroupConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4339]!, self._r[4339]!, [_0])
+ return formatWithArgumentRanges(self._s[4342]!, self._r[4342]!, [_0])
}
- public var Theme_Context_ChangeColors: String { return self._s[4340]! }
- public var PrivacySettings_TwoStepAuth: String { return self._s[4341]! }
- public var Privacy_Forwards_PreviewMessageText: String { return self._s[4342]! }
- public var Login_CodeExpiredError: String { return self._s[4343]! }
- public var State_ConnectingToProxy: String { return self._s[4344]! }
- public var TextFormat_Link: String { return self._s[4345]! }
- public var Passport_Language_lv: String { return self._s[4347]! }
- public var Conversation_AutoremoveTimerRemovedGroup: String { return self._s[4348]! }
- public var AccessDenied_VoiceMicrophone: String { return self._s[4349]! }
- public var WallpaperPreview_SwipeBottomText: String { return self._s[4350]! }
- public var ProfilePhoto_SetMainVideo: String { return self._s[4351]! }
- public var AutoDownloadSettings_Cellular: String { return self._s[4353]! }
- public var ChatSettings_AutoDownloadVoiceMessages: String { return self._s[4354]! }
- public var Calls_NoVoiceAndVideoCallsPlaceholder: String { return self._s[4355]! }
+ public var Theme_Context_ChangeColors: String { return self._s[4343]! }
+ public var PrivacySettings_TwoStepAuth: String { return self._s[4344]! }
+ public var Privacy_Forwards_PreviewMessageText: String { return self._s[4345]! }
+ public var Login_CodeExpiredError: String { return self._s[4346]! }
+ public var State_ConnectingToProxy: String { return self._s[4347]! }
+ public var TextFormat_Link: String { return self._s[4348]! }
+ public var Passport_Language_lv: String { return self._s[4350]! }
+ public var Conversation_AutoremoveTimerRemovedGroup: String { return self._s[4351]! }
+ public var AccessDenied_VoiceMicrophone: String { return self._s[4352]! }
+ public var WallpaperPreview_SwipeBottomText: String { return self._s[4353]! }
+ public var ProfilePhoto_SetMainVideo: String { return self._s[4354]! }
+ public var AutoDownloadSettings_Cellular: String { return self._s[4356]! }
+ public var ChatSettings_AutoDownloadVoiceMessages: String { return self._s[4357]! }
+ public var Calls_NoVoiceAndVideoCallsPlaceholder: String { return self._s[4358]! }
public func Channel_AdminLog_MessageKickedNameUsername(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4356]!, self._r[4356]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4359]!, self._r[4359]!, [_1, _2])
}
- public var ChatList_EmptyChatListFilterTitle: String { return self._s[4357]! }
- public var Checkout_PayNone: String { return self._s[4358]! }
- public var NotificationsSound_Complete: String { return self._s[4360]! }
- public var TwoStepAuth_ConfirmEmailCodePlaceholder: String { return self._s[4361]! }
- public var InviteLink_CreateInfo: String { return self._s[4362]! }
- public var AuthSessions_DevicesTitle: String { return self._s[4363]! }
+ public var ChatList_EmptyChatListFilterTitle: String { return self._s[4360]! }
+ public var Checkout_PayNone: String { return self._s[4361]! }
+ public var NotificationsSound_Complete: String { return self._s[4363]! }
+ public var TwoStepAuth_ConfirmEmailCodePlaceholder: String { return self._s[4364]! }
+ public var InviteLink_CreateInfo: String { return self._s[4365]! }
+ public var AuthSessions_DevicesTitle: String { return self._s[4366]! }
public func DialogList_MultipleTyping(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4364]!, self._r[4364]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[4367]!, self._r[4367]!, [_0, _1])
}
- public var Message_LiveLocation: String { return self._s[4365]! }
- public var Watch_Suggestion_BRB: String { return self._s[4366]! }
- public var Channel_BanUser_Title: String { return self._s[4367]! }
- public var SettingsSearch_Synonyms_Privacy_Data_Title: String { return self._s[4368]! }
- public var Conversation_Dice_u1F3C0: String { return self._s[4369]! }
- public var Conversation_ClearSelfHistory: String { return self._s[4370]! }
- public var ProfilePhoto_OpenGallery: String { return self._s[4371]! }
- public var PrivacySettings_LastSeenTitle: String { return self._s[4372]! }
- public var Weekday_Thursday: String { return self._s[4373]! }
- public var BroadcastListInfo_AddRecipient: String { return self._s[4374]! }
- public var Privacy_ProfilePhoto: String { return self._s[4376]! }
- public var StickerPacksSettings_ArchivedPacks_Info: String { return self._s[4377]! }
+ public var Message_LiveLocation: String { return self._s[4368]! }
+ public var Watch_Suggestion_BRB: String { return self._s[4369]! }
+ public var Channel_BanUser_Title: String { return self._s[4370]! }
+ public var SettingsSearch_Synonyms_Privacy_Data_Title: String { return self._s[4371]! }
+ public var Conversation_Dice_u1F3C0: String { return self._s[4372]! }
+ public var Conversation_ClearSelfHistory: String { return self._s[4373]! }
+ public var ProfilePhoto_OpenGallery: String { return self._s[4374]! }
+ public var PrivacySettings_LastSeenTitle: String { return self._s[4375]! }
+ public var Weekday_Thursday: String { return self._s[4376]! }
+ public var BroadcastListInfo_AddRecipient: String { return self._s[4377]! }
+ public var Privacy_ProfilePhoto: String { return self._s[4379]! }
+ public var StickerPacksSettings_ArchivedPacks_Info: String { return self._s[4380]! }
public func Channel_AdminLog_MessageChangedUnlinkedGroup(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4378]!, self._r[4378]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4381]!, self._r[4381]!, [_1, _2])
}
- public var Message_Audio: String { return self._s[4379]! }
- public var Conversation_Info: String { return self._s[4380]! }
- public var Cache_Videos: String { return self._s[4381]! }
- public var Appearance_ThemePreview_ChatList_6_Text: String { return self._s[4382]! }
- public var Channel_ErrorAddTooMuch: String { return self._s[4383]! }
- public var TwoFactorSetup_ResetDone_Text: String { return self._s[4384]! }
+ public var Message_Audio: String { return self._s[4382]! }
+ public var Conversation_Info: String { return self._s[4383]! }
+ public var Cache_Videos: String { return self._s[4384]! }
+ public var Appearance_ThemePreview_ChatList_6_Text: String { return self._s[4385]! }
+ public var Channel_ErrorAddTooMuch: String { return self._s[4386]! }
+ public var TwoFactorSetup_ResetDone_Text: String { return self._s[4387]! }
public func ChatList_DeleteSecretChatConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4385]!, self._r[4385]!, [_0])
+ return formatWithArgumentRanges(self._s[4388]!, self._r[4388]!, [_0])
}
- public var VoiceChat_EditBio: String { return self._s[4386]! }
- public var ChannelMembers_ChannelAdminsTitle: String { return self._s[4388]! }
- public var VoiceChat_ShareScreen: String { return self._s[4391]! }
- public var ScheduledMessages_Title: String { return self._s[4392]! }
- public var ShareFileTip_Title: String { return self._s[4395]! }
- public var Chat_Gifs_TrendingSectionHeader: String { return self._s[4396]! }
- public var ChatList_RemoveFolderConfirmation: String { return self._s[4397]! }
+ public var VoiceChat_EditBio: String { return self._s[4389]! }
+ public var ChannelMembers_ChannelAdminsTitle: String { return self._s[4391]! }
+ public var VoiceChat_ShareScreen: String { return self._s[4394]! }
+ public var ScheduledMessages_Title: String { return self._s[4395]! }
+ public var ShareFileTip_Title: String { return self._s[4398]! }
+ public var Chat_Gifs_TrendingSectionHeader: String { return self._s[4399]! }
+ public var ChatList_RemoveFolderConfirmation: String { return self._s[4400]! }
public func PUSH_CHAT_MESSAGE_GEOLIVE(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4398]!, self._r[4398]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4401]!, self._r[4401]!, [_1, _2])
}
- public var Conversation_ContextViewStats: String { return self._s[4400]! }
- public var Channel_DiscussionGroup_SearchPlaceholder: String { return self._s[4401]! }
- public var PasscodeSettings_Title: String { return self._s[4402]! }
- public var Channel_AdminLog_SendPolls: String { return self._s[4403]! }
- public var LastSeen_ALongTimeAgo: String { return self._s[4404]! }
+ public var Conversation_ContextViewStats: String { return self._s[4403]! }
+ public var Channel_DiscussionGroup_SearchPlaceholder: String { return self._s[4404]! }
+ public var PasscodeSettings_Title: String { return self._s[4405]! }
+ public var Channel_AdminLog_SendPolls: String { return self._s[4406]! }
+ public var LastSeen_ALongTimeAgo: String { return self._s[4407]! }
public func PUSH_CHANNEL_MESSAGE_GIF(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4405]!, self._r[4405]!, [_1])
+ return formatWithArgumentRanges(self._s[4408]!, self._r[4408]!, [_1])
}
- public var SettingsSearch_Synonyms_Notifications_BadgeIncludeMutedChannels: String { return self._s[4406]! }
- public var ChannelInfo_FakeChannelWarning: String { return self._s[4407]! }
- public var CallFeedback_VideoReasonLowQuality: String { return self._s[4408]! }
- public var Conversation_PinnedPreviousMessage: String { return self._s[4409]! }
- public var SocksProxySetup_AddProxyTitle: String { return self._s[4410]! }
- public var Passport_Identity_AddInternalPassport: String { return self._s[4411]! }
+ public var SettingsSearch_Synonyms_Notifications_BadgeIncludeMutedChannels: String { return self._s[4409]! }
+ public var ChannelInfo_FakeChannelWarning: String { return self._s[4410]! }
+ public var CallFeedback_VideoReasonLowQuality: String { return self._s[4411]! }
+ public var VoiceChat_VideoPreviewShareScreenInfo: String { return self._s[4412]! }
+ public var Conversation_PinnedPreviousMessage: String { return self._s[4413]! }
+ public var SocksProxySetup_AddProxyTitle: String { return self._s[4414]! }
+ public var Passport_Identity_AddInternalPassport: String { return self._s[4415]! }
public func ChatList_RemovedFromFolderTooltip(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4412]!, self._r[4412]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4416]!, self._r[4416]!, [_1, _2])
}
public func Conversation_SetReminder_RemindToday(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4413]!, self._r[4413]!, [_0])
+ return formatWithArgumentRanges(self._s[4417]!, self._r[4417]!, [_0])
}
- public var Passport_Identity_GenderFemale: String { return self._s[4414]! }
- public var Location_ProximityNotification_DistanceKM: String { return self._s[4417]! }
- public var ConvertToSupergroup_HelpTitle: String { return self._s[4418]! }
+ public var Passport_Identity_GenderFemale: String { return self._s[4418]! }
+ public var Location_ProximityNotification_DistanceKM: String { return self._s[4421]! }
+ public var ConvertToSupergroup_HelpTitle: String { return self._s[4422]! }
public func Message_ImportedDateFormat(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4419]!, self._r[4419]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[4423]!, self._r[4423]!, [_1, _2, _3])
}
- public var VoiceChat_Audio: String { return self._s[4420]! }
- public var SharedMedia_TitleAll: String { return self._s[4421]! }
- public var Settings_Context_Logout: String { return self._s[4422]! }
- public var GroupInfo_SetGroupPhotoDelete: String { return self._s[4425]! }
- public var Settings_About_Title: String { return self._s[4426]! }
- public var StickerSettings_ContextHide: String { return self._s[4427]! }
+ public var VoiceChat_Audio: String { return self._s[4424]! }
+ public var SharedMedia_TitleAll: String { return self._s[4425]! }
+ public var Settings_Context_Logout: String { return self._s[4426]! }
+ public var GroupInfo_SetGroupPhotoDelete: String { return self._s[4429]! }
+ public var Settings_About_Title: String { return self._s[4430]! }
+ public var StickerSettings_ContextHide: String { return self._s[4431]! }
public func AutoDownloadSettings_UpTo(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4428]!, self._r[4428]!, [_0])
+ return formatWithArgumentRanges(self._s[4432]!, self._r[4432]!, [_0])
}
public func Conversation_LiveLocationYouAndOther(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4429]!, self._r[4429]!, [_0])
+ return formatWithArgumentRanges(self._s[4433]!, self._r[4433]!, [_0])
}
- public var ChatImport_SelectionConfirmationAlertImportAction: String { return self._s[4431]! }
- public var Common_Cancel: String { return self._s[4432]! }
- public var CallFeedback_Title: String { return self._s[4434]! }
+ public var ChatImport_SelectionConfirmationAlertImportAction: String { return self._s[4435]! }
+ public var Common_Cancel: String { return self._s[4436]! }
+ public var CallFeedback_Title: String { return self._s[4438]! }
public func Notification_PinnedContactMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4435]!, self._r[4435]!, [_0])
+ return formatWithArgumentRanges(self._s[4439]!, self._r[4439]!, [_0])
}
- public var Conversation_StickerAddedToFavorites: String { return self._s[4436]! }
- public var Activity_UploadingVideoMessage: String { return self._s[4438]! }
- public var MediaPicker_Send: String { return self._s[4439]! }
- public var PasscodeSettings_AutoLock_IfAwayFor_1minute: String { return self._s[4440]! }
- public var Conversation_LiveLocationYou: String { return self._s[4441]! }
- public var Notifications_ExceptionsUnmuted: String { return self._s[4442]! }
+ public var Conversation_StickerAddedToFavorites: String { return self._s[4440]! }
+ public var Activity_UploadingVideoMessage: String { return self._s[4442]! }
+ public var MediaPicker_Send: String { return self._s[4443]! }
+ public var PasscodeSettings_AutoLock_IfAwayFor_1minute: String { return self._s[4444]! }
+ public var Conversation_LiveLocationYou: String { return self._s[4445]! }
+ public var Notifications_ExceptionsUnmuted: String { return self._s[4446]! }
public func Channel_AdminLog_MessageGroupPreHistoryHidden(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4444]!, self._r[4444]!, [_0])
+ return formatWithArgumentRanges(self._s[4448]!, self._r[4448]!, [_0])
}
public func PUSH_CHAT_ADD_YOU(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4445]!, self._r[4445]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4449]!, self._r[4449]!, [_1, _2])
}
- public var Checkout_PaymentLiabilityAlert: String { return self._s[4446]! }
- public var Conversation_ViewBackground: String { return self._s[4447]! }
- public var ChatSettings_PrivateChats: String { return self._s[4450]! }
- public var Conversation_ErrorInaccessibleMessage: String { return self._s[4451]! }
- public var BroadcastGroups_LimitAlert_LearnMore: String { return self._s[4452]! }
- public var Appearance_ThemeNight: String { return self._s[4453]! }
- public var Common_Search: String { return self._s[4454]! }
- public var TwoStepAuth_ReEnterPasswordTitle: String { return self._s[4455]! }
- public var ChangePhoneNumberNumber_Help: String { return self._s[4457]! }
- public var InviteLink_QRCode_Share: String { return self._s[4458]! }
- public var Stickers_SuggestAdded: String { return self._s[4460]! }
+ public var Checkout_PaymentLiabilityAlert: String { return self._s[4450]! }
+ public var Conversation_ViewBackground: String { return self._s[4451]! }
+ public var ChatSettings_PrivateChats: String { return self._s[4454]! }
+ public var Conversation_ErrorInaccessibleMessage: String { return self._s[4455]! }
+ public var BroadcastGroups_LimitAlert_LearnMore: String { return self._s[4456]! }
+ public var Appearance_ThemeNight: String { return self._s[4457]! }
+ public var Common_Search: String { return self._s[4458]! }
+ public var TwoStepAuth_ReEnterPasswordTitle: String { return self._s[4459]! }
+ public var ChangePhoneNumberNumber_Help: String { return self._s[4461]! }
+ public var InviteLink_QRCode_Share: String { return self._s[4462]! }
+ public var Stickers_SuggestAdded: String { return self._s[4464]! }
public func VoiceChat_VideoParticipantsLimitExceeded(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4462]!, self._r[4462]!, [_0])
+ return formatWithArgumentRanges(self._s[4466]!, self._r[4466]!, [_0])
}
- public var Conversation_DiscardVoiceMessageDescription: String { return self._s[4464]! }
- public var Widget_UpdatedTodayAt: String { return self._s[4465]! }
- public var NetworkUsageSettings_Cellular: String { return self._s[4466]! }
- public var CheckoutInfo_Title: String { return self._s[4467]! }
- public var Conversation_ShareBotLocationConfirmationTitle: String { return self._s[4468]! }
- public var Channel_BotDoesntSupportGroups: String { return self._s[4469]! }
+ public var Conversation_DiscardVoiceMessageDescription: String { return self._s[4468]! }
+ public var Widget_UpdatedTodayAt: String { return self._s[4469]! }
+ public var NetworkUsageSettings_Cellular: String { return self._s[4470]! }
+ public var CheckoutInfo_Title: String { return self._s[4471]! }
+ public var Conversation_ShareBotLocationConfirmationTitle: String { return self._s[4472]! }
+ public var Channel_BotDoesntSupportGroups: String { return self._s[4473]! }
public func DialogList_SingleRecordingAudioSuffix(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4470]!, self._r[4470]!, [_0])
+ return formatWithArgumentRanges(self._s[4474]!, self._r[4474]!, [_0])
}
- public var MaskStickerSettings_Info: String { return self._s[4472]! }
- public var GroupRemoved_DeleteUser: String { return self._s[4474]! }
- public var Contacts_ShareTelegram: String { return self._s[4475]! }
- public var Group_UpgradeNoticeText1: String { return self._s[4476]! }
+ public var MaskStickerSettings_Info: String { return self._s[4476]! }
+ public var GroupRemoved_DeleteUser: String { return self._s[4478]! }
+ public var Contacts_ShareTelegram: String { return self._s[4479]! }
+ public var Group_UpgradeNoticeText1: String { return self._s[4480]! }
public func PUSH_PHONE_CALL_REQUEST(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4477]!, self._r[4477]!, [_1])
+ return formatWithArgumentRanges(self._s[4481]!, self._r[4481]!, [_1])
}
- public var PrivacyLastSeenSettings_Title: String { return self._s[4478]! }
- public var SettingsSearch_Synonyms_Support: String { return self._s[4482]! }
- public var PhotoEditor_TintTool: String { return self._s[4483]! }
- public var ChatImportActivity_OpenApp: String { return self._s[4485]! }
- public var GroupPermission_NoSendPolls: String { return self._s[4486]! }
- public var NotificationsSound_None: String { return self._s[4487]! }
+ public var PrivacyLastSeenSettings_Title: String { return self._s[4482]! }
+ public var SettingsSearch_Synonyms_Support: String { return self._s[4486]! }
+ public var PhotoEditor_TintTool: String { return self._s[4487]! }
+ public var ChatImportActivity_OpenApp: String { return self._s[4489]! }
+ public var GroupPermission_NoSendPolls: String { return self._s[4490]! }
+ public var NotificationsSound_None: String { return self._s[4491]! }
public func LOCAL_CHANNEL_MESSAGE_FWDS(_ _1: String, _ _2: Int) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4488]!, self._r[4488]!, [_1, "\(_2)"])
+ return formatWithArgumentRanges(self._s[4492]!, self._r[4492]!, [_1, "\(_2)"])
}
- public var CheckoutInfo_ShippingInfoCityPlaceholder: String { return self._s[4491]! }
+ public var CheckoutInfo_ShippingInfoCityPlaceholder: String { return self._s[4495]! }
public func Conversation_AutoremoveTimerSetChannel(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4493]!, self._r[4493]!, [_1])
+ return formatWithArgumentRanges(self._s[4497]!, self._r[4497]!, [_1])
}
- public var ExplicitContent_AlertChannel: String { return self._s[4494]! }
- public var Conversation_ClousStorageInfo_Description1: String { return self._s[4495]! }
- public var Contacts_SortedByPresence: String { return self._s[4496]! }
- public var WallpaperSearch_ColorGray: String { return self._s[4497]! }
- public var Channel_AdminLogFilter_EventsNewSubscribers: String { return self._s[4498]! }
- public var Conversation_ReportSpam: String { return self._s[4499]! }
- public var ChatList_Search_NoResultsFilter: String { return self._s[4502]! }
- public var WallpaperSearch_ColorBlack: String { return self._s[4503]! }
- public var ArchivedChats_IntroTitle3: String { return self._s[4504]! }
- public var InviteLink_DeleteAllRevokedLinksAlert_Action: String { return self._s[4505]! }
+ public var ExplicitContent_AlertChannel: String { return self._s[4498]! }
+ public var Conversation_ClousStorageInfo_Description1: String { return self._s[4499]! }
+ public var Contacts_SortedByPresence: String { return self._s[4500]! }
+ public var WallpaperSearch_ColorGray: String { return self._s[4501]! }
+ public var Channel_AdminLogFilter_EventsNewSubscribers: String { return self._s[4502]! }
+ public var Conversation_ReportSpam: String { return self._s[4503]! }
+ public var ChatList_Search_NoResultsFilter: String { return self._s[4506]! }
+ public var WallpaperSearch_ColorBlack: String { return self._s[4507]! }
+ public var ArchivedChats_IntroTitle3: String { return self._s[4508]! }
+ public var InviteLink_DeleteAllRevokedLinksAlert_Action: String { return self._s[4509]! }
public func VoiceChat_PeerJoinedText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4506]!, self._r[4506]!, [_0])
+ return formatWithArgumentRanges(self._s[4510]!, self._r[4510]!, [_0])
}
- public var Conversation_DefaultRestrictedText: String { return self._s[4507]! }
- public var Settings_Devices: String { return self._s[4508]! }
- public var Call_AudioRouteSpeaker: String { return self._s[4509]! }
- public var GroupInfo_InviteLink_CopyLink: String { return self._s[4510]! }
- public var VoiceChat_StartsIn: String { return self._s[4511]! }
- public var VoiceChat_CreateNewVoiceChatSchedule: String { return self._s[4512]! }
- public var VoiceChat_EditDescriptionTitle: String { return self._s[4514]! }
- public var Passport_Address_Country: String { return self._s[4515]! }
- public var Cache_MaximumCacheSize: String { return self._s[4516]! }
- public var Chat_PanelHidePinnedMessages: String { return self._s[4517]! }
- public var Notifications_Badge_IncludePublicGroups: String { return self._s[4518]! }
- public var ChatSettings_AutoDownloadUsingWiFi: String { return self._s[4520]! }
- public var Login_TermsOfServiceLabel: String { return self._s[4521]! }
- public var Calls_NoMissedCallsPlacehoder: String { return self._s[4522]! }
- public var SocksProxySetup_RequiredCredentials: String { return self._s[4523]! }
- public var VoiceOver_MessageContextOpenMessageMenu: String { return self._s[4524]! }
- public var AutoNightTheme_ScheduledFrom: String { return self._s[4525]! }
- public var ChatSettings_AutoDownloadDocuments: String { return self._s[4526]! }
- public var ConvertToSupergroup_Note: String { return self._s[4528]! }
- public var Settings_SetNewProfilePhotoOrVideo: String { return self._s[4529]! }
- public var PrivacySettings_PasscodeAndTouchId: String { return self._s[4530]! }
- public var Common_More: String { return self._s[4531]! }
- public var ShareMenu_SelectChats: String { return self._s[4533]! }
+ public var Conversation_DefaultRestrictedText: String { return self._s[4511]! }
+ public var Settings_Devices: String { return self._s[4512]! }
+ public var Call_AudioRouteSpeaker: String { return self._s[4513]! }
+ public var GroupInfo_InviteLink_CopyLink: String { return self._s[4514]! }
+ public var VoiceChat_StartsIn: String { return self._s[4515]! }
+ public var VoiceChat_CreateNewVoiceChatSchedule: String { return self._s[4516]! }
+ public var VoiceChat_EditDescriptionTitle: String { return self._s[4518]! }
+ public var Passport_Address_Country: String { return self._s[4519]! }
+ public var Cache_MaximumCacheSize: String { return self._s[4520]! }
+ public var Chat_PanelHidePinnedMessages: String { return self._s[4521]! }
+ public var Notifications_Badge_IncludePublicGroups: String { return self._s[4522]! }
+ public var ChatSettings_AutoDownloadUsingWiFi: String { return self._s[4524]! }
+ public var Login_TermsOfServiceLabel: String { return self._s[4525]! }
+ public var Calls_NoMissedCallsPlacehoder: String { return self._s[4526]! }
+ public var SocksProxySetup_RequiredCredentials: String { return self._s[4527]! }
+ public var VoiceOver_MessageContextOpenMessageMenu: String { return self._s[4528]! }
+ public var AutoNightTheme_ScheduledFrom: String { return self._s[4529]! }
+ public var ChatSettings_AutoDownloadDocuments: String { return self._s[4530]! }
+ public var ConvertToSupergroup_Note: String { return self._s[4532]! }
+ public var Settings_SetNewProfilePhotoOrVideo: String { return self._s[4533]! }
+ public var PrivacySettings_PasscodeAndTouchId: String { return self._s[4534]! }
+ public var Common_More: String { return self._s[4535]! }
+ public var ShareMenu_SelectChats: String { return self._s[4537]! }
public func Conversation_ScheduleMessage_SendToday(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4534]!, self._r[4534]!, [_0])
+ return formatWithArgumentRanges(self._s[4538]!, self._r[4538]!, [_0])
}
public func Channel_AdminLog_MessageRemovedGroupStickerPack(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4535]!, self._r[4535]!, [_0])
- }
- public var Contacts_PermissionsKeepDisabled: String { return self._s[4537]! }
- public var VoiceChat_EditBioText: String { return self._s[4538]! }
- public func Call_ParticipantVersionOutdatedError(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[4539]!, self._r[4539]!, [_0])
}
- public var WatchRemote_AlertOpen: String { return self._s[4540]! }
+ public var Contacts_PermissionsKeepDisabled: String { return self._s[4541]! }
+ public var VoiceChat_EditBioText: String { return self._s[4542]! }
+ public func Call_ParticipantVersionOutdatedError(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[4543]!, self._r[4543]!, [_0])
+ }
+ public var WatchRemote_AlertOpen: String { return self._s[4544]! }
public func PUSH_CHAT_ADD_MEMBER(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4541]!, self._r[4541]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[4545]!, self._r[4545]!, [_1, _2, _3])
}
- public var Channel_Members_AddMembersHelp: String { return self._s[4542]! }
- public var Shortcut_SwitchAccount: String { return self._s[4543]! }
- public var Map_LiveLocationFor8Hours: String { return self._s[4544]! }
+ public var Channel_Members_AddMembersHelp: String { return self._s[4546]! }
+ public var Shortcut_SwitchAccount: String { return self._s[4547]! }
+ public var Map_LiveLocationFor8Hours: String { return self._s[4548]! }
public func AutoNightTheme_AutomaticHelp(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4545]!, self._r[4545]!, [_0])
+ return formatWithArgumentRanges(self._s[4549]!, self._r[4549]!, [_0])
}
- public var Compose_NewGroupTitle: String { return self._s[4546]! }
- public var DialogList_You: String { return self._s[4547]! }
- public var Call_VoiceOver_VoiceCallOutgoing: String { return self._s[4548]! }
- public var ReportPeer_ReasonViolence: String { return self._s[4549]! }
+ public var Compose_NewGroupTitle: String { return self._s[4550]! }
+ public var DialogList_You: String { return self._s[4551]! }
+ public var Call_VoiceOver_VoiceCallOutgoing: String { return self._s[4552]! }
+ public var ReportPeer_ReasonViolence: String { return self._s[4553]! }
public func PUSH_CHANNEL_MESSAGE_STICKER(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4550]!, self._r[4550]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4554]!, self._r[4554]!, [_1, _2])
}
- public var VoiceChat_Reconnecting: String { return self._s[4552]! }
- public var KeyCommand_ScrollDown: String { return self._s[4555]! }
- public var ChatSettings_DownloadInBackground: String { return self._s[4556]! }
- public var Wallpaper_ResetWallpapers: String { return self._s[4557]! }
- public var Channel_BanList_RestrictedTitle: String { return self._s[4558]! }
- public var ArchivedChats_IntroText3: String { return self._s[4559]! }
- public var HashtagSearch_AllChats: String { return self._s[4561]! }
- public var VoiceChat_EndVoiceChat: String { return self._s[4562]! }
- public var Conversation_MessageCopied: String { return self._s[4564]! }
- public var Channel_Info_BlackList: String { return self._s[4565]! }
- public var Contacts_SearchUsersAndGroupsLabel: String { return self._s[4566]! }
- public var PrivacyPhoneNumberSettings_DiscoveryHeader: String { return self._s[4567]! }
- public var Paint_Neon: String { return self._s[4569]! }
- public var SettingsSearch_Synonyms_AppLanguage: String { return self._s[4570]! }
- public var AutoDownloadSettings_AutoDownload: String { return self._s[4571]! }
- public var ImportStickerPack_CreateNewStickerSet: String { return self._s[4572]! }
+ public var VoiceChat_Reconnecting: String { return self._s[4556]! }
+ public var KeyCommand_ScrollDown: String { return self._s[4559]! }
+ public var ChatSettings_DownloadInBackground: String { return self._s[4560]! }
+ public var Wallpaper_ResetWallpapers: String { return self._s[4561]! }
+ public var Channel_BanList_RestrictedTitle: String { return self._s[4562]! }
+ public var ArchivedChats_IntroText3: String { return self._s[4563]! }
+ public var HashtagSearch_AllChats: String { return self._s[4565]! }
+ public var VoiceChat_EndVoiceChat: String { return self._s[4566]! }
+ public var Conversation_MessageCopied: String { return self._s[4568]! }
+ public var Channel_Info_BlackList: String { return self._s[4569]! }
+ public var Contacts_SearchUsersAndGroupsLabel: String { return self._s[4570]! }
+ public var PrivacyPhoneNumberSettings_DiscoveryHeader: String { return self._s[4571]! }
+ public var Paint_Neon: String { return self._s[4573]! }
+ public var SettingsSearch_Synonyms_AppLanguage: String { return self._s[4574]! }
+ public var AutoDownloadSettings_AutoDownload: String { return self._s[4575]! }
+ public var ImportStickerPack_CreateNewStickerSet: String { return self._s[4576]! }
public func Notification_PinnedVideoMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4574]!, self._r[4574]!, [_0])
+ return formatWithArgumentRanges(self._s[4578]!, self._r[4578]!, [_0])
}
- public var Map_StopLiveLocation: String { return self._s[4575]! }
- public var SettingsSearch_Synonyms_Data_SaveEditedPhotos: String { return self._s[4576]! }
- public var Channel_Username_InvalidCharacters: String { return self._s[4577]! }
- public var InstantPage_Reference: String { return self._s[4579]! }
- public var Group_Members_AddMembers: String { return self._s[4581]! }
+ public var Map_StopLiveLocation: String { return self._s[4579]! }
+ public var SettingsSearch_Synonyms_Data_SaveEditedPhotos: String { return self._s[4580]! }
+ public var Channel_Username_InvalidCharacters: String { return self._s[4581]! }
+ public var InstantPage_Reference: String { return self._s[4583]! }
+ public var Group_Members_AddMembers: String { return self._s[4585]! }
public func Conversation_ScheduledVoiceChatStartsOn(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4582]!, self._r[4582]!, [_0])
+ return formatWithArgumentRanges(self._s[4586]!, self._r[4586]!, [_0])
}
- public var ChatList_HideAction: String { return self._s[4583]! }
- public var Conversation_FileICloudDrive: String { return self._s[4585]! }
+ public var ChatList_HideAction: String { return self._s[4587]! }
+ public var Conversation_FileICloudDrive: String { return self._s[4589]! }
public func PUSH_PINNED_GEOLIVE(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4586]!, self._r[4586]!, [_1])
+ return formatWithArgumentRanges(self._s[4590]!, self._r[4590]!, [_1])
}
- public var Passport_PasswordReset: String { return self._s[4588]! }
- public var ChatList_Context_UnhideArchive: String { return self._s[4590]! }
- public var ConvertToSupergroup_HelpText: String { return self._s[4591]! }
- public var Calls_AddTab: String { return self._s[4592]! }
- public var TwoStepAuth_ConfirmEmailResendCode: String { return self._s[4594]! }
- public var SettingsSearch_Synonyms_Stickers_SuggestStickers: String { return self._s[4595]! }
- public var Privacy_GroupsAndChannels: String { return self._s[4598]! }
- public var Conversation_UsernameCopied: String { return self._s[4599]! }
- public var AutoNightTheme_Disabled: String { return self._s[4600]! }
- public var CreatePoll_MultipleChoice: String { return self._s[4601]! }
+ public var Passport_PasswordReset: String { return self._s[4592]! }
+ public var ChatList_Context_UnhideArchive: String { return self._s[4594]! }
+ public var ConvertToSupergroup_HelpText: String { return self._s[4595]! }
+ public var Calls_AddTab: String { return self._s[4596]! }
+ public var TwoStepAuth_ConfirmEmailResendCode: String { return self._s[4598]! }
+ public var SettingsSearch_Synonyms_Stickers_SuggestStickers: String { return self._s[4599]! }
+ public var Privacy_GroupsAndChannels: String { return self._s[4602]! }
+ public var Conversation_UsernameCopied: String { return self._s[4603]! }
+ public var AutoNightTheme_Disabled: String { return self._s[4604]! }
+ public var CreatePoll_MultipleChoice: String { return self._s[4605]! }
public func PINNED_INVOICE(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4602]!, self._r[4602]!, [_1])
+ return formatWithArgumentRanges(self._s[4606]!, self._r[4606]!, [_1])
}
- public var Watch_Bot_Restart: String { return self._s[4604]! }
+ public var Watch_Bot_Restart: String { return self._s[4608]! }
public func Conversation_Kilobytes(_ _0: Int) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4605]!, self._r[4605]!, ["\(_0)"])
+ return formatWithArgumentRanges(self._s[4609]!, self._r[4609]!, ["\(_0)"])
}
- public var GroupInfo_ScamGroupWarning: String { return self._s[4607]! }
- public var Conversation_EditingMessagePanelMedia: String { return self._s[4608]! }
- public var Appearance_PreviewIncomingText: String { return self._s[4609]! }
- public var ChatSettings_WidgetSettings: String { return self._s[4610]! }
- public var Notifications_ChannelNotificationsExceptionsHelp: String { return self._s[4611]! }
- public var ChatList_UndoArchiveRevealedTitle: String { return self._s[4613]! }
- public var Stats_GroupOverview: String { return self._s[4615]! }
- public var ScheduledMessages_EditTime: String { return self._s[4618]! }
- public var Month_GenFebruary: String { return self._s[4619]! }
- public var ChatList_AutoarchiveSuggestion_OpenSettings: String { return self._s[4620]! }
- public var Stickers_ClearRecent: String { return self._s[4621]! }
- public var InviteLink_Create_UsersLimitNumberOfUsersUnlimited: String { return self._s[4622]! }
- public var TwoStepAuth_EnterPasswordPassword: String { return self._s[4623]! }
- public var Stats_Message_PublicShares: String { return self._s[4624]! }
+ public var GroupInfo_ScamGroupWarning: String { return self._s[4611]! }
+ public var Conversation_EditingMessagePanelMedia: String { return self._s[4612]! }
+ public var Appearance_PreviewIncomingText: String { return self._s[4613]! }
+ public var ChatSettings_WidgetSettings: String { return self._s[4614]! }
+ public var Notifications_ChannelNotificationsExceptionsHelp: String { return self._s[4615]! }
+ public var ChatList_UndoArchiveRevealedTitle: String { return self._s[4617]! }
+ public var Stats_GroupOverview: String { return self._s[4619]! }
+ public var ScheduledMessages_EditTime: String { return self._s[4622]! }
+ public var Month_GenFebruary: String { return self._s[4623]! }
+ public var ChatList_AutoarchiveSuggestion_OpenSettings: String { return self._s[4624]! }
+ public var Stickers_ClearRecent: String { return self._s[4625]! }
+ public var InviteLink_Create_UsersLimitNumberOfUsersUnlimited: String { return self._s[4626]! }
+ public var TwoStepAuth_EnterPasswordPassword: String { return self._s[4627]! }
+ public var Stats_Message_PublicShares: String { return self._s[4628]! }
public func Checkout_PayPrice(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4625]!, self._r[4625]!, [_0])
+ return formatWithArgumentRanges(self._s[4629]!, self._r[4629]!, [_0])
}
- public var Login_TermsOfServiceSignupDecline: String { return self._s[4626]! }
- public var CheckoutInfo_ErrorCityInvalid: String { return self._s[4627]! }
- public var VoiceOver_Chat_PlayHint: String { return self._s[4628]! }
- public var ChatAdmins_AllMembersAreAdminsOffHelp: String { return self._s[4629]! }
- public var CheckoutInfo_ShippingInfoTitle: String { return self._s[4631]! }
- public var CreatePoll_Create: String { return self._s[4632]! }
- public var ChatList_Search_FilterLinks: String { return self._s[4633]! }
- public var Your_cards_number_is_invalid: String { return self._s[4634]! }
- public var Month_ShortApril: String { return self._s[4635]! }
- public var SocksProxySetup_UseForCalls: String { return self._s[4636]! }
- public var Conversation_EditingCaptionPanelTitle: String { return self._s[4637]! }
- public var SocksProxySetup_Status: String { return self._s[4638]! }
- public var VoiceChat_UnmuteForMe: String { return self._s[4639]! }
- public var ChannelInfo_DeleteGroupConfirmation: String { return self._s[4640]! }
- public var ChatListFolder_CategoryBots: String { return self._s[4641]! }
- public var Passport_FieldIdentitySelfieHelp: String { return self._s[4643]! }
- public var GroupInfo_BroadcastListNamePlaceholder: String { return self._s[4644]! }
- public var Chat_PinnedListPreview_UnpinAllMessages: String { return self._s[4645]! }
- public var Wallpaper_ResetWallpapersInfo: String { return self._s[4646]! }
- public var Conversation_TitleUnmute: String { return self._s[4647]! }
- public var Group_Setup_TypeHeader: String { return self._s[4648]! }
+ public var Login_TermsOfServiceSignupDecline: String { return self._s[4630]! }
+ public var CheckoutInfo_ErrorCityInvalid: String { return self._s[4631]! }
+ public var VoiceOver_Chat_PlayHint: String { return self._s[4632]! }
+ public var ChatAdmins_AllMembersAreAdminsOffHelp: String { return self._s[4633]! }
+ public var CheckoutInfo_ShippingInfoTitle: String { return self._s[4635]! }
+ public var CreatePoll_Create: String { return self._s[4636]! }
+ public var ChatList_Search_FilterLinks: String { return self._s[4637]! }
+ public var Your_cards_number_is_invalid: String { return self._s[4638]! }
+ public var Month_ShortApril: String { return self._s[4639]! }
+ public var SocksProxySetup_UseForCalls: String { return self._s[4640]! }
+ public var Conversation_EditingCaptionPanelTitle: String { return self._s[4641]! }
+ public var SocksProxySetup_Status: String { return self._s[4642]! }
+ public var VoiceChat_UnmuteForMe: String { return self._s[4643]! }
+ public var ChannelInfo_DeleteGroupConfirmation: String { return self._s[4644]! }
+ public var ChatListFolder_CategoryBots: String { return self._s[4645]! }
+ public var Passport_FieldIdentitySelfieHelp: String { return self._s[4647]! }
+ public var GroupInfo_BroadcastListNamePlaceholder: String { return self._s[4648]! }
+ public var Chat_PinnedListPreview_UnpinAllMessages: String { return self._s[4649]! }
+ public var Wallpaper_ResetWallpapersInfo: String { return self._s[4650]! }
+ public var Conversation_TitleUnmute: String { return self._s[4651]! }
+ public var Group_Setup_TypeHeader: String { return self._s[4652]! }
public func Conversation_ForwardTooltip_ManyChats_One(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4649]!, self._r[4649]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[4653]!, self._r[4653]!, [_0, _1])
}
- public var Stats_ViewsPerPost: String { return self._s[4650]! }
- public var CheckoutInfo_ShippingInfoCountry: String { return self._s[4651]! }
- public var Passport_Identity_TranslationHelp: String { return self._s[4652]! }
+ public var Stats_ViewsPerPost: String { return self._s[4654]! }
+ public var CheckoutInfo_ShippingInfoCountry: String { return self._s[4655]! }
+ public var Passport_Identity_TranslationHelp: String { return self._s[4656]! }
public func PUSH_CHANNEL_MESSAGE_FWD(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4653]!, self._r[4653]!, [_1])
+ return formatWithArgumentRanges(self._s[4657]!, self._r[4657]!, [_1])
}
- public var GroupInfo_Administrators_Title: String { return self._s[4654]! }
+ public var GroupInfo_Administrators_Title: String { return self._s[4658]! }
public func Channel_AdminLog_MessageRankName(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4655]!, self._r[4655]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4659]!, self._r[4659]!, [_1, _2])
}
public func PUSH_CHAT_MESSAGE_POLL(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4656]!, self._r[4656]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[4660]!, self._r[4660]!, [_1, _2, _3])
}
- public var CheckoutInfo_ShippingInfoState: String { return self._s[4657]! }
- public var Passport_Language_my: String { return self._s[4659]! }
- public var PrivacyLastSeenSettings_AlwaysShareWith_Title: String { return self._s[4660]! }
- public var VoiceChat_Unpin: String { return self._s[4661]! }
- public var Map_PlacesNearby: String { return self._s[4662]! }
- public var Channel_About_Help: String { return self._s[4663]! }
- public var LogoutOptions_AddAccountTitle: String { return self._s[4664]! }
- public var ChatSettings_AutomaticAudioDownload: String { return self._s[4665]! }
- public var Channel_Username_Title: String { return self._s[4666]! }
- public var Activity_RecordingVideoMessage: String { return self._s[4667]! }
+ public var CheckoutInfo_ShippingInfoState: String { return self._s[4661]! }
+ public var Passport_Language_my: String { return self._s[4663]! }
+ public var PrivacyLastSeenSettings_AlwaysShareWith_Title: String { return self._s[4664]! }
+ public var VoiceChat_Unpin: String { return self._s[4665]! }
+ public var Map_PlacesNearby: String { return self._s[4666]! }
+ public var Channel_About_Help: String { return self._s[4667]! }
+ public var LogoutOptions_AddAccountTitle: String { return self._s[4668]! }
+ public var ChatSettings_AutomaticAudioDownload: String { return self._s[4669]! }
+ public var Channel_Username_Title: String { return self._s[4670]! }
+ public var Activity_RecordingVideoMessage: String { return self._s[4671]! }
public func StickerPackActionInfo_RemovedText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4668]!, self._r[4668]!, [_0])
+ return formatWithArgumentRanges(self._s[4672]!, self._r[4672]!, [_0])
}
- public var CheckoutInfo_ShippingInfoCity: String { return self._s[4669]! }
- public var Passport_DiscardMessageDescription: String { return self._s[4670]! }
- public var Conversation_LinkDialogOpen: String { return self._s[4671]! }
- public var ChatList_Context_HideArchive: String { return self._s[4672]! }
+ public var CheckoutInfo_ShippingInfoCity: String { return self._s[4673]! }
+ public var Passport_DiscardMessageDescription: String { return self._s[4674]! }
+ public var Conversation_LinkDialogOpen: String { return self._s[4675]! }
+ public var ChatList_Context_HideArchive: String { return self._s[4676]! }
public func Message_AuthorPinnedGame(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4673]!, self._r[4673]!, [_0])
+ return formatWithArgumentRanges(self._s[4677]!, self._r[4677]!, [_0])
}
- public var Privacy_GroupsAndChannels_CustomShareHelp: String { return self._s[4674]! }
- public var Conversation_Admin: String { return self._s[4675]! }
- public var DialogList_TabTitle: String { return self._s[4676]! }
+ public var Privacy_GroupsAndChannels_CustomShareHelp: String { return self._s[4678]! }
+ public var Conversation_Admin: String { return self._s[4679]! }
+ public var DialogList_TabTitle: String { return self._s[4680]! }
public func PUSH_CHAT_ALBUM(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4677]!, self._r[4677]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4681]!, self._r[4681]!, [_1, _2])
}
- public var Notifications_PermissionsUnreachableText: String { return self._s[4678]! }
- public var Passport_Identity_GenderMale: String { return self._s[4680]! }
+ public var Notifications_PermissionsUnreachableText: String { return self._s[4682]! }
+ public var Passport_Identity_GenderMale: String { return self._s[4684]! }
public func VoiceChat_EditTitleSuccess(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4682]!, self._r[4682]!, [_0])
+ return formatWithArgumentRanges(self._s[4686]!, self._r[4686]!, [_0])
}
- public var SettingsSearch_Synonyms_Privacy_BlockedUsers: String { return self._s[4683]! }
- public var PhoneNumberHelp_Alert: String { return self._s[4684]! }
- public var EnterPasscode_EnterNewPasscodeChange: String { return self._s[4685]! }
- public var Notifications_InAppNotifications: String { return self._s[4686]! }
+ public var SettingsSearch_Synonyms_Privacy_BlockedUsers: String { return self._s[4687]! }
+ public var PhoneNumberHelp_Alert: String { return self._s[4688]! }
+ public var EnterPasscode_EnterNewPasscodeChange: String { return self._s[4689]! }
+ public var Notifications_InAppNotifications: String { return self._s[4690]! }
public func Update_AppVersion(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4687]!, self._r[4687]!, [_0])
+ return formatWithArgumentRanges(self._s[4691]!, self._r[4691]!, [_0])
}
- public var Notification_VideoCallOutgoing: String { return self._s[4688]! }
- public var Login_InvalidCodeError: String { return self._s[4689]! }
- public var Conversation_PrivateChannelTimeLimitedAlertJoin: String { return self._s[4690]! }
+ public var Notification_VideoCallOutgoing: String { return self._s[4692]! }
+ public var Login_InvalidCodeError: String { return self._s[4693]! }
+ public var Conversation_PrivateChannelTimeLimitedAlertJoin: String { return self._s[4694]! }
public func LastSeen_TodayAt(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4692]!, self._r[4692]!, [_0])
+ return formatWithArgumentRanges(self._s[4696]!, self._r[4696]!, [_0])
}
- public var Conversation_InputTextCaptionPlaceholder: String { return self._s[4693]! }
- public var ReportPeer_Report: String { return self._s[4694]! }
- public var Camera_FlashOff: String { return self._s[4697]! }
- public var Conversation_InputTextBroadcastPlaceholder: String { return self._s[4700]! }
+ public var Conversation_InputTextCaptionPlaceholder: String { return self._s[4697]! }
+ public var ReportPeer_Report: String { return self._s[4698]! }
+ public var Camera_FlashOff: String { return self._s[4701]! }
+ public var Conversation_InputTextBroadcastPlaceholder: String { return self._s[4704]! }
public func Notification_VoiceChatScheduledTomorrow(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4701]!, self._r[4701]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4705]!, self._r[4705]!, [_1, _2])
}
- public var PrivacyPolicy_DeclineTitle: String { return self._s[4704]! }
- public var SettingsSearch_Synonyms_Privacy_PasscodeAndTouchId: String { return self._s[4705]! }
- public var Passport_FieldEmail: String { return self._s[4706]! }
+ public var PrivacyPolicy_DeclineTitle: String { return self._s[4708]! }
+ public var SettingsSearch_Synonyms_Privacy_PasscodeAndTouchId: String { return self._s[4709]! }
+ public var Passport_FieldEmail: String { return self._s[4710]! }
public func Channel_AdminLog_MessageKickedName(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4707]!, self._r[4707]!, [_1])
+ return formatWithArgumentRanges(self._s[4711]!, self._r[4711]!, [_1])
}
- public var Notifications_ExceptionsResetToDefaults: String { return self._s[4708]! }
- public var PeerInfo_PaneVoiceAndVideo: String { return self._s[4709]! }
- public var Group_OwnershipTransfer_Title: String { return self._s[4710]! }
- public var Conversation_DefaultRestrictedInline: String { return self._s[4711]! }
- public var Login_PhoneNumberHelp: String { return self._s[4713]! }
- public var Channel_AdminLogFilter_EventsNewMembers: String { return self._s[4714]! }
- public var Conversation_PinnedQuiz: String { return self._s[4715]! }
- public var CreateGroup_SoftUserLimitAlert: String { return self._s[4716]! }
- public var Login_PhoneNumberAlreadyAuthorizedSwitch: String { return self._s[4717]! }
- public var Group_MessagePhotoUpdated: String { return self._s[4718]! }
- public var LoginPassword_PasswordPlaceholder: String { return self._s[4719]! }
- public var BroadcastGroups_ConfirmationAlert_Text: String { return self._s[4720]! }
- public var Passport_Identity_Translations: String { return self._s[4722]! }
- public var ChatAdmins_AllMembersAreAdmins: String { return self._s[4723]! }
- public var ChannelInfo_DeleteChannel: String { return self._s[4725]! }
- public var PasscodeSettings_HelpBottom: String { return self._s[4726]! }
- public var Channel_Members_AddMembers: String { return self._s[4727]! }
- public var AutoDownloadSettings_LastDelimeter: String { return self._s[4728]! }
- public var Notification_Exceptions_DeleteAllConfirmation: String { return self._s[4730]! }
- public var Conversation_HoldForAudio: String { return self._s[4731]! }
- public var Media_LimitedAccessChangeSettings: String { return self._s[4733]! }
- public var Watch_LastSeen_Lately: String { return self._s[4734]! }
- public var ChatList_Context_MarkAsRead: String { return self._s[4735]! }
- public var Conversation_PinnedMessage: String { return self._s[4736]! }
- public var SettingsSearch_Synonyms_Appearance_ColorTheme: String { return self._s[4737]! }
- public var VoiceChat_StopRecordingStop: String { return self._s[4739]! }
- public var Passport_UpdateRequiredError: String { return self._s[4740]! }
- public var PrivacySettings_Passcode: String { return self._s[4741]! }
+ public var Notifications_ExceptionsResetToDefaults: String { return self._s[4712]! }
+ public var PeerInfo_PaneVoiceAndVideo: String { return self._s[4713]! }
+ public var Group_OwnershipTransfer_Title: String { return self._s[4714]! }
+ public var Conversation_DefaultRestrictedInline: String { return self._s[4715]! }
+ public var Login_PhoneNumberHelp: String { return self._s[4717]! }
+ public var Channel_AdminLogFilter_EventsNewMembers: String { return self._s[4718]! }
+ public var Conversation_PinnedQuiz: String { return self._s[4719]! }
+ public var CreateGroup_SoftUserLimitAlert: String { return self._s[4720]! }
+ public var Login_PhoneNumberAlreadyAuthorizedSwitch: String { return self._s[4721]! }
+ public var Group_MessagePhotoUpdated: String { return self._s[4722]! }
+ public var LoginPassword_PasswordPlaceholder: String { return self._s[4723]! }
+ public var BroadcastGroups_ConfirmationAlert_Text: String { return self._s[4724]! }
+ public var Passport_Identity_Translations: String { return self._s[4726]! }
+ public var ChatAdmins_AllMembersAreAdmins: String { return self._s[4727]! }
+ public var ChannelInfo_DeleteChannel: String { return self._s[4729]! }
+ public var PasscodeSettings_HelpBottom: String { return self._s[4730]! }
+ public var Channel_Members_AddMembers: String { return self._s[4731]! }
+ public var AutoDownloadSettings_LastDelimeter: String { return self._s[4732]! }
+ public var Notification_Exceptions_DeleteAllConfirmation: String { return self._s[4734]! }
+ public var Conversation_HoldForAudio: String { return self._s[4735]! }
+ public var Media_LimitedAccessChangeSettings: String { return self._s[4737]! }
+ public var Watch_LastSeen_Lately: String { return self._s[4738]! }
+ public var ChatList_Context_MarkAsRead: String { return self._s[4739]! }
+ public var Conversation_PinnedMessage: String { return self._s[4740]! }
+ public var SettingsSearch_Synonyms_Appearance_ColorTheme: String { return self._s[4741]! }
+ public var VoiceChat_StopRecordingStop: String { return self._s[4743]! }
+ public var Passport_UpdateRequiredError: String { return self._s[4744]! }
+ public var PrivacySettings_Passcode: String { return self._s[4745]! }
public func Call_EmojiDescription(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4742]!, self._r[4742]!, [_0])
+ return formatWithArgumentRanges(self._s[4746]!, self._r[4746]!, [_0])
}
- public var AutoNightTheme_NotAvailable: String { return self._s[4743]! }
- public var Conversation_PressVolumeButtonForSound: String { return self._s[4744]! }
- public var VoiceOver_Common_On: String { return self._s[4745]! }
- public var LoginPassword_InvalidPasswordError: String { return self._s[4746]! }
- public var ChatListFolder_IncludedSectionHeader: String { return self._s[4747]! }
- public var Channel_SignMessages_Help: String { return self._s[4748]! }
- public var ChatList_DeleteForEveryoneConfirmationTitle: String { return self._s[4749]! }
- public var Conversation_TitleNoComments: String { return self._s[4750]! }
- public var MediaPicker_LivePhotoDescription: String { return self._s[4751]! }
- public var GroupInfo_Permissions: String { return self._s[4752]! }
- public var GroupPermission_NoSendLinks: String { return self._s[4755]! }
+ public var AutoNightTheme_NotAvailable: String { return self._s[4747]! }
+ public var Conversation_PressVolumeButtonForSound: String { return self._s[4748]! }
+ public var VoiceOver_Common_On: String { return self._s[4749]! }
+ public var LoginPassword_InvalidPasswordError: String { return self._s[4750]! }
+ public var ChatListFolder_IncludedSectionHeader: String { return self._s[4751]! }
+ public var Channel_SignMessages_Help: String { return self._s[4752]! }
+ public var ChatList_DeleteForEveryoneConfirmationTitle: String { return self._s[4753]! }
+ public var Conversation_TitleNoComments: String { return self._s[4754]! }
+ public var MediaPicker_LivePhotoDescription: String { return self._s[4755]! }
+ public var GroupInfo_Permissions: String { return self._s[4756]! }
+ public var GroupPermission_NoSendLinks: String { return self._s[4759]! }
public func Conversation_ScheduledVoiceChatStartsTomorrow(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4756]!, self._r[4756]!, [_0])
+ return formatWithArgumentRanges(self._s[4760]!, self._r[4760]!, [_0])
}
- public var Passport_Identity_ResidenceCountry: String { return self._s[4757]! }
- public var Appearance_ThemeCarouselNightBlue: String { return self._s[4759]! }
- public var ChatList_ArchiveAction: String { return self._s[4760]! }
+ public var Passport_Identity_ResidenceCountry: String { return self._s[4761]! }
+ public var Appearance_ThemeCarouselNightBlue: String { return self._s[4763]! }
+ public var ChatList_ArchiveAction: String { return self._s[4764]! }
public func Channel_AdminLog_DisabledSlowmode(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4761]!, self._r[4761]!, [_0])
+ return formatWithArgumentRanges(self._s[4765]!, self._r[4765]!, [_0])
}
- public var GroupInfo_GroupHistory: String { return self._s[4762]! }
+ public var GroupInfo_GroupHistory: String { return self._s[4766]! }
public func Channel_Management_ErrorNotMember(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4764]!, self._r[4764]!, [_0])
+ return formatWithArgumentRanges(self._s[4768]!, self._r[4768]!, [_0])
}
- public var Privacy_Forwards_LinkIfAllowed: String { return self._s[4766]! }
- public var Channel_Info_Banned: String { return self._s[4767]! }
- public var Paint_RecentStickers: String { return self._s[4768]! }
- public var VoiceOver_MessageContextSend: String { return self._s[4769]! }
- public var Group_ErrorNotMutualContact: String { return self._s[4770]! }
- public var ReportPeer_ReasonOther: String { return self._s[4772]! }
- public var Channel_BanUser_PermissionChangeGroupInfo: String { return self._s[4773]! }
- public var SocksProxySetup_ShareQRCodeInfo: String { return self._s[4775]! }
- public var KeyCommand_Find: String { return self._s[4776]! }
+ public var Privacy_Forwards_LinkIfAllowed: String { return self._s[4770]! }
+ public var Channel_Info_Banned: String { return self._s[4771]! }
+ public var Paint_RecentStickers: String { return self._s[4772]! }
+ public var VoiceOver_MessageContextSend: String { return self._s[4773]! }
+ public var Group_ErrorNotMutualContact: String { return self._s[4774]! }
+ public var ReportPeer_ReasonOther: String { return self._s[4776]! }
+ public var Channel_BanUser_PermissionChangeGroupInfo: String { return self._s[4777]! }
+ public var SocksProxySetup_ShareQRCodeInfo: String { return self._s[4779]! }
+ public var KeyCommand_Find: String { return self._s[4780]! }
public func Channel_MessageTitleUpdated(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4777]!, self._r[4777]!, [_0])
+ return formatWithArgumentRanges(self._s[4781]!, self._r[4781]!, [_0])
}
- public var ChatList_Context_Unmute: String { return self._s[4778]! }
- public var Chat_SlowmodeAttachmentLimitReached: String { return self._s[4779]! }
- public var TwoFactorSetup_ResetDone_Action: String { return self._s[4780]! }
- public var Stickers_GroupStickersHelp: String { return self._s[4781]! }
- public var Checkout_Title: String { return self._s[4782]! }
- public var Activity_RecordingAudio: String { return self._s[4783]! }
- public var SettingsSearch_Synonyms_Notifications_GroupNotificationsPreview: String { return self._s[4784]! }
- public var BlockedUsers_BlockTitle: String { return self._s[4785]! }
- public var DialogList_SavedMessagesHelp: String { return self._s[4787]! }
- public var Calls_All: String { return self._s[4788]! }
- public var Settings_FAQ_Button: String { return self._s[4790]! }
- public var Conversation_Dice_u1F3B0: String { return self._s[4792]! }
+ public var ChatList_Context_Unmute: String { return self._s[4782]! }
+ public var Chat_SlowmodeAttachmentLimitReached: String { return self._s[4783]! }
+ public var TwoFactorSetup_ResetDone_Action: String { return self._s[4784]! }
+ public var Stickers_GroupStickersHelp: String { return self._s[4785]! }
+ public var Checkout_Title: String { return self._s[4786]! }
+ public var Activity_RecordingAudio: String { return self._s[4787]! }
+ public var SettingsSearch_Synonyms_Notifications_GroupNotificationsPreview: String { return self._s[4788]! }
+ public var BlockedUsers_BlockTitle: String { return self._s[4789]! }
+ public var DialogList_SavedMessagesHelp: String { return self._s[4791]! }
+ public var Calls_All: String { return self._s[4792]! }
+ public var Settings_FAQ_Button: String { return self._s[4794]! }
+ public var Conversation_Dice_u1F3B0: String { return self._s[4796]! }
public func Time_MonthOfYear_m5(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4793]!, self._r[4793]!, [_0])
+ return formatWithArgumentRanges(self._s[4797]!, self._r[4797]!, [_0])
}
- public var Conversation_ReportGroupLocation: String { return self._s[4794]! }
- public var Passport_Scans_Upload: String { return self._s[4795]! }
- public var Channel_EditAdmin_PermissionPinMessages: String { return self._s[4797]! }
- public var ChatList_UnarchiveAction: String { return self._s[4798]! }
- public var Stats_GroupTopInviter_History: String { return self._s[4799]! }
- public var GroupInfo_Permissions_Title: String { return self._s[4800]! }
- public var VoiceChat_CreateNewVoiceChatStart: String { return self._s[4801]! }
- public var Passport_Language_el: String { return self._s[4802]! }
- public var Channel_DiscussionMessageUnavailable: String { return self._s[4803]! }
+ public var Conversation_ReportGroupLocation: String { return self._s[4798]! }
+ public var Passport_Scans_Upload: String { return self._s[4799]! }
+ public var Channel_EditAdmin_PermissionPinMessages: String { return self._s[4801]! }
+ public var ChatList_UnarchiveAction: String { return self._s[4802]! }
+ public var Stats_GroupTopInviter_History: String { return self._s[4803]! }
+ public var GroupInfo_Permissions_Title: String { return self._s[4804]! }
+ public var VoiceChat_CreateNewVoiceChatStart: String { return self._s[4805]! }
+ public var Passport_Language_el: String { return self._s[4806]! }
+ public var Channel_DiscussionMessageUnavailable: String { return self._s[4807]! }
public func UserInfo_ContactForwardTooltip_TwoChats_One(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4804]!, self._r[4804]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[4808]!, self._r[4808]!, [_0, _1])
}
- public var GroupInfo_ActionPromote: String { return self._s[4805]! }
- public var Group_OwnershipTransfer_ErrorLocatedGroupsTooMuch: String { return self._s[4806]! }
- public var Media_LimitedAccessSelectMore: String { return self._s[4807]! }
+ public var GroupInfo_ActionPromote: String { return self._s[4809]! }
+ public var Group_OwnershipTransfer_ErrorLocatedGroupsTooMuch: String { return self._s[4810]! }
+ public var Media_LimitedAccessSelectMore: String { return self._s[4811]! }
public func TwoStepAuth_PendingEmailHelp(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4808]!, self._r[4808]!, [_0])
+ return formatWithArgumentRanges(self._s[4812]!, self._r[4812]!, [_0])
}
- public var VoiceOver_Chat_Reply: String { return self._s[4809]! }
- public var Month_GenMay: String { return self._s[4810]! }
- public var DialogList_DeleteBotConversationConfirmation: String { return self._s[4811]! }
- public var Chat_PsaTooltip_covid: String { return self._s[4812]! }
- public var Watch_Suggestion_CantTalk: String { return self._s[4813]! }
- public var Privacy_GroupsAndChannels_NeverAllow_Title: String { return self._s[4814]! }
- public var AppUpgrade_Running: String { return self._s[4815]! }
- public var PasscodeSettings_UnlockWithFaceId: String { return self._s[4818]! }
- public var Notification_Exceptions_PreviewAlwaysOff: String { return self._s[4819]! }
- public var SharedMedia_EmptyText: String { return self._s[4820]! }
- public var Passport_Address_EditResidentialAddress: String { return self._s[4821]! }
- public var SettingsSearch_Synonyms_Notifications_GroupNotificationsAlert: String { return self._s[4822]! }
- public var Message_PinnedGame: String { return self._s[4823]! }
- public var KeyCommand_SearchInChat: String { return self._s[4824]! }
- public var Appearance_ThemeCarouselNewNight: String { return self._s[4825]! }
- public var ChatList_Search_FilterMedia: String { return self._s[4826]! }
- public var Message_PinnedAudioMessage: String { return self._s[4827]! }
- public var ChannelInfo_ConfirmLeave: String { return self._s[4829]! }
+ public var VoiceOver_Chat_Reply: String { return self._s[4813]! }
+ public var Month_GenMay: String { return self._s[4814]! }
+ public var DialogList_DeleteBotConversationConfirmation: String { return self._s[4815]! }
+ public var Chat_PsaTooltip_covid: String { return self._s[4816]! }
+ public var Watch_Suggestion_CantTalk: String { return self._s[4817]! }
+ public var Privacy_GroupsAndChannels_NeverAllow_Title: String { return self._s[4818]! }
+ public var AppUpgrade_Running: String { return self._s[4819]! }
+ public var PasscodeSettings_UnlockWithFaceId: String { return self._s[4822]! }
+ public var Notification_Exceptions_PreviewAlwaysOff: String { return self._s[4823]! }
+ public var SharedMedia_EmptyText: String { return self._s[4824]! }
+ public var Passport_Address_EditResidentialAddress: String { return self._s[4825]! }
+ public var SettingsSearch_Synonyms_Notifications_GroupNotificationsAlert: String { return self._s[4826]! }
+ public var Message_PinnedGame: String { return self._s[4827]! }
+ public var KeyCommand_SearchInChat: String { return self._s[4828]! }
+ public var Appearance_ThemeCarouselNewNight: String { return self._s[4829]! }
+ public var ChatList_Search_FilterMedia: String { return self._s[4830]! }
+ public var Message_PinnedAudioMessage: String { return self._s[4831]! }
+ public var ChannelInfo_ConfirmLeave: String { return self._s[4833]! }
public func Channel_AdminLog_MessagePromotedNameUsername(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4830]!, self._r[4830]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4834]!, self._r[4834]!, [_1, _2])
}
- public var SocksProxySetup_ProxyStatusUnavailable: String { return self._s[4831]! }
- public var InviteLink_Create: String { return self._s[4832]! }
+ public var SocksProxySetup_ProxyStatusUnavailable: String { return self._s[4835]! }
+ public var InviteLink_Create: String { return self._s[4836]! }
public func Passport_Email_CodeHelp(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4833]!, self._r[4833]!, [_0])
+ return formatWithArgumentRanges(self._s[4837]!, self._r[4837]!, [_0])
}
public func Message_PinnedTextMessage(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4834]!, self._r[4834]!, [_0])
+ return formatWithArgumentRanges(self._s[4838]!, self._r[4838]!, [_0])
}
- public var Settings_AddAccount: String { return self._s[4835]! }
- public var Channel_AdminLog_CanDeleteMessages: String { return self._s[4836]! }
- public var Conversation_DiscardVoiceMessageTitle: String { return self._s[4837]! }
- public var Channel_JoinChannel: String { return self._s[4838]! }
- public var Watch_UserInfo_Unblock: String { return self._s[4839]! }
- public var PhoneLabel_Title: String { return self._s[4840]! }
- public var VoiceChat_EditPermissions: String { return self._s[4842]! }
- public var Group_Setup_HistoryHiddenHelp: String { return self._s[4843]! }
- public var Privacy_ProfilePhoto_AlwaysShareWith_Title: String { return self._s[4844]! }
+ public var Settings_AddAccount: String { return self._s[4839]! }
+ public var Channel_AdminLog_CanDeleteMessages: String { return self._s[4840]! }
+ public var Conversation_DiscardVoiceMessageTitle: String { return self._s[4841]! }
+ public var Channel_JoinChannel: String { return self._s[4842]! }
+ public var Watch_UserInfo_Unblock: String { return self._s[4843]! }
+ public var PhoneLabel_Title: String { return self._s[4844]! }
+ public var VoiceChat_EditPermissions: String { return self._s[4846]! }
+ public var Group_Setup_HistoryHiddenHelp: String { return self._s[4847]! }
+ public var Privacy_ProfilePhoto_AlwaysShareWith_Title: String { return self._s[4848]! }
public func Login_PhoneGenericEmailBody(_ _1: String, _ _2: String, _ _3: String, _ _4: String, _ _5: String, _ _6: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4845]!, self._r[4845]!, [_1, _2, _3, _4, _5, _6])
+ return formatWithArgumentRanges(self._s[4849]!, self._r[4849]!, [_1, _2, _3, _4, _5, _6])
}
- public var Channel_AddBotErrorHaveRights: String { return self._s[4846]! }
- public var ChatList_TabIconFoldersTooltipNonEmptyFolders: String { return self._s[4847]! }
- public var DialogList_EncryptionProcessing: String { return self._s[4848]! }
- public var ChatList_Search_FilterChats: String { return self._s[4849]! }
- public var WatchRemote_NotificationText: String { return self._s[4850]! }
- public var EditTheme_ChangeColors: String { return self._s[4852]! }
- public var GroupRemoved_ViewUserInfo: String { return self._s[4853]! }
- public var CallSettings_OnMobile: String { return self._s[4855]! }
- public var Month_ShortFebruary: String { return self._s[4857]! }
- public var VoiceOver_MessageContextReply: String { return self._s[4858]! }
- public var AutoremoveSetup_TimerValueNever: String { return self._s[4859]! }
- public var Group_Location_ChangeLocation: String { return self._s[4861]! }
+ public var Channel_AddBotErrorHaveRights: String { return self._s[4850]! }
+ public var ChatList_TabIconFoldersTooltipNonEmptyFolders: String { return self._s[4851]! }
+ public var DialogList_EncryptionProcessing: String { return self._s[4852]! }
+ public var ChatList_Search_FilterChats: String { return self._s[4853]! }
+ public var WatchRemote_NotificationText: String { return self._s[4854]! }
+ public var EditTheme_ChangeColors: String { return self._s[4856]! }
+ public var GroupRemoved_ViewUserInfo: String { return self._s[4857]! }
+ public var CallSettings_OnMobile: String { return self._s[4859]! }
+ public var Month_ShortFebruary: String { return self._s[4861]! }
+ public var VoiceOver_MessageContextReply: String { return self._s[4862]! }
+ public var AutoremoveSetup_TimerValueNever: String { return self._s[4863]! }
+ public var Group_Location_ChangeLocation: String { return self._s[4865]! }
public func PUSH_VIDEO_CALL_REQUEST(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4862]!, self._r[4862]!, [_1])
+ return formatWithArgumentRanges(self._s[4866]!, self._r[4866]!, [_1])
}
- public var Passport_Address_TypeBankStatementUploadScan: String { return self._s[4863]! }
- public var VoiceOver_Media_PlaybackStop: String { return self._s[4864]! }
- public var SettingsSearch_Synonyms_Data_SaveIncomingPhotos: String { return self._s[4865]! }
+ public var Passport_Address_TypeBankStatementUploadScan: String { return self._s[4867]! }
+ public var VoiceOver_Media_PlaybackStop: String { return self._s[4868]! }
+ public var SettingsSearch_Synonyms_Data_SaveIncomingPhotos: String { return self._s[4869]! }
public func Channel_AdminLog_MessageRestrictedUntil(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4867]!, self._r[4867]!, [_0])
+ return formatWithArgumentRanges(self._s[4871]!, self._r[4871]!, [_0])
}
- public var PhotoEditor_WarmthTool: String { return self._s[4868]! }
- public var Login_InfoAvatarPhoto: String { return self._s[4869]! }
- public var Notification_Exceptions_NewException_MessagePreviewHeader: String { return self._s[4870]! }
- public var Permissions_CellularDataAllowInSettings_v0: String { return self._s[4871]! }
- public var Map_PlacesInThisArea: String { return self._s[4872]! }
- public var VoiceOver_Chat_ContactEmail: String { return self._s[4873]! }
- public var Notifications_InAppNotificationsSounds: String { return self._s[4874]! }
+ public var PhotoEditor_WarmthTool: String { return self._s[4872]! }
+ public var Login_InfoAvatarPhoto: String { return self._s[4873]! }
+ public var Notification_Exceptions_NewException_MessagePreviewHeader: String { return self._s[4874]! }
+ public var Permissions_CellularDataAllowInSettings_v0: String { return self._s[4875]! }
+ public var Map_PlacesInThisArea: String { return self._s[4876]! }
+ public var VoiceOver_Chat_ContactEmail: String { return self._s[4877]! }
+ public var Notifications_InAppNotificationsSounds: String { return self._s[4878]! }
public func PUSH_PINNED_NOTEXT(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4875]!, self._r[4875]!, [_1])
- }
- public var PeerInfo_ReportProfileVideo: String { return self._s[4876]! }
- public var ShareMenu_Send: String { return self._s[4877]! }
- public var Username_InvalidStartsWithNumber: String { return self._s[4878]! }
- public func Channel_AdminLog_StartedVoiceChat(_ _1: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[4879]!, self._r[4879]!, [_1])
}
- public var Appearance_AppIconClassicX: String { return self._s[4880]! }
- public var Report_Report: String { return self._s[4881]! }
+ public var PeerInfo_ReportProfileVideo: String { return self._s[4880]! }
+ public var ShareMenu_Send: String { return self._s[4881]! }
+ public var Username_InvalidStartsWithNumber: String { return self._s[4882]! }
+ public func Channel_AdminLog_StartedVoiceChat(_ _1: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[4883]!, self._r[4883]!, [_1])
+ }
+ public var Appearance_AppIconClassicX: String { return self._s[4884]! }
+ public var Report_Report: String { return self._s[4885]! }
public func PUSH_CHANNEL_MESSAGE_ROUND(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4882]!, self._r[4882]!, [_1])
+ return formatWithArgumentRanges(self._s[4886]!, self._r[4886]!, [_1])
}
- public var Conversation_StopPoll: String { return self._s[4883]! }
- public var InfoPlist_NSLocationAlwaysUsageDescription: String { return self._s[4885]! }
- public var Passport_Identity_EditIdentityCard: String { return self._s[4886]! }
- public var Appearance_ThemePreview_ChatList_3_Name: String { return self._s[4887]! }
- public var Conversation_Timer_Title: String { return self._s[4888]! }
- public var Common_Next: String { return self._s[4889]! }
- public var Notification_Exceptions_NewException: String { return self._s[4890]! }
+ public var Conversation_StopPoll: String { return self._s[4887]! }
+ public var InfoPlist_NSLocationAlwaysUsageDescription: String { return self._s[4889]! }
+ public var Passport_Identity_EditIdentityCard: String { return self._s[4890]! }
+ public var Appearance_ThemePreview_ChatList_3_Name: String { return self._s[4891]! }
+ public var Conversation_Timer_Title: String { return self._s[4892]! }
+ public var Common_Next: String { return self._s[4893]! }
+ public var Notification_Exceptions_NewException: String { return self._s[4894]! }
public func Generic_OpenHiddenLinkAlert(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4891]!, self._r[4891]!, [_0])
+ return formatWithArgumentRanges(self._s[4895]!, self._r[4895]!, [_0])
}
- public var AccessDenied_CallMicrophone: String { return self._s[4892]! }
- public var VoiceChat_UnmutePeer: String { return self._s[4893]! }
- public var ChatImportActivity_Retry: String { return self._s[4894]! }
- public var SettingsSearch_Synonyms_Data_AutoDownloadUsingCellular: String { return self._s[4895]! }
- public var ChangePhoneNumberCode_Help: String { return self._s[4896]! }
- public var Passport_Identity_OneOfTypeIdentityCard: String { return self._s[4897]! }
- public var Channel_AdminLogFilter_EventsLeaving: String { return self._s[4898]! }
- public var BlockedUsers_LeavePrefix: String { return self._s[4899]! }
+ public var AccessDenied_CallMicrophone: String { return self._s[4896]! }
+ public var VoiceChat_UnmutePeer: String { return self._s[4897]! }
+ public var ChatImportActivity_Retry: String { return self._s[4898]! }
+ public var SettingsSearch_Synonyms_Data_AutoDownloadUsingCellular: String { return self._s[4899]! }
+ public var ChangePhoneNumberCode_Help: String { return self._s[4900]! }
+ public var Passport_Identity_OneOfTypeIdentityCard: String { return self._s[4901]! }
+ public var Channel_AdminLogFilter_EventsLeaving: String { return self._s[4902]! }
+ public var BlockedUsers_LeavePrefix: String { return self._s[4903]! }
public func Passport_RequestHeader(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4900]!, self._r[4900]!, [_0])
+ return formatWithArgumentRanges(self._s[4904]!, self._r[4904]!, [_0])
}
- public var Group_About_Help: String { return self._s[4901]! }
- public var TwoStepAuth_ChangePasswordDescription: String { return self._s[4902]! }
- public var Tour_Title3: String { return self._s[4903]! }
- public var Watch_Conversation_Unblock: String { return self._s[4904]! }
- public var Watch_UserInfo_Block: String { return self._s[4905]! }
- public var Notifications_ChannelNotificationsAlert: String { return self._s[4906]! }
- public var TwoFactorSetup_Hint_Action: String { return self._s[4907]! }
- public var IntentsSettings_SuggestedChatsInfo: String { return self._s[4908]! }
- public var TextFormat_AddLinkTitle: String { return self._s[4909]! }
- public var GroupInfo_InviteLink_RevokeAlert_Revoke: String { return self._s[4910]! }
+ public var Group_About_Help: String { return self._s[4905]! }
+ public var TwoStepAuth_ChangePasswordDescription: String { return self._s[4906]! }
+ public var Tour_Title3: String { return self._s[4907]! }
+ public var Watch_Conversation_Unblock: String { return self._s[4908]! }
+ public var Watch_UserInfo_Block: String { return self._s[4909]! }
+ public var Notifications_ChannelNotificationsAlert: String { return self._s[4910]! }
+ public var TwoFactorSetup_Hint_Action: String { return self._s[4911]! }
+ public var IntentsSettings_SuggestedChatsInfo: String { return self._s[4912]! }
+ public var TextFormat_AddLinkTitle: String { return self._s[4913]! }
+ public var GroupInfo_InviteLink_RevokeAlert_Revoke: String { return self._s[4914]! }
public func Notification_VoiceChatScheduled(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4911]!, self._r[4911]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4915]!, self._r[4915]!, [_1, _2])
}
- public var TwoStepAuth_EnterPasswordTitle: String { return self._s[4912]! }
- public var FastTwoStepSetup_PasswordSection: String { return self._s[4914]! }
- public var Compose_ChannelMembers: String { return self._s[4915]! }
- public var Conversation_ForwardTitle: String { return self._s[4916]! }
- public var Conversation_PinnedPoll: String { return self._s[4919]! }
+ public var TwoStepAuth_EnterPasswordTitle: String { return self._s[4916]! }
+ public var FastTwoStepSetup_PasswordSection: String { return self._s[4918]! }
+ public var Compose_ChannelMembers: String { return self._s[4919]! }
+ public var Conversation_ForwardTitle: String { return self._s[4920]! }
+ public var Conversation_PinnedPoll: String { return self._s[4923]! }
public func VoiceOver_Chat_AnonymousPollFrom(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4920]!, self._r[4920]!, [_0])
+ return formatWithArgumentRanges(self._s[4924]!, self._r[4924]!, [_0])
}
- public var SettingsSearch_Synonyms_EditProfile_AddAccount: String { return self._s[4921]! }
- public var Conversation_ContextMenuStickerPackAdd: String { return self._s[4923]! }
- public var Stats_Overview: String { return self._s[4924]! }
- public var Map_HomeAndWorkTitle: String { return self._s[4925]! }
+ public var SettingsSearch_Synonyms_EditProfile_AddAccount: String { return self._s[4925]! }
+ public var Conversation_ContextMenuStickerPackAdd: String { return self._s[4927]! }
+ public var Stats_Overview: String { return self._s[4928]! }
+ public var Map_HomeAndWorkTitle: String { return self._s[4929]! }
public func Time_PreciseDate_m4(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4926]!, self._r[4926]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[4930]!, self._r[4930]!, [_1, _2, _3])
}
- public var Passport_Address_CityPlaceholder: String { return self._s[4927]! }
- public var InfoPlist_NSLocationAlwaysAndWhenInUseUsageDescription: String { return self._s[4928]! }
- public var Privacy_PhoneNumber: String { return self._s[4929]! }
- public var ChatList_Search_FilterFiles: String { return self._s[4930]! }
- public var ChatList_DeleteForEveryoneConfirmationAction: String { return self._s[4931]! }
- public var ChannelIntro_CreateChannel: String { return self._s[4932]! }
- public var Conversation_InputTextAnonymousPlaceholder: String { return self._s[4933]! }
+ public var Passport_Address_CityPlaceholder: String { return self._s[4931]! }
+ public var InfoPlist_NSLocationAlwaysAndWhenInUseUsageDescription: String { return self._s[4932]! }
+ public var Privacy_PhoneNumber: String { return self._s[4933]! }
+ public var ChatList_Search_FilterFiles: String { return self._s[4934]! }
+ public var ChatList_DeleteForEveryoneConfirmationAction: String { return self._s[4935]! }
+ public var ChannelIntro_CreateChannel: String { return self._s[4936]! }
+ public var Conversation_InputTextAnonymousPlaceholder: String { return self._s[4937]! }
public func Login_EmailCodeBody(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4934]!, self._r[4934]!, [_0])
+ return formatWithArgumentRanges(self._s[4938]!, self._r[4938]!, [_0])
}
- public var Weekday_ShortMonday: String { return self._s[4935]! }
- public var Passport_Language_ar: String { return self._s[4937]! }
- public var SettingsSearch_Synonyms_EditProfile_Title: String { return self._s[4938]! }
- public var TwoFactorSetup_Done_Title: String { return self._s[4939]! }
- public var Calls_RatingFeedback: String { return self._s[4940]! }
- public var SettingsSearch_Synonyms_Notifications_ChannelNotificationsPreview: String { return self._s[4941]! }
- public var AutoDownloadSettings_ResetSettings: String { return self._s[4944]! }
+ public var Weekday_ShortMonday: String { return self._s[4939]! }
+ public var Passport_Language_ar: String { return self._s[4941]! }
+ public var SettingsSearch_Synonyms_EditProfile_Title: String { return self._s[4942]! }
+ public var TwoFactorSetup_Done_Title: String { return self._s[4943]! }
+ public var Calls_RatingFeedback: String { return self._s[4944]! }
+ public var SettingsSearch_Synonyms_Notifications_ChannelNotificationsPreview: String { return self._s[4945]! }
+ public var AutoDownloadSettings_ResetSettings: String { return self._s[4948]! }
public func VoiceOver_SelfDestructTimerOn(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4945]!, self._r[4945]!, [_0])
- }
- public var Watch_Compose_Send: String { return self._s[4946]! }
- public var PasscodeSettings_ChangePasscode: String { return self._s[4947]! }
- public var WebSearch_RecentSectionClear: String { return self._s[4948]! }
- public func Contacts_AccessDeniedHelpPortrait(_ _0: String) -> (String, [(Int, NSRange)]) {
return formatWithArgumentRanges(self._s[4949]!, self._r[4949]!, [_0])
}
- public var WallpaperSearch_ColorTeal: String { return self._s[4950]! }
- public var Wallpaper_SetCustomBackgroundInfo: String { return self._s[4951]! }
- public var Permissions_ContactsTitle_v0: String { return self._s[4952]! }
- public var Checkout_PasswordEntry_Pay: String { return self._s[4954]! }
- public var Settings_SavedMessages: String { return self._s[4955]! }
- public var TwoStepAuth_ReEnterPasswordDescription: String { return self._s[4956]! }
- public var Month_ShortMarch: String { return self._s[4957]! }
- public var Message_Location: String { return self._s[4958]! }
+ public var Watch_Compose_Send: String { return self._s[4950]! }
+ public var PasscodeSettings_ChangePasscode: String { return self._s[4951]! }
+ public var WebSearch_RecentSectionClear: String { return self._s[4952]! }
+ public func Contacts_AccessDeniedHelpPortrait(_ _0: String) -> (String, [(Int, NSRange)]) {
+ return formatWithArgumentRanges(self._s[4953]!, self._r[4953]!, [_0])
+ }
+ public var WallpaperSearch_ColorTeal: String { return self._s[4954]! }
+ public var Wallpaper_SetCustomBackgroundInfo: String { return self._s[4955]! }
+ public var Permissions_ContactsTitle_v0: String { return self._s[4956]! }
+ public var Checkout_PasswordEntry_Pay: String { return self._s[4958]! }
+ public var Settings_SavedMessages: String { return self._s[4959]! }
+ public var TwoStepAuth_ReEnterPasswordDescription: String { return self._s[4960]! }
+ public var Month_ShortMarch: String { return self._s[4961]! }
+ public var Message_Location: String { return self._s[4962]! }
public func PUSH_MESSAGE_GIF(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4959]!, self._r[4959]!, [_1])
+ return formatWithArgumentRanges(self._s[4963]!, self._r[4963]!, [_1])
}
public func Channel_AdminLog_MessageRemovedAdminName(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4960]!, self._r[4960]!, [_1])
+ return formatWithArgumentRanges(self._s[4964]!, self._r[4964]!, [_1])
}
public func Notification_CallTimeFormat(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4961]!, self._r[4961]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4965]!, self._r[4965]!, [_1, _2])
}
- public var VoiceOver_Chat_VoiceMessage: String { return self._s[4963]! }
+ public var VoiceOver_Chat_VoiceMessage: String { return self._s[4967]! }
public func Channel_AdminLog_MessageChangedUnlinkedChannel(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4964]!, self._r[4964]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4968]!, self._r[4968]!, [_1, _2])
}
- public var GroupPermission_NoSendMedia: String { return self._s[4965]! }
- public var Conversation_ClousStorageInfo_Description2: String { return self._s[4966]! }
- public var SharedMedia_CategoryDocs: String { return self._s[4967]! }
- public var Appearance_RemoveThemeConfirmation: String { return self._s[4968]! }
- public var Paint_Framed: String { return self._s[4969]! }
- public var Channel_Setup_LinkTypePublic: String { return self._s[4970]! }
- public var Channel_EditAdmin_PermissionAddAdmins: String { return self._s[4971]! }
- public var Passport_Identity_DoesNotExpire: String { return self._s[4972]! }
+ public var GroupPermission_NoSendMedia: String { return self._s[4969]! }
+ public var Conversation_ClousStorageInfo_Description2: String { return self._s[4970]! }
+ public var SharedMedia_CategoryDocs: String { return self._s[4971]! }
+ public var Appearance_RemoveThemeConfirmation: String { return self._s[4972]! }
+ public var Paint_Framed: String { return self._s[4973]! }
+ public var Channel_Setup_LinkTypePublic: String { return self._s[4974]! }
+ public var Channel_EditAdmin_PermissionAddAdmins: String { return self._s[4975]! }
+ public var Passport_Identity_DoesNotExpire: String { return self._s[4976]! }
public func ChatImport_SelectionConfirmationUserWithTitle(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4973]!, self._r[4973]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4977]!, self._r[4977]!, [_1, _2])
}
- public var TwoStepAuth_RecoveryUnavailableResetAction: String { return self._s[4974]! }
- public var Channel_SignMessages: String { return self._s[4975]! }
- public var Contacts_AccessDeniedHelpON: String { return self._s[4976]! }
- public var Conversation_ContextMenuStickerPackInfo: String { return self._s[4977]! }
+ public var TwoStepAuth_RecoveryUnavailableResetAction: String { return self._s[4978]! }
+ public var Channel_SignMessages: String { return self._s[4979]! }
+ public var Contacts_AccessDeniedHelpON: String { return self._s[4980]! }
+ public var Conversation_ContextMenuStickerPackInfo: String { return self._s[4981]! }
public func PUSH_CHAT_LEFT(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4978]!, self._r[4978]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[4982]!, self._r[4982]!, [_1, _2])
}
- public var InviteLink_Create_TimeLimitNoLimit: String { return self._s[4979]! }
- public var ImportStickerPack_ChooseName: String { return self._s[4980]! }
- public var GroupInfo_UpgradeButton: String { return self._s[4981]! }
- public var Channel_EditAdmin_PermissionInviteMembers: String { return self._s[4982]! }
+ public var InviteLink_Create_TimeLimitNoLimit: String { return self._s[4983]! }
+ public var ImportStickerPack_ChooseName: String { return self._s[4984]! }
+ public var GroupInfo_UpgradeButton: String { return self._s[4985]! }
+ public var Channel_EditAdmin_PermissionInviteMembers: String { return self._s[4986]! }
public func Conversation_ScheduledVoiceChatStartsTomorrowShort(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4983]!, self._r[4983]!, [_0])
+ return formatWithArgumentRanges(self._s[4987]!, self._r[4987]!, [_0])
}
- public var AutoDownloadSettings_Files: String { return self._s[4984]! }
+ public var AutoDownloadSettings_Files: String { return self._s[4988]! }
public func Notification_ChangedGroupName(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4985]!, self._r[4985]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[4989]!, self._r[4989]!, [_0, _1])
}
- public var Login_SendCodeViaSms: String { return self._s[4987]! }
- public var Update_UpdateApp: String { return self._s[4988]! }
- public var Channel_Setup_TypePublic: String { return self._s[4989]! }
- public var Watch_Compose_CreateMessage: String { return self._s[4990]! }
+ public var Login_SendCodeViaSms: String { return self._s[4991]! }
+ public var Update_UpdateApp: String { return self._s[4992]! }
+ public var Channel_Setup_TypePublic: String { return self._s[4993]! }
+ public var Watch_Compose_CreateMessage: String { return self._s[4994]! }
public func PUSH_CHAT_MESSAGE_VIDEOS(_ _1: String, _ _2: String, _ _3: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[4991]!, self._r[4991]!, [_1, _2, _3])
+ return formatWithArgumentRanges(self._s[4995]!, self._r[4995]!, [_1, _2, _3])
}
- public var StickerPacksSettings_ManagingHelp: String { return self._s[4992]! }
- public var VoiceOver_Chat_Video: String { return self._s[4993]! }
- public var Forward_ChannelReadOnly: String { return self._s[4994]! }
- public var StickerPack_HideStickers: String { return self._s[4995]! }
- public var ChatListFolder_NameContacts: String { return self._s[4996]! }
- public var Profile_BotInfo: String { return self._s[4997]! }
- public var Document_TargetConfirmationFormat: String { return self._s[4998]! }
- public var GroupInfo_InviteByLink: String { return self._s[4999]! }
- public var Channel_AdminLog_BanSendStickersAndGifs: String { return self._s[5000]! }
- public var Watch_Stickers_RecentPlaceholder: String { return self._s[5001]! }
- public var Broadcast_AdminLog_EmptyText: String { return self._s[5002]! }
- public var Passport_NotLoggedInMessage: String { return self._s[5003]! }
- public var Conversation_StopQuizConfirmation: String { return self._s[5004]! }
- public var Checkout_PaymentMethod: String { return self._s[5005]! }
- public var ChatList_ArchivedChatsTitle: String { return self._s[5010]! }
- public var TwoStepAuth_SetupPasswordConfirmFailed: String { return self._s[5011]! }
- public var VoiceOver_Chat_RecordPreviewVoiceMessage: String { return self._s[5012]! }
- public var PrivacyLastSeenSettings_GroupsAndChannelsHelp: String { return self._s[5013]! }
- public var SettingsSearch_Synonyms_Privacy_Data_ContactsReset: String { return self._s[5014]! }
- public var Conversation_GigagroupDescription: String { return self._s[5015]! }
- public var Camera_Title: String { return self._s[5016]! }
- public var Map_Directions: String { return self._s[5017]! }
- public var Stats_MessagePublicForwardsTitle: String { return self._s[5019]! }
- public var Privacy_ProfilePhoto_WhoCanSeeMyPhoto: String { return self._s[5020]! }
- public var Profile_EncryptionKey: String { return self._s[5021]! }
+ public var StickerPacksSettings_ManagingHelp: String { return self._s[4996]! }
+ public var VoiceOver_Chat_Video: String { return self._s[4997]! }
+ public var Forward_ChannelReadOnly: String { return self._s[4998]! }
+ public var StickerPack_HideStickers: String { return self._s[4999]! }
+ public var ChatListFolder_NameContacts: String { return self._s[5000]! }
+ public var Profile_BotInfo: String { return self._s[5001]! }
+ public var Document_TargetConfirmationFormat: String { return self._s[5002]! }
+ public var GroupInfo_InviteByLink: String { return self._s[5003]! }
+ public var Channel_AdminLog_BanSendStickersAndGifs: String { return self._s[5004]! }
+ public var Watch_Stickers_RecentPlaceholder: String { return self._s[5005]! }
+ public var Broadcast_AdminLog_EmptyText: String { return self._s[5006]! }
+ public var Passport_NotLoggedInMessage: String { return self._s[5007]! }
+ public var Conversation_StopQuizConfirmation: String { return self._s[5008]! }
+ public var Checkout_PaymentMethod: String { return self._s[5009]! }
+ public var ChatList_ArchivedChatsTitle: String { return self._s[5014]! }
+ public var TwoStepAuth_SetupPasswordConfirmFailed: String { return self._s[5015]! }
+ public var VoiceOver_Chat_RecordPreviewVoiceMessage: String { return self._s[5016]! }
+ public var PrivacyLastSeenSettings_GroupsAndChannelsHelp: String { return self._s[5017]! }
+ public var SettingsSearch_Synonyms_Privacy_Data_ContactsReset: String { return self._s[5018]! }
+ public var Conversation_GigagroupDescription: String { return self._s[5019]! }
+ public var Camera_Title: String { return self._s[5020]! }
+ public var Map_Directions: String { return self._s[5021]! }
+ public var Stats_MessagePublicForwardsTitle: String { return self._s[5023]! }
+ public var Privacy_ProfilePhoto_WhoCanSeeMyPhoto: String { return self._s[5024]! }
+ public var Profile_EncryptionKey: String { return self._s[5025]! }
public func LOCAL_CHAT_MESSAGE_FWDS(_ _1: String, _ _2: Int) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5022]!, self._r[5022]!, [_1, "\(_2)"])
+ return formatWithArgumentRanges(self._s[5026]!, self._r[5026]!, [_1, "\(_2)"])
}
- public var VoiceChat_VideoPreviewShareCamera: String { return self._s[5023]! }
+ public var VoiceChat_VideoPreviewShareCamera: String { return self._s[5027]! }
public func Compatibility_SecretMediaVersionTooLow(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5024]!, self._r[5024]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[5028]!, self._r[5028]!, [_0, _1])
}
- public var Passport_Identity_TypePassport: String { return self._s[5025]! }
- public var CreatePoll_QuizOptionsHeader: String { return self._s[5027]! }
- public var Common_No: String { return self._s[5028]! }
- public var Conversation_SendMessage_ScheduleMessage: String { return self._s[5029]! }
- public var SettingsSearch_Synonyms_Privacy_LastSeen: String { return self._s[5030]! }
- public var Settings_AboutEmpty: String { return self._s[5031]! }
- public var TwoStepAuth_FloodError: String { return self._s[5033]! }
- public var SettingsSearch_Synonyms_Appearance_TextSize: String { return self._s[5034]! }
+ public var Passport_Identity_TypePassport: String { return self._s[5029]! }
+ public var CreatePoll_QuizOptionsHeader: String { return self._s[5031]! }
+ public var Common_No: String { return self._s[5032]! }
+ public var Conversation_SendMessage_ScheduleMessage: String { return self._s[5033]! }
+ public var SettingsSearch_Synonyms_Privacy_LastSeen: String { return self._s[5034]! }
+ public var Settings_AboutEmpty: String { return self._s[5035]! }
+ public var TwoStepAuth_FloodError: String { return self._s[5037]! }
+ public var SettingsSearch_Synonyms_Appearance_TextSize: String { return self._s[5038]! }
public func Notification_VoiceChatScheduledChannel(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5035]!, self._r[5035]!, [_0])
+ return formatWithArgumentRanges(self._s[5039]!, self._r[5039]!, [_0])
}
public func Channel_AdminLog_MessageUnkickedName(_ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5037]!, self._r[5037]!, [_1])
+ return formatWithArgumentRanges(self._s[5041]!, self._r[5041]!, [_1])
}
- public var Notification_Exceptions_MessagePreviewAlwaysOn: String { return self._s[5040]! }
- public var Conversation_Edit: String { return self._s[5041]! }
- public var CheckoutInfo_SaveInfo: String { return self._s[5043]! }
- public var VoiceOver_Chat_AnonymousPoll: String { return self._s[5044]! }
- public var Call_CameraTooltip: String { return self._s[5046]! }
- public var InstantPage_FeedbackButtonShort: String { return self._s[5047]! }
- public var Contacts_InviteToTelegram: String { return self._s[5048]! }
- public var Notifications_ResetAllNotifications: String { return self._s[5049]! }
- public var Calls_NewCall: String { return self._s[5050]! }
- public var VoiceOver_Chat_Music: String { return self._s[5053]! }
- public var Channel_AdminLogFilter_EventsInviteLinks: String { return self._s[5054]! }
- public var Channel_Members_AddAdminErrorNotAMember: String { return self._s[5055]! }
- public var Channel_Edit_AboutItem: String { return self._s[5056]! }
- public var Message_VideoExpired: String { return self._s[5057]! }
- public var Passport_Address_TypeTemporaryRegistrationUploadScan: String { return self._s[5058]! }
- public var Settings_TryEnterPassword: String { return self._s[5059]! }
+ public var Notification_Exceptions_MessagePreviewAlwaysOn: String { return self._s[5044]! }
+ public var Conversation_Edit: String { return self._s[5045]! }
+ public var CheckoutInfo_SaveInfo: String { return self._s[5047]! }
+ public var VoiceOver_Chat_AnonymousPoll: String { return self._s[5048]! }
+ public var Call_CameraTooltip: String { return self._s[5050]! }
+ public var InstantPage_FeedbackButtonShort: String { return self._s[5051]! }
+ public var Contacts_InviteToTelegram: String { return self._s[5052]! }
+ public var Notifications_ResetAllNotifications: String { return self._s[5053]! }
+ public var Calls_NewCall: String { return self._s[5054]! }
+ public var VoiceOver_Chat_Music: String { return self._s[5057]! }
+ public var Channel_AdminLogFilter_EventsInviteLinks: String { return self._s[5058]! }
+ public var Channel_Members_AddAdminErrorNotAMember: String { return self._s[5059]! }
+ public var Channel_Edit_AboutItem: String { return self._s[5060]! }
+ public var Message_VideoExpired: String { return self._s[5061]! }
+ public var Passport_Address_TypeTemporaryRegistrationUploadScan: String { return self._s[5062]! }
+ public var Settings_TryEnterPassword: String { return self._s[5063]! }
public func PUSH_CHAT_RETURNED(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5060]!, self._r[5060]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[5064]!, self._r[5064]!, [_1, _2])
}
- public var NotificationsSound_Input: String { return self._s[5062]! }
- public var Notifications_ClassicTones: String { return self._s[5063]! }
- public var Conversation_StatusTyping: String { return self._s[5064]! }
- public var Checkout_ErrorProviderAccountInvalid: String { return self._s[5065]! }
- public var ChatSettings_AutoDownloadSettings_Delimeter: String { return self._s[5066]! }
- public var SettingsSearch_Synonyms_Notifications_BadgeIncludeMutedChats: String { return self._s[5067]! }
- public var Conversation_MessageLeaveComment: String { return self._s[5068]! }
- public var UserInfo_TapToCall: String { return self._s[5069]! }
- public var EnterPasscode_EnterNewPasscodeNew: String { return self._s[5070]! }
+ public var NotificationsSound_Input: String { return self._s[5066]! }
+ public var Notifications_ClassicTones: String { return self._s[5067]! }
+ public var Conversation_StatusTyping: String { return self._s[5068]! }
+ public var Checkout_ErrorProviderAccountInvalid: String { return self._s[5069]! }
+ public var ChatSettings_AutoDownloadSettings_Delimeter: String { return self._s[5070]! }
+ public var SettingsSearch_Synonyms_Notifications_BadgeIncludeMutedChats: String { return self._s[5071]! }
+ public var Conversation_MessageLeaveComment: String { return self._s[5072]! }
+ public var UserInfo_TapToCall: String { return self._s[5073]! }
+ public var EnterPasscode_EnterNewPasscodeNew: String { return self._s[5074]! }
public func ScheduleVoiceChat_ScheduleOn(_ _0: String, _ _1: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5071]!, self._r[5071]!, [_0, _1])
+ return formatWithArgumentRanges(self._s[5075]!, self._r[5075]!, [_0, _1])
}
- public var Conversation_ClearAll: String { return self._s[5073]! }
- public var UserInfo_NotificationsDefault: String { return self._s[5074]! }
+ public var Conversation_ClearAll: String { return self._s[5077]! }
+ public var UserInfo_NotificationsDefault: String { return self._s[5078]! }
public func TwoFactorSetup_ResetFloodWait(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5075]!, self._r[5075]!, [_0])
+ return formatWithArgumentRanges(self._s[5079]!, self._r[5079]!, [_0])
}
- public var Location_ProximityGroupTip: String { return self._s[5076]! }
- public var Map_ChooseAPlace: String { return self._s[5077]! }
- public var GroupInfo_AddParticipantTitle: String { return self._s[5079]! }
- public var ChatList_PeerTypeNonContact: String { return self._s[5080]! }
- public var Conversation_SlideToCancel: String { return self._s[5081]! }
- public var Month_ShortJuly: String { return self._s[5082]! }
- public var SocksProxySetup_ProxyType: String { return self._s[5083]! }
+ public var Location_ProximityGroupTip: String { return self._s[5080]! }
+ public var Map_ChooseAPlace: String { return self._s[5081]! }
+ public var GroupInfo_AddParticipantTitle: String { return self._s[5083]! }
+ public var ChatList_PeerTypeNonContact: String { return self._s[5084]! }
+ public var Conversation_SlideToCancel: String { return self._s[5085]! }
+ public var Month_ShortJuly: String { return self._s[5086]! }
+ public var SocksProxySetup_ProxyType: String { return self._s[5087]! }
public func ChatList_DeleteChatConfirmation(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5084]!, self._r[5084]!, [_0])
+ return formatWithArgumentRanges(self._s[5088]!, self._r[5088]!, [_0])
}
- public var StickerPacks_ActionArchive: String { return self._s[5085]! }
- public var ChatList_EditFolders: String { return self._s[5086]! }
- public var TwoStepAuth_SetPasswordHelp: String { return self._s[5087]! }
- public var ScheduledMessages_RemindersTitle: String { return self._s[5089]! }
+ public var StickerPacks_ActionArchive: String { return self._s[5089]! }
+ public var ChatList_EditFolders: String { return self._s[5090]! }
+ public var TwoStepAuth_SetPasswordHelp: String { return self._s[5091]! }
+ public var ScheduledMessages_RemindersTitle: String { return self._s[5093]! }
public func GroupPermission_ApplyAlertText(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5090]!, self._r[5090]!, [_0])
+ return formatWithArgumentRanges(self._s[5094]!, self._r[5094]!, [_0])
}
- public var Permissions_PeopleNearbyTitle_v0: String { return self._s[5091]! }
- public var Your_cards_expiration_year_is_invalid: String { return self._s[5092]! }
- public var UserInfo_ShareMyContactInfo: String { return self._s[5094]! }
+ public var Permissions_PeopleNearbyTitle_v0: String { return self._s[5095]! }
+ public var Your_cards_expiration_year_is_invalid: String { return self._s[5096]! }
+ public var UserInfo_ShareMyContactInfo: String { return self._s[5098]! }
public func Conversation_ScheduledVoiceChatStartsOnShort(_ _0: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5096]!, self._r[5096]!, [_0])
+ return formatWithArgumentRanges(self._s[5100]!, self._r[5100]!, [_0])
}
- public var Passport_DeleteAddress: String { return self._s[5097]! }
- public var Passport_DeletePassportConfirmation: String { return self._s[5098]! }
- public var Passport_Identity_ReverseSide: String { return self._s[5099]! }
- public var CheckoutInfo_ErrorEmailInvalid: String { return self._s[5101]! }
- public var Login_InfoLastNamePlaceholder: String { return self._s[5102]! }
- public var InviteLink_CreatedBy: String { return self._s[5103]! }
- public var Passport_FieldAddress: String { return self._s[5104]! }
- public var SettingsSearch_Synonyms_Calls_Title: String { return self._s[5105]! }
- public var Passport_Identity_ResidenceCountryPlaceholder: String { return self._s[5108]! }
- public var VoiceChat_Panel_TapToJoin: String { return self._s[5109]! }
- public var Map_Home: String { return self._s[5110]! }
- public var PollResults_Title: String { return self._s[5113]! }
+ public var Passport_DeleteAddress: String { return self._s[5101]! }
+ public var Passport_DeletePassportConfirmation: String { return self._s[5102]! }
+ public var Passport_Identity_ReverseSide: String { return self._s[5103]! }
+ public var CheckoutInfo_ErrorEmailInvalid: String { return self._s[5105]! }
+ public var Login_InfoLastNamePlaceholder: String { return self._s[5106]! }
+ public var InviteLink_CreatedBy: String { return self._s[5107]! }
+ public var Passport_FieldAddress: String { return self._s[5108]! }
+ public var SettingsSearch_Synonyms_Calls_Title: String { return self._s[5109]! }
+ public var Passport_Identity_ResidenceCountryPlaceholder: String { return self._s[5112]! }
+ public var VoiceChat_Panel_TapToJoin: String { return self._s[5113]! }
+ public var Map_Home: String { return self._s[5114]! }
+ public var PollResults_Title: String { return self._s[5117]! }
public func InviteLink_OtherPermanentLinkInfo(_ _1: String, _ _2: String) -> (String, [(Int, NSRange)]) {
- return formatWithArgumentRanges(self._s[5114]!, self._r[5114]!, [_1, _2])
+ return formatWithArgumentRanges(self._s[5118]!, self._r[5118]!, [_1, _2])
}
- public var ArchivedChats_IntroText2: String { return self._s[5116]! }
- public var VoiceChat_VideoPreviewTitle: String { return self._s[5117]! }
- public var PasscodeSettings_SimplePasscodeHelp: String { return self._s[5118]! }
- public var VoiceOver_Chat_ContactPhoneNumber: String { return self._s[5119]! }
- public var VoiceChat_Muted: String { return self._s[5121]! }
- public var CallFeedback_ReasonSilentRemote: String { return self._s[5122]! }
- public var Passport_Identity_AddPersonalDetails: String { return self._s[5123]! }
- public var Conversation_AutoremoveActionEnable: String { return self._s[5125]! }
- public var Group_Info_AdminLog: String { return self._s[5126]! }
- public var ChatSettings_AutoPlayTitle: String { return self._s[5127]! }
- public var Appearance_Animations: String { return self._s[5128]! }
- public var Appearance_TextSizeSetting: String { return self._s[5129]! }
- public func Conversation_StatusOnline(_ value: Int32) -> String {
+ public var ArchivedChats_IntroText2: String { return self._s[5120]! }
+ public var VoiceChat_VideoPreviewTitle: String { return self._s[5121]! }
+ public var PasscodeSettings_SimplePasscodeHelp: String { return self._s[5122]! }
+ public var VoiceOver_Chat_ContactPhoneNumber: String { return self._s[5123]! }
+ public var VoiceChat_Muted: String { return self._s[5125]! }
+ public var CallFeedback_ReasonSilentRemote: String { return self._s[5126]! }
+ public var Passport_Identity_AddPersonalDetails: String { return self._s[5127]! }
+ public var Conversation_AutoremoveActionEnable: String { return self._s[5129]! }
+ public var Group_Info_AdminLog: String { return self._s[5130]! }
+ public var ChatSettings_AutoPlayTitle: String { return self._s[5131]! }
+ public var Appearance_Animations: String { return self._s[5132]! }
+ public var Appearance_TextSizeSetting: String { return self._s[5133]! }
+ public func LastSeen_MinutesAgo(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[0 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Watch_UserInfo_Mute(_ value: Int32) -> String {
+ public func OldChannels_InactiveMonth(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[1 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ForwardedPolls(_ value: Int32) -> String {
+ public func ForwardedMessages(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[2 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Contacts_InviteContacts(_ value: Int32) -> String {
+ public func UserCount(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[3 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Call_Hours(_ value: Int32) -> String {
+ public func VoiceOver_Chat_MessagesSelected(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[4 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func AttachmentMenu_SendItem(_ value: Int32) -> String {
+ public func ScheduledIn_Hours(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[5 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ChatList_DeleteConfirmation(_ value: Int32) -> String {
+ public func ServiceMessage_GameScoreSimple(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[6 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Map_ETAHours(_ value: Int32) -> String {
+ public func ScheduledIn_Minutes(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[7 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Media_SharePhoto(_ value: Int32) -> String {
+ public func GroupInfo_ShowMoreMembers(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[8 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Conversation_AutoremoveRemainingDays(_ value: Int32) -> String {
+ public func InviteLink_InviteLinks(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[9 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Stats_MessageForwards(_ value: Int32) -> String {
+ public func Media_SharePhoto(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[10 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func StickerPacks_ArchiveStickerPacksConfirmation(_ value: Int32) -> String {
+ public func InstantPage_Views(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[11 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func InviteLink_PeopleCanJoin(_ value: Int32) -> String {
+ public func VoiceOver_Chat_ContactEmailCount(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[12 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ChatList_MessageVideos(_ value: Int32) -> String {
+ public func ForwardedVideos(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[13 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Call_ShortMinutes(_ value: Int32) -> String {
+ public func InviteLink_PeopleJoined(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[14 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PUSH_MESSAGE_VIDEOS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
+ public func PUSH_MESSAGE_FWDS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
let form = getPluralizationForm(self.lc, selector)
return String(format: self._ps[15 * 6 + Int(form.rawValue)]!, _1, _2)
}
- public func Chat_DeleteMessagesConfirmation(_ value: Int32) -> String {
+ public func ChatList_DeleteConfirmation(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[16 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func GroupInfo_ParticipantCount(_ value: Int32) -> String {
+ public func SharedMedia_DeleteItemsConfirmation(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[17 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func MessageTimer_Days(_ value: Int32) -> String {
+ public func VoiceOver_Chat_ContactPhoneNumberCount(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[18 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func VoiceChat_InviteLink_InviteSpeakers(_ value: Int32) -> String {
+ public func InviteText_ContactsCountText(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[19 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ScheduledIn_Hours(_ value: Int32) -> String {
+ public func InviteLink_PeopleRemaining(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[20 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Notifications_ExceptionMuteExpires_Hours(_ value: Int32) -> String {
+ public func MessageTimer_ShortWeeks(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[21 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func VoiceOver_Chat_PollVotes(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[22 * 6 + Int(form.rawValue)]!, stringValue)
+ public func PUSH_CHAT_MESSAGE_FWDS(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[22 * 6 + Int(form.rawValue)]!, _2, _1, _3)
}
- public func InviteText_ContactsCountText(_ value: Int32) -> String {
+ public func ChatList_MessageVideos(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[23 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ChatListFilter_ShowMoreChats(_ value: Int32) -> String {
+ public func Stats_GroupTopAdminBans(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[24 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func InviteLink_PeopleJoinedShort(_ value: Int32) -> String {
+ public func Conversation_StatusSubscribers(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[25 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func SharedMedia_Link(_ value: Int32) -> String {
+ public func Conversation_MessageViewComments(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[26 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ServiceMessage_GameScoreSelfSimple(_ value: Int32) -> String {
+ public func MessageTimer_Days(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[27 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PUSH_CHAT_MESSAGE_PHOTOS(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[28 * 6 + Int(form.rawValue)]!, _2, _1, _3)
- }
- public func ScheduledIn_Days(_ value: Int32) -> String {
+ public func Wallpaper_DeleteConfirmation(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[29 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func LiveLocation_MenuChatsCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[30 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ForwardedAuthorsOthers(_ selector: Int32, _ _0: String, _ _1: String) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[31 * 6 + Int(form.rawValue)]!, _0, _1)
+ return String(format: self._ps[28 * 6 + Int(form.rawValue)]!, stringValue)
}
public func PUSH_MESSAGES(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[32 * 6 + Int(form.rawValue)]!, _1, _2)
- }
- public func UserCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[33 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[29 * 6 + Int(form.rawValue)]!, _1, _2)
}
public func StickerPack_StickerCount(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[34 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Stats_GroupTopPosterMessages(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[35 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func AttachmentMenu_SendGif(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[36 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func PasscodeSettings_FailedAttempts(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[37 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MuteFor_Hours(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[38 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MessageTimer_Weeks(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[39 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Stats_GroupTopInviterInvites(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[40 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func LiveLocationUpdated_MinutesAgo(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[41 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MuteFor_Days(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[42 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Watch_LastSeen_HoursAgo(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[43 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Conversation_ContextMenuSelectAll(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[44 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Watch_LastSeen_MinutesAgo(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[45 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func InstantPage_Views(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[46 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Stats_GroupShowMoreTopAdmins(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[47 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func SharedMedia_Generic(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[48 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func GroupInfo_ShowMoreMembers(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[49 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func PUSH_MESSAGE_PHOTOS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[50 * 6 + Int(form.rawValue)]!, _1, _2)
- }
- public func AttachmentMenu_SendVideo(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[51 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Call_Minutes(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[52 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func LastSeen_MinutesAgo(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[53 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MuteExpires_Hours(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[54 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ForwardedPhotos(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[55 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func StickerPack_AddStickerCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[56 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Conversation_StatusMembers(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[57 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func OldChannels_InactiveWeek(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[58 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Stats_GroupTopAdminBans(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[59 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func VoiceOver_Chat_UnreadMessages(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[60 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Stats_GroupTopPosterChars(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[61 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ChatList_DeletedChats(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[62 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func DialogList_LiveLocationChatsCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[63 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func PUSH_CHANNEL_MESSAGE_PHOTOS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[64 * 6 + Int(form.rawValue)]!, _1, _2)
- }
- public func SharedMedia_Video(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[65 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func PUSH_MESSAGE_FILES(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[66 * 6 + Int(form.rawValue)]!, _1, _2)
- }
- public func PUSH_CHANNEL_MESSAGE_ROUNDS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[67 * 6 + Int(form.rawValue)]!, _1, _2)
- }
- public func VoiceChat_InviteLink_InviteListeners(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[68 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Stats_GroupTopAdminDeletions(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[69 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ImportStickerPack_StickerCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[70 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Call_Seconds(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[71 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ForwardedVideoMessages(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[72 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ForwardedGifs(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[73 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ServiceMessage_GameScoreSimple(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[74 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func PUSH_MESSAGE_ROUNDS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[75 * 6 + Int(form.rawValue)]!, _1, _2)
- }
- public func Call_ShortSeconds(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[76 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MessageTimer_Seconds(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[77 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Chat_TitlePinnedMessages(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[78 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ScheduledIn_Seconds(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[79 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Media_ShareVideo(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[80 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ForwardedContacts(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[81 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Conversation_ContextViewReplies(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[82 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func PUSH_CHAT_MESSAGE_DOCS_FIX1(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[83 * 6 + Int(form.rawValue)]!, _2, _1, _3)
- }
- public func MessagePoll_QuizCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[84 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MessageTimer_Months(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[85 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func SharedMedia_File(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[86 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Stats_GroupShowMoreTopPosters(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[87 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Notifications_ExceptionMuteExpires_Days(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[88 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Conversation_StatusSubscribers(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[89 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func PollResults_ShowMore(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[90 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Forward_ConfirmMultipleFiles(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[91 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func VoiceOver_Chat_ContactEmailCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[92 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func OldChannels_InactiveYear(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[93 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Conversation_TitleReplies(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[94 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Stats_GroupShowMoreTopInviters(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[95 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func AttachmentMenu_SendPhoto(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[96 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MessagePoll_VotedCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[97 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MessageTimer_ShortWeeks(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[98 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func SharedMedia_Photo(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[99 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func VoiceOver_Chat_MessagesSelected(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[100 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Conversation_MessageViewComments(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[101 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Conversation_TitleComments(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[102 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MessageTimer_ShortHours(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[103 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func PUSH_CHANNEL_MESSAGE_FWDS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[104 * 6 + Int(form.rawValue)]!, _1, _2)
- }
- public func Theme_UsersCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[105 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ScheduledIn_Years(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[106 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ChatList_SelectedChats(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[107 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Map_ETAMinutes(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[108 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func StickerPack_RemoveMaskCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[109 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func VoiceChat_Status_Members(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[110 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ForwardedFiles(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[111 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Passport_Scans(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[112 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Call_Days(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[113 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ForwardedAudios(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[114 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MessageTimer_Hours(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[115 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Invitation_Members(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[116 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ForwardedLocations(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[117 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ChatList_Search_Messages(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[118 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func MuteExpires_Minutes(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[119 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func VoiceOver_Chat_PollOptionCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[120 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func OldChannels_GroupFormat(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[121 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ScheduledIn_Minutes(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[122 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func ScheduledIn_Weeks(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[123 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func InviteLink_PeopleJoined(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[124 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[30 * 6 + Int(form.rawValue)]!, stringValue)
}
public func MessageTimer_ShortDays(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[125 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[31 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PUSH_CHAT_MESSAGE_VIDEOS(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
+ public func VoiceChat_Status_Members(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[32 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func StickerPack_AddMaskCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[33 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func SharedMedia_File(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[34 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ChatList_DeletedChats(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[35 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Stats_GroupTopInviterInvites(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[36 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ChatList_MessageFiles(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[37 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Forward_ConfirmMultipleFiles(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[38 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ScheduledIn_Days(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[39 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Stats_GroupTopAdminKicks(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[40 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func LiveLocation_MenuChatsCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[41 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func StickerPack_RemoveMaskCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[42 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PrivacyLastSeenSettings_AddUsers(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[43 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PasscodeSettings_FailedAttempts(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[44 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ForwardedStickers(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[45 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ImportStickerPack_StickerCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[46 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Chat_DeleteMessagesConfirmation(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[47 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ServiceMessage_GameScoreExtended(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[48 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PUSH_CHANNEL_MESSAGE_FWDS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[126 * 6 + Int(form.rawValue)]!, _2, _1, _3)
+ return String(format: self._ps[49 * 6 + Int(form.rawValue)]!, _1, _2)
}
- public func Notifications_ExceptionMuteExpires_Minutes(_ value: Int32) -> String {
+ public func StickerPack_RemoveStickerCount(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[127 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[50 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Conversation_LiveLocationMembersCount(_ value: Int32) -> String {
+ public func SharedMedia_Video(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[128 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[51 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func MessageTimer_ShortMinutes(_ value: Int32) -> String {
+ public func ForwardedPolls(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[129 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[52 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ChatList_MessagePhotos(_ value: Int32) -> String {
+ public func Stats_GroupTopPosterChars(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[130 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[53 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Notification_GameScoreExtended(_ value: Int32) -> String {
+ public func MessageTimer_ShortHours(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[131 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[54 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Notification_GameScoreSelfSimple(_ value: Int32) -> String {
+ public func Conversation_TitleComments(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[132 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[55 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Conversation_StatusMembers(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[56 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Chat_TitlePinnedMessages(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[57 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func SharedMedia_Photo(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[58 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Invitation_Members(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[59 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PeopleNearby_ShowMorePeople(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[60 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func MessagePoll_VotedCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[61 * 6 + Int(form.rawValue)]!, stringValue)
}
public func VoiceChat_Panel_Members(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[62 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Call_Seconds(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[63 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func AttachmentMenu_SendVideo(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[64 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ScheduledIn_Seconds(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[65 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func SharedMedia_Generic(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[66 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ForwardedVideoMessages(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[67 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func MessageTimer_Hours(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[68 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Stats_GroupShowMoreTopAdmins(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[69 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Conversation_SelectedMessages(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[70 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PUSH_CHAT_MESSAGE_PHOTOS(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[71 * 6 + Int(form.rawValue)]!, _2, _1, _3)
+ }
+ public func MessageTimer_ShortSeconds(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[72 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func MessagePoll_QuizCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[73 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Watch_UserInfo_Mute(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[74 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Notifications_ExceptionMuteExpires_Hours(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[75 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ScheduledIn_Months(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[76 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ChatList_Search_Messages(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[77 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PUSH_CHANNEL_MESSAGE_VIDEOS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[78 * 6 + Int(form.rawValue)]!, _1, _2)
+ }
+ public func ForwardedFiles(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[79 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Conversation_ContextMenuSelectAll(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[80 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Notifications_ExceptionMuteExpires_Days(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[81 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func VoiceChat_InviteLink_InviteSpeakers(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[82 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Conversation_AutoremoveRemainingDays(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[83 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func InviteLink_PeopleJoinedShort(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[84 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Notifications_Exceptions(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[85 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Stats_GroupTopAdminDeletions(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[86 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func MessageTimer_Seconds(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[87 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func OldChannels_InactiveWeek(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[88 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PUSH_CHAT_MESSAGE_ROUNDS(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[89 * 6 + Int(form.rawValue)]!, _2, _1, _3)
+ }
+ public func Notification_GameScoreSelfExtended(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[90 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func InviteLink_PeopleCanJoin(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[91 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PUSH_CHANNEL_MESSAGE_PHOTOS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[92 * 6 + Int(form.rawValue)]!, _1, _2)
+ }
+ public func PUSH_CHAT_MESSAGES(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[93 * 6 + Int(form.rawValue)]!, _2, _1, _3)
+ }
+ public func Stats_GroupShowMoreTopInviters(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[94 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Call_Days(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[95 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ChatList_SelectedChats(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[96 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Conversation_LiveLocationMembersCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[97 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PUSH_MESSAGE_ROUNDS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[98 * 6 + Int(form.rawValue)]!, _1, _2)
+ }
+ public func PUSH_MESSAGE_PHOTOS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[99 * 6 + Int(form.rawValue)]!, _1, _2)
+ }
+ public func AttachmentMenu_SendItem(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[100 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Notification_GameScoreExtended(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[101 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Conversation_StatusOnline(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[102 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Call_ShortMinutes(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[103 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ScheduledIn_Weeks(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[104 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func SharedMedia_Link(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[105 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PUSH_CHAT_MESSAGE_VIDEOS(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[106 * 6 + Int(form.rawValue)]!, _2, _1, _3)
+ }
+ public func StickerPack_AddStickerCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[107 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func CreatePoll_AddMoreOptions(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[108 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Contacts_ImportersCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[109 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Call_Hours(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[110 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Watch_LastSeen_HoursAgo(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[111 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func MuteExpires_Minutes(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[112 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Notification_GameScoreSelfSimple(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[113 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func MuteExpires_Hours(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[114 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PUSH_MESSAGE_FILES(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[115 * 6 + Int(form.rawValue)]!, _1, _2)
+ }
+ public func Call_ShortSeconds(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[116 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func MessageTimer_ShortMinutes(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[117 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ChatList_MessagePhotos(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[118 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func AttachmentMenu_SendGif(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[119 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Map_ETAMinutes(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[120 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Call_Minutes(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[121 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ScheduledIn_Years(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[122 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Notifications_ExceptionMuteExpires_Minutes(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[123 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Passport_Scans(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[124 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func ChatList_MessageMusic(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[125 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Stats_MessageViews(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[126 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PUSH_CHAT_MESSAGE_DOCS_FIX1(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[127 * 6 + Int(form.rawValue)]!, _2, _1, _3)
+ }
+ public func ChatListFilter_ShowMoreChats(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[128 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func DialogList_LiveLocationChatsCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[129 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func AttachmentMenu_SendPhoto(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[130 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func PollResults_ShowMore(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[131 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Conversation_ContextViewReplies(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[132 * 6 + Int(form.rawValue)]!, stringValue)
+ }
+ public func Notification_GameScoreSimple(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[133 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func InviteLink_InviteLinks(_ value: Int32) -> String {
+ public func MessageTimer_Minutes(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[134 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ForwardedVideos(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[135 * 6 + Int(form.rawValue)]!, stringValue)
+ public func ForwardedAuthorsOthers(_ selector: Int32, _ _0: String, _ _1: String) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[135 * 6 + Int(form.rawValue)]!, _0, _1)
}
public func QuickSend_Photos(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[136 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PUSH_MESSAGE_FWDS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[137 * 6 + Int(form.rawValue)]!, _1, _2)
+ public func Theme_UsersCount(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[137 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func MessageTimer_Years(_ value: Int32) -> String {
+ public func MessageTimer_Weeks(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[138 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ServiceMessage_GameScoreExtended(_ value: Int32) -> String {
+ public func Contacts_InviteContacts(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[139 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Wallpaper_DeleteConfirmation(_ value: Int32) -> String {
+ public func OldChannels_Leave(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[140 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func InviteLink_PeopleRemaining(_ value: Int32) -> String {
+ public func ForwardedGifs(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[141 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func MuteExpires_Days(_ value: Int32) -> String {
+ public func VoiceOver_Chat_PollOptionCount(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[142 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Notifications_Exceptions(_ value: Int32) -> String {
+ public func LastSeen_HoursAgo(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[143 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Notification_GameScoreSimple(_ value: Int32) -> String {
+ public func OldChannels_GroupFormat(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[144 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PUSH_CHANNEL_MESSAGES(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[145 * 6 + Int(form.rawValue)]!, _1, _2)
+ public func ForwardedContacts(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[145 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Stats_MessageViews(_ value: Int32) -> String {
+ public func MessageTimer_Years(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[146 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PUSH_CHAT_MESSAGE_ROUNDS(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[147 * 6 + Int(form.rawValue)]!, _2, _1, _3)
- }
- public func MessageTimer_Minutes(_ value: Int32) -> String {
+ public func ServiceMessage_GameScoreSelfSimple(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[148 * 6 + Int(form.rawValue)]!, stringValue)
+ return String(format: self._ps[147 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ForwardedStickers(_ value: Int32) -> String {
+ public func PUSH_MESSAGE_VIDEOS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[148 * 6 + Int(form.rawValue)]!, _1, _2)
+ }
+ public func MessageTimer_Months(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[149 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Contacts_ImportersCount(_ value: Int32) -> String {
+ public func VoiceChat_InviteLink_InviteListeners(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[150 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func OldChannels_InactiveMonth(_ value: Int32) -> String {
+ public func Media_ShareItem(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[151 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ChatList_MessageMusic(_ value: Int32) -> String {
+ public func GroupInfo_ParticipantCount(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[152 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func OldChannels_Leave(_ value: Int32) -> String {
+ public func Watch_LastSeen_MinutesAgo(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[153 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PrivacyLastSeenSettings_AddUsers(_ value: Int32) -> String {
+ public func MuteExpires_Days(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[154 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PUSH_CHAT_MESSAGE_FWDS(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[155 * 6 + Int(form.rawValue)]!, _2, _1, _3)
+ public func Chat_MessagesUnpinned(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[155 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func MessageTimer_ShortSeconds(_ value: Int32) -> String {
+ public func Stats_GroupTopPosterMessages(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[156 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PeopleNearby_ShowMorePeople(_ value: Int32) -> String {
+ public func LiveLocationUpdated_MinutesAgo(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[157 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Conversation_SelectedMessages(_ value: Int32) -> String {
+ public func Stats_MessageForwards(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[158 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ChatList_MessageFiles(_ value: Int32) -> String {
+ public func VoiceOver_Chat_PollVotes(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[159 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ServiceMessage_GameScoreSelfExtended(_ value: Int32) -> String {
+ public func Map_ETAHours(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[160 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ForwardedMessages(_ value: Int32) -> String {
+ public func ServiceMessage_GameScoreSelfExtended(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[161 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func StickerPacks_DeleteStickerPacksConfirmation(_ value: Int32) -> String {
+ public func OldChannels_InactiveYear(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[162 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func SharedMedia_DeleteItemsConfirmation(_ value: Int32) -> String {
+ public func Media_ShareVideo(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[163 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PUSH_CHANNEL_MESSAGE_VIDEOS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[164 * 6 + Int(form.rawValue)]!, _1, _2)
+ public func Stats_GroupShowMoreTopPosters(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[164 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func PUSH_CHAT_MESSAGES(_ selector: Int32, _ _2: String, _ _1: String, _ _3: Int32) -> String {
- let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[165 * 6 + Int(form.rawValue)]!, _2, _1, _3)
+ public func MuteFor_Hours(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[165 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func ScheduledIn_Months(_ value: Int32) -> String {
+ public func MuteFor_Days(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[166 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func StickerPack_RemoveStickerCount(_ value: Int32) -> String {
+ public func StickerPacks_ArchiveStickerPacksConfirmation(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[167 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func StickerPack_AddMaskCount(_ value: Int32) -> String {
+ public func ForwardedAudios(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[168 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func CreatePoll_AddMoreOptions(_ value: Int32) -> String {
+ public func ForwardedPhotos(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[169 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Chat_MessagesUnpinned(_ value: Int32) -> String {
+ public func VoiceOver_Chat_UnreadMessages(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[170 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func LastSeen_HoursAgo(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[171 * 6 + Int(form.rawValue)]!, stringValue)
+ public func PUSH_CHANNEL_MESSAGE_ROUNDS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[171 * 6 + Int(form.rawValue)]!, _1, _2)
}
- public func Notification_GameScoreSelfExtended(_ value: Int32) -> String {
+ public func ForwardedLocations(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[172 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func Media_ShareItem(_ value: Int32) -> String {
+ public func StickerPacks_DeleteStickerPacksConfirmation(_ value: Int32) -> String {
let form = getPluralizationForm(self.lc, value)
let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
return String(format: self._ps[173 * 6 + Int(form.rawValue)]!, stringValue)
}
- public func VoiceOver_Chat_ContactPhoneNumberCount(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[174 * 6 + Int(form.rawValue)]!, stringValue)
- }
- public func Stats_GroupTopAdminKicks(_ value: Int32) -> String {
- let form = getPluralizationForm(self.lc, value)
- let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
- return String(format: self._ps[175 * 6 + Int(form.rawValue)]!, stringValue)
+ public func PUSH_CHANNEL_MESSAGES(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
+ let form = getPluralizationForm(self.lc, selector)
+ return String(format: self._ps[174 * 6 + Int(form.rawValue)]!, _1, _2)
}
public func PUSH_CHANNEL_MESSAGE_DOCS(_ selector: Int32, _ _1: String, _ _2: Int32) -> String {
let form = getPluralizationForm(self.lc, selector)
- return String(format: self._ps[176 * 6 + Int(form.rawValue)]!, _1, _2)
+ return String(format: self._ps[175 * 6 + Int(form.rawValue)]!, _1, _2)
+ }
+ public func Conversation_TitleReplies(_ value: Int32) -> String {
+ let form = getPluralizationForm(self.lc, value)
+ let stringValue = presentationStringsFormattedNumber(value, self.groupingSeparator)
+ return String(format: self._ps[176 * 6 + Int(form.rawValue)]!, stringValue)
}
public init(primaryComponent: PresentationStringsComponent, secondaryComponent: PresentationStringsComponent?, groupingSeparator: String) {
diff --git a/submodules/TelegramUI/Resources/Fonts/AremacFS-Regular.otf b/submodules/TelegramUI/Resources/Fonts/AremacFS-Regular.otf
new file mode 100644
index 0000000000..bb02badf76
Binary files /dev/null and b/submodules/TelegramUI/Resources/Fonts/AremacFS-Regular.otf differ
diff --git a/submodules/TelegramUI/Resources/Fonts/AremacFS-Semibold.otf b/submodules/TelegramUI/Resources/Fonts/AremacFS-Semibold.otf
new file mode 100644
index 0000000000..ae36bb6c9f
Binary files /dev/null and b/submodules/TelegramUI/Resources/Fonts/AremacFS-Semibold.otf differ
diff --git a/submodules/TelegramUI/Resources/PresentationStrings.mapping b/submodules/TelegramUI/Resources/PresentationStrings.mapping
index 72fa0b81fc..d07b105905 100644
Binary files a/submodules/TelegramUI/Resources/PresentationStrings.mapping and b/submodules/TelegramUI/Resources/PresentationStrings.mapping differ
diff --git a/submodules/TelegramUI/Sources/ChatMessageInstantVideoItemNode.swift b/submodules/TelegramUI/Sources/ChatMessageInstantVideoItemNode.swift
index 9dc3b1afb5..a246100830 100644
--- a/submodules/TelegramUI/Sources/ChatMessageInstantVideoItemNode.swift
+++ b/submodules/TelegramUI/Sources/ChatMessageInstantVideoItemNode.swift
@@ -19,7 +19,7 @@ private let nameFont = Font.medium(14.0)
private let inlineBotPrefixFont = Font.regular(14.0)
private let inlineBotNameFont = nameFont
-class ChatMessageInstantVideoItemNode: ChatMessageItemView {
+class ChatMessageInstantVideoItemNode: ChatMessageItemView, UIGestureRecognizerDelegate {
let contextSourceNode: ContextExtractedContentContainingNode
private let containerNode: ContextControllerSourceNode
private let interactiveVideoNode: ChatMessageInteractiveInstantVideoNode
@@ -53,6 +53,8 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
private var recognizer: TapLongTapOrDoubleTapGestureRecognizer?
+ private var seekRecognizer: UIPanGestureRecognizer?
+
private var currentSwipeAction: ChatControllerInteractionSwipeAction?
override var visibility: ListViewItemNodeVisibility {
@@ -171,6 +173,12 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
return false
}
self.view.addGestureRecognizer(replyRecognizer)
+
+ let seekRecognizer = UIPanGestureRecognizer(target: self, action: #selector(self.seekGesture(_:)))
+ seekRecognizer.isEnabled = false
+ seekRecognizer.delegate = self
+ self.seekRecognizer = seekRecognizer
+ self.interactiveVideoNode.view.addGestureRecognizer(seekRecognizer)
}
override func updateAccessibilityData(_ accessibilityData: ChatMessageAccessibilityData) {
@@ -326,9 +334,11 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
var isPlaying = false
var displaySize = layoutConstants.instantVideo.dimensions
let maximumDisplaySize = CGSize(width: params.width - 20.0, height: params.width - 20.0)
+ var effectiveAvatarInset = avatarInset
if item.associatedData.currentlyPlayingMessageId == item.message.index {
isPlaying = true
displaySize = maximumDisplaySize
+ effectiveAvatarInset = 0.0
}
var automaticDownload = true
@@ -345,7 +355,7 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
let (videoLayout, videoApply) = makeVideoLayout(ChatMessageBubbleContentItem(context: item.context, controllerInteraction: item.controllerInteraction, message: item.message, read: item.read, chatLocation: item.chatLocation, presentationData: item.presentationData, associatedData: item.associatedData, attributes: item.content.firstMessageAttributes, isItemPinned: item.message.tags.contains(.pinned) && !isReplyThread, isItemEdited: false), params.width - params.leftInset - params.rightInset - avatarInset, displaySize, maximumDisplaySize, isPlaying ? 1.0 : 0.0, .free, automaticDownload)
- let videoFrame = CGRect(origin: CGPoint(x: (incoming ? (params.leftInset + layoutConstants.bubble.edgeInset + avatarInset + layoutConstants.bubble.contentInsets.left) : (params.width - params.rightInset - videoLayout.contentSize.width - layoutConstants.bubble.edgeInset - layoutConstants.bubble.contentInsets.left - deliveryFailedInset)), y: 0.0), size: videoLayout.contentSize)
+ let videoFrame = CGRect(origin: CGPoint(x: (incoming ? (params.leftInset + layoutConstants.bubble.edgeInset + effectiveAvatarInset + layoutConstants.bubble.contentInsets.left) : (params.width - params.rightInset - videoLayout.contentSize.width - layoutConstants.bubble.edgeInset - layoutConstants.bubble.contentInsets.left - deliveryFailedInset)), y: 0.0), size: videoLayout.contentSize)
var viaBotApply: (TextNodeLayout, () -> TextNode)?
var replyInfoApply: (CGSize, () -> ChatMessageReplyInfoNode)?
@@ -526,8 +536,6 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
strongSelf.updateAccessibilityData(accessibilityData)
-
-
let videoLayoutData: ChatMessageInstantVideoItemLayoutData
if incoming {
videoLayoutData = .constrained(left: 0.0, right: max(0.0, availableContentWidth - videoFrame.width))
@@ -541,6 +549,9 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
videoApply(videoLayoutData, transition)
}
+ strongSelf.interactiveVideoNode.view.disablesInteractiveTransitionGestureRecognizer = isPlaying
+ strongSelf.seekRecognizer?.isEnabled = isPlaying
+
strongSelf.contextSourceNode.contentRect = videoFrame
strongSelf.containerNode.targetNodeForActivationProgressContentRect = strongSelf.contextSourceNode.contentRect
@@ -854,6 +865,30 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
}
}
+ override func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
+ if let panGestureRecognizer = gestureRecognizer as? UIPanGestureRecognizer, panGestureRecognizer === self.seekRecognizer {
+ let velocity = panGestureRecognizer.velocity(in: self.interactiveVideoNode.view)
+ return velocity.x > velocity.y
+ }
+ return true
+ }
+
+ private var wasPlaying = false
+ @objc func seekGesture(_ recognizer: UIPanGestureRecognizer) {
+ var location = recognizer.location(in: self.interactiveVideoNode.view)
+ switch recognizer.state {
+ case .began:
+ self.interactiveVideoNode.pause()
+ case .changed:
+ self.interactiveVideoNode.seekTo(Double(location.x / self.interactiveVideoNode.bounds.size.width))
+ case .ended, .cancelled:
+ self.interactiveVideoNode.seekTo(Double(location.x / self.interactiveVideoNode.bounds.size.width))
+ self.interactiveVideoNode.play()
+ default:
+ break
+ }
+ }
+
@objc func swipeToReplyGesture(_ recognizer: ChatSwipeToReplyRecognizer) {
switch recognizer.state {
case .began:
@@ -1087,6 +1122,7 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
let targetSize: CGSize
let animationProgress: CGFloat = (currentValue - initialHeight) / (targetHeight - initialHeight)
let scaleProgress: CGFloat
+ var effectiveAvatarInset = avatarInset
if currentValue < targetHeight {
initialSize = displaySize
targetSize = maximumDisplaySize
@@ -1100,12 +1136,13 @@ class ChatMessageInstantVideoItemNode: ChatMessageItemView {
targetSize = initialSize
scaleProgress = isPlaying ? 1.0 : 0.0
}
+ effectiveAvatarInset *= (1.0 - scaleProgress)
displaySize = CGSize(width: initialSize.width + (targetSize.width - initialSize.width) * animationProgress, height: initialSize.height + (targetSize.height - initialSize.height) * animationProgress)
let (videoLayout, videoApply) = makeVideoLayout(ChatMessageBubbleContentItem(context: item.context, controllerInteraction: item.controllerInteraction, message: item.message, read: item.read, chatLocation: item.chatLocation, presentationData: item.presentationData, associatedData: item.associatedData, attributes: item.content.firstMessageAttributes, isItemPinned: item.message.tags.contains(.pinned) && !isReplyThread, isItemEdited: false), params.width - params.leftInset - params.rightInset - avatarInset, displaySize, maximumDisplaySize, scaleProgress, .free, self.appliedAutomaticDownload)
let availableContentWidth = params.width - params.leftInset - params.rightInset - layoutConstants.bubble.edgeInset * 2.0 - avatarInset - layoutConstants.bubble.contentInsets.left
- let videoFrame = CGRect(origin: CGPoint(x: (incoming ? (params.leftInset + layoutConstants.bubble.edgeInset + avatarInset + layoutConstants.bubble.contentInsets.left) : (params.width - params.rightInset - videoLayout.contentSize.width - layoutConstants.bubble.edgeInset - layoutConstants.bubble.contentInsets.left - deliveryFailedInset)), y: 0.0), size: videoLayout.contentSize)
+ let videoFrame = CGRect(origin: CGPoint(x: (incoming ? (params.leftInset + layoutConstants.bubble.edgeInset + effectiveAvatarInset + layoutConstants.bubble.contentInsets.left) : (params.width - params.rightInset - videoLayout.contentSize.width - layoutConstants.bubble.edgeInset - layoutConstants.bubble.contentInsets.left - deliveryFailedInset)), y: 0.0), size: videoLayout.contentSize)
self.interactiveVideoNode.frame = videoFrame
let videoLayoutData: ChatMessageInstantVideoItemLayoutData
diff --git a/submodules/TelegramUI/Sources/ChatMessageInteractiveInstantVideoNode.swift b/submodules/TelegramUI/Sources/ChatMessageInteractiveInstantVideoNode.swift
index b263ed4117..f5f84b52b3 100644
--- a/submodules/TelegramUI/Sources/ChatMessageInteractiveInstantVideoNode.swift
+++ b/submodules/TelegramUI/Sources/ChatMessageInteractiveInstantVideoNode.swift
@@ -317,7 +317,7 @@ class ChatMessageInteractiveInstantVideoNode: ASDisplayNode {
strongSelf.videoFrame = displayVideoFrame
strongSelf.secretProgressIcon = secretProgressIcon
strongSelf.automaticDownload = automaticDownload
-
+
if let updatedInfoBackgroundImage = updatedInfoBackgroundImage {
strongSelf.infoBackgroundNode.image = updatedInfoBackgroundImage
}
@@ -832,6 +832,20 @@ class ChatMessageInteractiveInstantVideoNode: ASDisplayNode {
}
}
+ func seekTo(_ position: Double) {
+ if let duration = self.playbackStatusNode?.duration {
+ self.videoNode?.seek(position * duration)
+ }
+ }
+
+ func play() {
+ self.videoNode?.play()
+ }
+
+ func pause() {
+ self.videoNode?.pause()
+ }
+
func playMediaWithSound() -> (action: (Double?) -> Void, soundEnabled: Bool, isVideoMessage: Bool, isUnread: Bool, badgeNode: ASDisplayNode?)? {
if let item = self.item {
var isUnconsumed = false
diff --git a/submodules/TelegramUI/Sources/InstantVideoRadialStatusNode.swift b/submodules/TelegramUI/Sources/InstantVideoRadialStatusNode.swift
index ff02ac1547..9e4768f70a 100644
--- a/submodules/TelegramUI/Sources/InstantVideoRadialStatusNode.swift
+++ b/submodules/TelegramUI/Sources/InstantVideoRadialStatusNode.swift
@@ -40,6 +40,14 @@ final class InstantVideoRadialStatusNode: ASDisplayNode {
private var statusDisposable: Disposable?
private var statusValuePromise = Promise()
+ var duration: Double? {
+ if let statusValue = self.statusValue {
+ return statusValue.duration
+ } else {
+ return nil
+ }
+ }
+
var status: Signal? {
didSet {
if let status = self.status {