title: Portugal

text: The country has also achieved notable performances in sports including fencing, judo, kitesurf, rowing, sailing, surfing, shooting, taekwondo, triathlon and windsurfing, winning several European and world titles. Portugal's paralympic athletes have also won many medals in sports including swimming, boccia, athletics, mixed martial arts and wrestling.


title: Portugal

text: In motorsport, Portugal is internationally noted for the Rally of Portugal, and the Estoril and Algarve Circuits as well as the revived Porto Street Circuit which holds a stage of the WTCC every two years, as well as for a number of internationally noted pilots and racers such as Miguel Oliveira, Tiago Monteiro, António Félix da Costa, Filipe Albuquerque, Pedro Lamy, Armindo Araújo and others in a wide range of varied motorsports.


title: Portugal

text: In equestrian sports, Portugal won the only Horseball-Pato World Championship in 2006 achieved the third position in the First Horseball World Cup and has achieved several victories in the European Working Equitation Championship.


title: Portugal

text: In water sports, Portugal has three major sports: swimming, water polo and surfing. Most recently, Portugal had success in canoeing with several world and European champions, such as olympic medalists. Annually, the country also hosts one of the stages of the World Surf League men's and women's "Championship Tour", the MEO Rip Curl Pro Portugal at the Supertubos in Peniche.


title: Portugal

text: Northern Portugal has its own original martial art, "Jogo do Pau", in which the fighters use staffs to confront one or several opponents. Other popular sport-related recreational outdoor activities with thousands of enthusiasts nationwide include airsoft, fishing, golf, hiking, hunting and orienteering.


title: Portugal

text: Portugal is one of the world's best golf destinations. It has received several awards by the World Golf Awards.


title: Portugal

text: High-profile, successful competitive athleticism and sportsmanship in Portugal can be traced back to the time of Ancient Rome. Gaius Appuleius Diocles (104after 146 AD) was a noteworthy charioteer born in Lamego who became one of the most celebrated athletes in ancient history. He is often cited as the highest-paid athlete of all time.


title: C (programming language)

text: C ("pronounced like the letter c") is a general-purpose computer programming language. It was created in the 1970s by Dennis Ritchie, and remains very widely used and influential. By design, C's features cleanly reflect the capabilities of the targeted CPUs. It has found lasting use in operating systems, device drivers, protocol stacks, though decreasingly for application software. C is commonly used on computer architectures that range from the largest supercomputers to the smallest microcontrollers and embedded systems.


title: C (programming language)

text: A successor to the programming language B, C was originally developed at Bell Labs by Ritchie between 1972 and 1973 to construct utilities running on Unix. It was applied to re-implementing the kernel of the Unix operating system. During the 1980s, C gradually gained popularity. It has become one of the most widely used programming languages, with C compilers available for practically all modern computer architectures and operating systems. C has been standardized by ANSI since 1989 (ANSI C) and by the International Organization for Standardization (ISO).


title: C (programming language)

text: C is an imperative procedural language, supporting structured programming, lexical variable scope and recursion, with a static type system. It was designed to be compiled to provide low-level access to memory and language constructs that map efficiently to machine instructions, all with minimal runtime support. Despite its low-level capabilities, the language was designed to encourage cross-platform programming. A standards-compliant C program written with portability in mind can be compiled for a wide variety of computer platforms and operating systems with few changes to its source code.


title: C (programming language)

text: Since 2000, C has consistently ranked among the top two languages in the TIOBE index, a measure of the popularity of programming languages.


title: C (programming language)

text: C is an imperative, procedural language in the ALGOL tradition. It has a static type system. In C, all executable code is contained within subroutines (also called "functions", though not in the sense of functional programming). Function parameters are passed by value, although arrays are passed as pointers, i.e. the address of the first item in the array. "Pass-by-reference" is simulated in C by explicitly passing pointers to the thing being referenced.


title: C (programming language)

text: C program source text is free-format, using the semicolon as a statement separator and curly braces for grouping blocks of statements.


title: C (programming language)

text: While C does not include certain features found in other languages (such as object orientation and garbage collection), these can be implemented or emulated, often through the use of external libraries (e.g., the GLib Object System or the Boehm garbage collector).


title: C (programming language)

text: Many later languages have borrowed directly or indirectly from C, including C++, C#, Unix's C shell, D, Go, Java, JavaScript (including transpilers), Julia, Limbo, LPC, Objective-C, Perl, PHP, Python, Ruby, Rust, Swift, Verilog and SystemVerilog (hardware description languages). These languages have drawn many of their control structures and other basic features from C. Most of them (Python being a dramatic exception) also express highly similar syntax to C, and they tend to combine the recognizable expression and statement syntax of C with underlying type systems, data models, and semantics that can be radically different.


title: C (programming language)

text: The origin of C is closely tied to the development of the Unix operating system, originally implemented in assembly language on a PDP-7 by Dennis Ritchie and Ken Thompson, incorporating several ideas from colleagues. Eventually, they decided to port the operating system to a PDP-11. The original PDP-11 version of Unix was also developed in assembly language.


title: C (programming language)

text: Thompson desired a programming language to make utilities for the new platform. At first, he tried to make a Fortran compiler, but soon gave up the idea. Instead, he created a cut-down version of the recently developed BCPL systems programming language. The official description of BCPL was not available at the time, and Thompson modified the syntax to be less wordy, and similar to a simplified ALGOL known as SMALGOL. The result was what Thompson called B. He described B as "BCPL semantics with a lot of SMALGOL syntax". Like BCPL, B had a bootstrapping compiler to facilitate porting to new machines. However, few utilities were ultimately written in B because it was too slow, and could not take advantage of PDP-11 features such as byte addressability.


title: C (programming language)

text: In 1971, Ritchie started to improve B, to utilise the features of the more-powerful PDP-11. A significant addition was a character type. He called this "New B". Thompson started to use NB to write the Unix kernel, and his requirements shaped the direction of the language development. Through to 1972, richer types were added to the NB language: NB had arrays of codice_12 and codice_13. Pointers, the ability to generate pointers to other types, arrays of all types, and types to be returned from functions were all also added. Arrays within expressions became pointers. A new compiler was written, and the language was renamed C.


title: C (programming language)

text: The C compiler and some utilities made with it were included in Version 2 Unix, which is also known as Research Unix.


title: C (programming language)

text: At Version 4 Unix, released in November 1973, the Unix kernel was extensively re-implemented in C. By this time, the C language had acquired some powerful features such as codice_6 types.


title: C (programming language)

text: The preprocessor was introduced around 1973 at the urging of Alan Snyder and also in recognition of the usefulness of the file-inclusion mechanisms available in BCPL and PL/I. Its original version provided only included files and simple string replacements: codice_15 and codice_16 of parameterless macros. Soon after that, it was extended, mostly by Mike Lesk and then by John Reiser, to incorporate macros with arguments and conditional compilation.


title: C (programming language)

text: Unix was one of the first operating system kernels implemented in a language other than assembly. Earlier instances include the Multics system (which was written in PL/I) and Master Control Program (MCP) for the Burroughs B5000 (which was written in ALGOL) in 1961. In around 1977, Ritchie and Stephen C. Johnson made further changes to the language to facilitate portability of the Unix operating system. Johnson's Portable C Compiler served as the basis for several implementations of C on new platforms.


title: C (programming language)

text: In 1978, Brian Kernighan and Dennis Ritchie published the first edition of "The C Programming Language". This book, known to C programmers as "K&R", served for many years as an informal specification of the language. The version of C that it describes is commonly referred to as "K&R C". As this was released in 1978, it is also referred to as "C78". The second edition of the book covers the later ANSI C standard, described below.


title: C (programming language)

text: Even after the publication of the 1989 ANSI standard, for many years K&R C was still considered the "lowest common denominator" to which C programmers restricted themselves when maximum portability was desired, since many older compilers were still in use, and because carefully written K&R C code can be legal Standard C as well.


title: C (programming language)

text: In early versions of C, only functions that return types other than codice_12 must be declared if used before the function definition; functions used without prior declaration were presumed to return type codice_12.


title: C (programming language)

text: long some_function(); /* This is a function declaration, so the compiler can know the name and return type of this function. */


title: C (programming language)

text: /* int */ other_function(); /* Another function declaration. There is an implicit 'int' type here since we're talking about early version of C. It's commented out here to show where it could go in later variants. */


title: C (programming language)

text: /* int */ calling_function() /* this is a function definition, including the body of the code following in the { curly brackets } the return type is 'int', but this is implicit so no need to state 'int' when using this early version of C */


title: C (programming language)

text: The codice_12 type specifiers which are commented out could be omitted in K&R C, but are required in later standards.


title: C (programming language)

text: Since K&R function declarations did not include any information about function arguments, function parameter type checks were not performed, although some compilers would issue a warning message if a local function was called with the wrong number of arguments, or if multiple calls to an external function used different numbers or types of arguments. Separate tools such as Unix's lint utility were developed that (among other things) could check for consistency of function use across multiple source files.


title: C (programming language)

text: In the years following the publication of K&R C, several features were added to the language, supported by compilers from AT&T (in particular PCC) and some other vendors. These included:


title: C (programming language)

text: The large number of extensions and lack of agreement on a standard library, together with the language popularity and the fact that not even the Unix compilers precisely implemented the K&R specification, led to the necessity of standardization.


title: C (programming language)

text: During the late 1970s and 1980s, versions of C were implemented for a wide variety of mainframe computers, minicomputers, and microcomputers, including the IBM PC, as its popularity began to increase significantly.


title: C (programming language)

text: In 1983, the American National Standards Institute (ANSI) formed a committee, X3J11, to establish a standard specification of C. X3J11 based the C standard on the Unix implementation; however, the non-portable portion of the Unix C library was handed off to the IEEE working group 1003 to become the basis for the 1988 POSIX standard. In 1989, the C standard was ratified as ANSI X3.159-1989 "Programming Language C". This version of the language is often referred to as ANSI C, Standard C, or sometimes C89.


title: C (programming language)

text: In 1990, the ANSI C standard (with formatting changes) was adopted by the International Organization for Standardization (ISO) as ISO/IEC 9899:1990, which is sometimes called C90. Therefore, the terms "C89" and "C90" refer to the same programming language.


title: C (programming language)

text: ANSI, like other national standards bodies, no longer develops the C standard independently, but defers to the international C standard, maintained by the working group ISO/IEC JTC1/SC22/WG14. National adoption of an update to the international standard typically occurs within a year of ISO publication.


title: C (programming language)

text: One of the aims of the C standardization process was to produce a superset of K&R C, incorporating many of the subsequently introduced unofficial features. The standards committee also included several additional features such as function prototypes (borrowed from C++), codice_9 pointers, support for international character sets and locales, and preprocessor enhancements. Although the syntax for parameter declarations was augmented to include the style used in C++, the K&R interface continued to be permitted, for compatibility with existing source code.


title: C (programming language)

text: C89 is supported by current C compilers, and most modern C code is based on it. Any program written only in Standard C and without any hardware-dependent assumptions will run correctly on any platform with a conforming C implementation, within its resource limits. Without such precautions, programs may compile only on a certain platform or with a particular compiler, due, for example, to the use of non-standard libraries, such as GUI libraries, or to a reliance on compiler- or platform-specific attributes such as the exact size of data types and byte endianness.


title: C (programming language)

text: In cases where code must be compilable by either standard-conforming or K&R C-based compilers, the codice_37 macro can be used to split the code into Standard and K&R sections to prevent the use on a K&R C-based compiler of features available only in Standard C.


title: C (programming language)

text: After the ANSI/ISO standardization process, the C language specification remained relatively static for several years. In 1995, Normative Amendment 1 to the 1990 C standard (ISO/IEC 9899/AMD1:1995, known informally as C95) was published, to correct some details and to add more extensive support for international character sets.


title: C (programming language)

text: The C standard was further revised in the late 1990s, leading to the publication of ISO/IEC 9899:1999 in 1999, which is commonly referred to as "C99". It has since been amended three times by Technical Corrigenda.


title: C (programming language)

text: C99 introduced several new features, including inline functions, several new data types (including codice_38 and a codice_39 type to represent complex numbers), variable-length arrays and flexible array members, improved support for IEEE 754 floating point, support for variadic macros (macros of variable arity), and support for one-line comments beginning with codice_40, as in BCPL or C++. Many of these had already been implemented as extensions in several C compilers.


title: C (programming language)

text: C99 is for the most part backward compatible with C90, but is stricter in some ways; in particular, a declaration that lacks a type specifier no longer has codice_12 implicitly assumed. A standard macro codice_42 is defined with value codice_43 to indicate that C99 support is available. GCC, Solaris Studio, and other C compilers now support many or all of the new features of C99. The C compiler in Microsoft Visual C++, however, implements the C89 standard and those parts of C99 that are required for compatibility with C++11.


title: C (programming language)

text: In addition, the standard requires support for Unicode identifiers (variable / function names) in the form of escaped characters (e.g. ) and suggests support for raw Unicode names.


title: C (programming language)

text: In 2007, work began on another revision of the C standard, informally called "C1X" until its official publication of ISO/IEC 9899:2011 on 2011-12-08. The C standards committee adopted guidelines to limit the adoption of new features that had not been tested by existing implementations.


title: C (programming language)

text: The C11 standard adds numerous new features to C and the library, including type generic macros, anonymous structures, improved Unicode support, atomic operations, multi-threading, and bounds-checked functions. It also makes some portions of the existing C99 library optional, and improves compatibility with C++. The standard macro codice_42 is defined as codice_45 to indicate that C11 support is available.


title: C (programming language)

text: Published in June 2018 as ISO/IEC 9899:2018, C17 is the current standard for the C programming language. It introduces no new language features, only technical corrections, and clarifications to defects in C11. The standard macro codice_42 is defined as codice_47.


title: C (programming language)

text: C2x is an informal name for the next (after C17) major C language standard revision. It is expected to be voted on in 2023 and would therefore be called C23.


title: C (programming language)

text: Historically, embedded C programming requires nonstandard extensions to the C language in order to support exotic features such as fixed-point arithmetic, multiple distinct memory banks, and basic I/O operations.


title: C (programming language)

text: In 2008, the C Standards Committee published a technical report extending the C language to address these issues by providing a common standard for all implementations to adhere to. It includes a number of features not available in normal C, such as fixed-point arithmetic, named address spaces, and basic I/O hardware addressing.


title: C (programming language)

text: C has a formal grammar specified by the C standard. Line endings are generally not significant in C; however, line boundaries do have significance during the preprocessing phase. Comments may appear either between the delimiters codice_48 and codice_49, or (since C99) following codice_40 until the end of the line. Comments delimited by codice_48 and codice_49 do not nest, and these sequences of characters are not interpreted as comment delimiters if they appear inside string or character literals.


title: C (programming language)

text: C source files contain declarations and function definitions. Function definitions, in turn, contain declarations and statements. Declarations either define new types using keywords such as codice_6, codice_33, and codice_8, or assign types to and perhaps reserve storage for new variables, usually by writing the type followed by the variable name. Keywords such as codice_13 and codice_12 specify built-in types. Sections of code are enclosed in braces (codice_58 and codice_59, sometimes called "curly brackets") to limit the scope of declarations and to act as a single statement for control structures.


title: C (programming language)

text: As an imperative language, C uses "statements" to specify actions. The most common statement is an "expression statement", consisting of an expression to be evaluated, followed by a semicolon; as a side effect of the evaluation, functions may be called and variables may be assigned new values. To modify the normal sequential execution of statements, C provides several control-flow statements identified by reserved keywords. Structured programming is supported by codice_60 ... [codice_61] conditional execution and by codice_62 ... codice_4, codice_4, and codice_2 iterative execution (looping). The codice_2 statement has separate initialization, testing, and reinitialization expressions, any or all of which can be omitted. codice_67 and codice_68 can be used to leave the innermost enclosing loop statement or skip to its reinitialization. There is also a non-structured codice_69 statement which branches directly to the designated label within the function. codice_5 selects a codice_71 to be executed based on the value of an integer expression.


title: C (programming language)

text: Expressions can use a variety of built-in operators and may contain function calls. The order in which arguments to functions and operands to most operators are evaluated is unspecified. The evaluations may even be interleaved. However, all side effects (including storage to variables) will occur before the next "sequence point"; sequence points include the end of each expression statement, and the entry to and return from each function call. Sequence points also occur during evaluation of expressions containing certain operators (codice_72, codice_73, codice_74 and the comma operator). This permits a high degree of object code optimization by the compiler, but requires C programmers to take more care to obtain reliable results than is needed for other programming languages.


title: C (programming language)

text: Kernighan and Ritchie say in the Introduction of "The C Programming Language": "C, like any other language, has its blemishes. Some of the operators have the wrong precedence; some parts of the syntax could be better." The C standard did not attempt to correct many of these blemishes, because of the impact of such changes on already existing software.


title: C (programming language)

text: Newline indicates the end of a text line; it need not correspond to an actual single character, although for convenience C treats it as one.


title: C (programming language)

text: Additional multi-byte encoded characters may be used in string literals, but they are not entirely portable. The latest C standard (C11) allows multi-national Unicode characters to be embedded portably within C source text by using codice_82 or codice_83 encoding (where the codice_84 denotes a hexadecimal character), although this feature is not yet widely implemented.


title: C (programming language)

text: The basic C execution character set contains the same characters, along with representations for alert, backspace, and carriage return. Run-time support for extended character sets has increased with each revision of the C standard.


title: C (programming language)

text: C89 has 32 reserved words, also known as keywords, which are the words that cannot be used for any purposes other than those for which they are predefined:


title: C (programming language)

text: Most of the recently reserved words begin with an underscore followed by a capital letter, because identifiers of that form were previously reserved by the C standard for use only by implementations. Since existing program source code should not have been using these identifiers, it would not be affected when C implementations started supporting these extensions to the programming language. Some standard headers do define more convenient synonyms for underscored identifiers. The language previously included a reserved word called codice_129, but this was seldom implemented, and has now been removed as a reserved word.


title: C (programming language)

text: C supports a rich set of operators, which are symbols used within an expression to specify the manipulations to be performed while evaluating that expression. C has operators for:


title: C (programming language)

text: C uses the operator codice_135 (used in mathematics to express equality) to indicate assignment, following the precedent of Fortran and PL/I, but unlike ALGOL and its derivatives. C uses the operator codice_145 to test for equality. The similarity between these two operators (assignment and equality) may result in the accidental use of one in place of the other, and in many cases, the mistake does not produce an error message (although some compilers produce warnings). For example, the conditional expression codice_165 might mistakenly be written as codice_166, which will be evaluated as true if codice_75 is not zero after the assignment.


title: C (programming language)

text: The C operator precedence is not always intuitive. For example, the operator codice_145 binds more tightly than (is executed prior to) the operators codice_137 (bitwise AND) and codice_138 (bitwise OR) in expressions such as codice_171, which must be written as codice_172 if that is the coder's intent.


title: C (programming language)

text: The "hello, world" example, which appeared in the first edition of "K&R", has become the model for an introductory program in most programming textbooks. The program prints "hello, world" to the standard output, which is usually a terminal or screen display.


title: C (programming language)

text: The first line of the program contains a preprocessing directive, indicated by codice_15. This causes the compiler to replace that line with the entire text of the codice_174 standard header, which contains declarations for standard input and output functions such as codice_175 and codice_176. The angle brackets surrounding codice_174 indicate that codice_174 can be located using a search strategy that prefers headers provided with the compiler to other headers having the same name, as opposed to double quotes which typically include local or project-specific header files.


title: C (programming language)

text: The next line indicates that a function named codice_179 is being defined. The codice_179 function serves a special purpose in C programs; the run-time environment calls the codice_179 function to begin program execution. The type specifier codice_12 indicates that the value that is returned to the invoker (in this case the run-time environment) as a result of evaluating the codice_179 function, is an integer. The keyword codice_9 as a parameter list indicates that this function takes no arguments.


title: C (programming language)

text: The next line "calls" (diverts execution to) a function named codice_175, which in this case is supplied from a system library. In this call, the codice_175 function is "passed" (provided with) a single argument, the address of the first character in the string literal codice_188. The string literal is an unnamed array with elements of type codice_13, set up automatically by the compiler with a final 0-valued character to mark the end of the array (codice_175 needs to know this). The codice_191 is an "escape sequence" that C translates to a "newline" character, which on output signifies the end of the current line. The return value of the codice_175 function is of type codice_12, but it is silently discarded since it is not used. (A more careful program might test the return value to determine whether or not the codice_175 function succeeded.) The semicolon codice_195 terminates the statement.


title: C (programming language)

text: The closing curly brace indicates the end of the code for the codice_179 function. According to the C99 specification and newer, the codice_179 function, unlike any other function, will implicitly return a value of codice_79 upon reaching the codice_59 that terminates the function. (Formerly an explicit codice_200 statement was required.) This is interpreted by the run-time system as an exit code indicating successful execution.


title: C (programming language)

text: The type system in C is static and weakly typed, which makes it similar to the type system of ALGOL descendants such as Pascal. There are built-in types for integers of various sizes, both signed and unsigned, floating-point numbers, and enumerated types (codice_8). Integer type codice_13 is often used for single-byte characters. C99 added a boolean datatype. There are also derived types including arrays, pointers, records (codice_6), and unions (codice_33).


title: C (programming language)

text: C is often used in low-level systems programming where escapes from the type system may be necessary. The compiler attempts to ensure type correctness of most expressions, but the programmer can override the checks in various ways, either by using a "type cast" to explicitly convert a value from one type to another, or by using pointers or unions to reinterpret the underlying bits of a data object in some other way.


title: C (programming language)

text: Some find C's declaration syntax unintuitive, particularly for function pointers. (Ritchie's idea was to declare identifiers in contexts resembling their use: "declaration reflects use".)


title: C (programming language)

text: C's "usual arithmetic conversions" allow for efficient code to be generated, but can sometimes produce unexpected results. For example, a comparison of signed and unsigned integers of equal width requires a conversion of the signed value to unsigned. This can generate unexpected results if the signed value is negative.


title: C (programming language)

text: C supports the use of pointers, a type of reference that records the address or location of an object or function in memory. Pointers can be "dereferenced" to access data stored at the address pointed to, or to invoke a pointed-to function. Pointers can be manipulated using assignment or pointer arithmetic. The run-time representation of a pointer value is typically a raw memory address (perhaps augmented by an offset-within-word field), but since a pointer's type includes the type of the thing pointed to, expressions including pointers can be type-checked at compile time. Pointer arithmetic is automatically scaled by the size of the pointed-to data type.


title: C (programming language)

text: Pointers are used for many purposes in C. Text strings are commonly manipulated using pointers into arrays of characters. Dynamic memory allocation is performed using pointers; the result of a codice_205 is usually cast to the data type of the data to be stored. Many data types, such as trees, are commonly implemented as dynamically allocated codice_6 objects linked together using pointers. Pointers to other pointers are often used in multi-dimensional arrays and arrays of codice_6 objects. Pointers to functions ("function pointers") are useful for passing functions as arguments to higher-order functions (such as qsort or bsearch), in dispatch tables, or as callbacks to event handlers .


title: C (programming language)

text: A "null pointer value" explicitly points to no valid location. Dereferencing a null pointer value is undefined, often resulting in a segmentation fault. Null pointer values are useful for indicating special cases such as no "next" pointer in the final node of a linked list, or as an error indication from functions returning pointers. In appropriate contexts in source code, such as for assigning to a pointer variable, a "null pointer constant" can be written as codice_79, with or without explicit casting to a pointer type, or as the codice_209 macro defined by several standard headers. In conditional contexts, null pointer values evaluate to false, while all other pointer values evaluate to true.


title: C (programming language)

text: Void pointers (codice_210) point to objects of unspecified type, and can therefore be used as "generic" data pointers. Since the size and type of the pointed-to object is not known, void pointers cannot be dereferenced, nor is pointer arithmetic on them allowed, although they can easily be (and in many contexts implicitly are) converted to and from any other object pointer type.


title: C (programming language)

text: Careless use of pointers is potentially dangerous. Because they are typically unchecked, a pointer variable can be made to point to any arbitrary location, which can cause undesirable effects. Although properly used pointers point to safe places, they can be made to point to unsafe places by using invalid pointer arithmetic; the objects they point to may continue to be used after deallocation (dangling pointers); they may be used without having been initialized (wild pointers); or they may be directly assigned an unsafe value using a cast, union, or through another corrupt pointer. In general, C is permissive in allowing manipulation of and conversion between pointer types, although compilers typically provide options for various levels of checking. Some other programming languages address these problems by using more restrictive reference types.


title: C (programming language)

text: Array types in C are traditionally of a fixed, static size specified at compile time. The more recent C99 standard also allows a form of variable-length arrays. However, it is also possible to allocate a block of memory (of arbitrary size) at run-time, using the standard library's codice_205 function, and treat it as an array.


title: C (programming language)

text: Since arrays are always accessed (in effect) via pointers, array accesses are typically "not" checked against the underlying array size, although some compilers may provide bounds checking as an option. Array bounds violations are therefore possible and can lead to various repercussions, including illegal memory accesses, corruption of data, buffer overruns, and run-time exceptions.


title: C (programming language)

text: C does not have a special provision for declaring multi-dimensional arrays, but rather relies on recursion within the type system to declare arrays of arrays, which effectively accomplishes the same thing. The index values of the resulting "multi-dimensional array" can be thought of as increasing in row-major order. Multi-dimensional arrays are commonly used in numerical algorithms (mainly from applied linear algebra) to store matrices. The structure of the C array is well suited to this particular task. However, in early versions of C the bounds of the array must be known fixed values or else explicitly passed to any subroutine that requires them, and dynamically sized arrays of arrays cannot be accessed using double indexing. (A workaround for this was to allocate the array with an additional "row vector" of pointers to the columns.) C99 introduced "variable-length arrays" which address this issue.


title: C (programming language)

text: The following example using modern C (C99 or later) shows allocation of a two-dimensional array on the heap and the use of multi-dimensional array indexing for accesses (which can use bounds-checking on many C compilers):


title: C (programming language)

text: The subscript notation codice_212 (where codice_213 designates a pointer) is syntactic sugar for codice_214. Taking advantage of the compiler's knowledge of the pointer type, the address that codice_215 points to is not the base address (pointed to by codice_213) incremented by codice_25 bytes, but rather is defined to be the base address incremented by codice_25 multiplied by the size of an element that codice_213 points to. Thus, codice_212 designates the codice_221th element of the array.


title: C (programming language)

text: Furthermore, in most expression contexts (a notable exception is as operand of codice_107), an expression of array type is automatically converted to a pointer to the array's first element. This implies that an array is never copied as a whole when named as an argument to a function, but rather only the address of its first element is passed. Therefore, although function calls in C use pass-by-value semantics, arrays are in effect passed by reference.


title: C (programming language)

text: The total size of an array codice_213 can be determined by applying codice_107 to an expression of array type. The size of an element can be determined by applying the operator codice_107 to any dereferenced element of an array codice_77, as in codice_227. Thus, the number of elements in a declared array codice_77 can be determined as codice_229. Note, that if only a pointer to the first element is available as it is often the case in C code because of the automatic conversion described above, the information about the full type of the array and its length are lost.


title: C (programming language)

text: One of the most important functions of a programming language is to provide facilities for managing memory and the objects that are stored in memory. C provides three principal ways to allocate memory for objects:


title: C (programming language)

text: These three approaches are appropriate in different situations and have various trade-offs. For example, static memory allocation has little allocation overhead, automatic allocation may involve slightly more overhead, and dynamic memory allocation can potentially have a great deal of overhead for both allocation and deallocation. The persistent nature of static objects is useful for maintaining state information across function calls, automatic allocation is easy to use but stack space is typically much more limited and transient than either static memory or heap space, and dynamic memory allocation allows convenient allocation of objects whose size is known only at run-time. Most C programs make extensive use of all three.


title: C (programming language)

text: Where possible, automatic or static allocation is usually simplest because the storage is managed by the compiler, freeing the programmer of the potentially error-prone chore of manually allocating and releasing storage. However, many data structures can change in size at runtime, and since static allocations (and automatic allocations before C99) must have a fixed size at compile-time, there are many situations in which dynamic allocation is necessary. Prior to the C99 standard, variable-sized arrays were a common example of this. (See the article on codice_205 for an example of dynamically allocated arrays.) Unlike automatic allocation, which can fail at run time with uncontrolled consequences, the dynamic allocation functions return an indication (in the form of a null pointer value) when the required storage cannot be allocated. (Static allocation that is too large is usually detected by the linker or loader, before the program can even begin execution.)


title: C (programming language)

text: Unless otherwise specified, static objects contain zero or null pointer values upon program startup. Automatically and dynamically allocated objects are initialized only if an initial value is explicitly specified; otherwise they initially have indeterminate values (typically, whatever bit pattern happens to be present in the storage, which might not even represent a valid value for that type). If the program attempts to access an uninitialized value, the results are undefined. Many modern compilers try to detect and warn about this problem, but both false positives and false negatives can occur.


title: C (programming language)

text: Heap memory allocation has to be synchronized with its actual usage in any program to be reused as much as possible. For example, if the only pointer to a heap memory allocation goes out of scope or has its value overwritten before it is deallocated explicitly, then that memory cannot be recovered for later reuse and is essentially lost to the program, a phenomenon known as a "memory leak." Conversely, it is possible for memory to be freed, but is referenced subsequently, leading to unpredictable results. Typically, the failure symptoms appear in a portion of the program unrelated to the code that causes the error, making it difficult to diagnose the failure. Such issues are ameliorated in languages with automatic garbage collection.


title: C (programming language)

text: The C programming language uses libraries as its primary method of extension. In C, a library is a set of functions contained within a single "archive" file. Each library typically has a header file, which contains the prototypes of the functions contained within the library that may be used by a program, and declarations of special data types and macro symbols used with these functions. In order for a program to use a library, it must include the library's header file, and the library must be linked with the program, which in many cases requires compiler flags (e.g., codice_234, shorthand for "link the math library").


title: C (programming language)

text: The most common C library is the C standard library, which is specified by the ISO and ANSI C standards and comes with every C implementation (implementations which target limited environments such as embedded systems may provide only a subset of the standard library). This library supports stream input and output, memory allocation, mathematics, character strings, and time values. Several separate standard headers (for example, codice_174) specify the interfaces for these and other standard library facilities.


title: C (programming language)

text: Another common set of C library functions are those used by applications specifically targeted for Unix and Unix-like systems, especially functions which provide an interface to the kernel. These functions are detailed in various standards such as POSIX and the Single UNIX Specification.


title: C (programming language)

text: Since many programs have been written in C, there are a wide variety of other libraries available. Libraries are often written in C because C compilers generate efficient object code; programmers then create interfaces to the library so that the routines can be used from higher-level languages like Java, Perl, and Python.


title: C (programming language)

text: File input and output (I/O) is not part of the C language itself but instead is handled by libraries (such as the C standard library) and their associated header files (e.g. codice_174). File handling is generally implemented through high-level I/O which works through streams. A stream is from this perspective a data flow that is independent of devices, while a file is a concrete device. The high-level I/O is done through the association of a stream to a file. In the C standard library, a buffer (a memory area or queue) is temporarily used to store data before it is sent to the final destination. This reduces the time spent waiting for slower devices, for example a hard drive or solid state drive. Low-level I/O functions are not part of the standard C library but are generally part of "bare metal" programming (programming that's independent of any operating system such as most embedded programming). With few exceptions, implementations include low-level I/O.


title: C (programming language)

text: A number of tools have been developed to help C programmers find and fix statements with undefined behavior or possibly erroneous expressions, with greater rigor than that provided by the compiler. The tool lint was the first such, leading to many others.


title: C (programming language)

text: Automated source code checking and auditing are beneficial in any language, and for C many such tools exist, such as Lint. A common practice is to use Lint to detect questionable code when a program is first written. Once a program passes Lint, it is then compiled using the C compiler. Also, many compilers can optionally warn about syntactically valid constructs that are likely to actually be errors. MISRA C is a proprietary set of guidelines to avoid such questionable code, developed for embedded systems.


title: C (programming language)

text: There are also compilers, libraries, and operating system level mechanisms for performing actions that are not a standard part of C, such as bounds checking for arrays, detection of buffer overflow, serialization, dynamic memory tracking, and automatic garbage collection.


title: C (programming language)

text: Tools such as Purify or Valgrind and linking with libraries containing special versions of the memory allocation functions can help uncover runtime errors in memory usage.


title: C (programming language)

text: C is widely used for systems programming in implementing operating systems and embedded system applications. This is for several reasons:


title: C (programming language)

text: Historically, C was sometimes used for web development using the Common Gateway Interface (CGI) as a "gateway" for information between the web application, the server, and the browser. C may have been chosen over interpreted languages because of its speed, stability, and near-universal availability. It is no longer common practice for web development to be done in C, and many other web development tools exist.


title: C (programming language)

text: A consequence of C's wide availability and efficiency is that compilers, libraries and interpreters of other programming languages are often implemented in C. For example, the reference implementations of Python, Perl, Ruby, and PHP are written in C.


title: C (programming language)

text: C enables programmers to create efficient implementations of algorithms and data structures, because the layer of abstraction from hardware is thin, and its overhead is low, an important criterion for computationally intensive programs. For example, the GNU Multiple Precision Arithmetic Library, the GNU Scientific Library, Mathematica, and MATLAB are completely or partially written in C. Many languages support calling library functions in C, for example, the Python-based framework NumPy uses C for the high-performance and hardware-interacting aspects.


title: C (programming language)

text: C is sometimes used as an intermediate language by implementations of other languages. This approach may be used for portability or convenience; by using C as an intermediate language, additional machine-specific code generators are not necessary. C has some features, such as line-number preprocessor directives and optional superfluous commas at the end of initializer lists, that support compilation of generated code. However, some of C's shortcomings have prompted the development of other C-based languages specifically designed for use as intermediate languages, such as C--. Also, contemporary major compilers GCC and LLVM both feature an intermediate representation that is not C, and those compilers support front ends for many languages including C.


title: C (programming language)

text: C has also been widely used to implement end-user applications. However, such applications can also be written in newer, higher-level languages.


title: C (programming language)

text: For some purposes, restricted styles of C have been adopted, e.g. MISRA C or CERT C, in an attempt to reduce the opportunity for bugs. Databases such as CWE attempt to count the ways C etc. has vulnerabilities, along with recommendations for mitigation.


title: C (programming language)

text: There are tools that can mitigate against some of the drawbacks. Contemporary C compilers include checks which may generate warnings to help identify many potential bugs.


title: C (programming language)

text: C has both directly and indirectly influenced many later languages such as C++, C#, D, Go, Java, JavaScript, Perl, PHP, Rust and Unix's C shell. The most pervasive influence has been syntactical; all of the languages mentioned combine the statement and (more or less recognizably) expression syntax of C with type systems, data models, and/or large-scale program structures that differ from those of C, sometimes radically.


title: C (programming language)

text: When object-oriented programming languages became popular, C++ and Objective-C were two different extensions of C that provided object-oriented capabilities. Both languages were originally implemented as source-to-source compilers; source code was translated into C, and then compiled with a C compiler.


title: C (programming language)

text: The C++ programming language (originally named "C with Classes") was devised by Bjarne Stroustrup as an approach to providing object-oriented functionality with a C-like syntax. C++ adds greater typing strength, scoping, and other tools useful in object-oriented programming, and permits generic programming via templates. Nearly a superset of C, C++ now supports most of C, with a few exceptions.


title: C (programming language)

text: Objective-C was originally a very "thin" layer on top of C, and remains a strict superset of C that permits object-oriented programming using a hybrid dynamic/static typing paradigm. Objective-C derives its syntax from both C and Smalltalk: syntax that involves preprocessing, expressions, function declarations, and function calls is inherited from C, while the syntax for object-oriented features was originally taken from Smalltalk.


title: Volodymyr Zelenskyy

text: Volodymyr Oleksandrovych Zelenskyy (born 25 January 1978), also transliterated as Zelensky or Zelenskiy, is a Ukrainian politician and former comedian and actor who has served as the sixth and current president of Ukraine since 2019.


title: Volodymyr Zelenskyy

text: Born to a Ukrainian Jewish family, Zelenskyy grew up as a native Russian speaker in Kryvyi Rih, a major city of Dnipropetrovsk Oblast in central Ukraine. Prior to his acting career, he obtained a degree in law from the Kyiv National Economic University. He then pursued a career in comedy and created the production company Kvartal 95, which produced films, cartoons, and TV shows including the TV series "Servant of the People", in which Zelenskyy played the role of the Ukrainian president. The series aired from 2015 to 2019 and was immensely popular. A political party bearing the same name as the television show was created in March 2018 by employees of Kvartal 95.


title: Volodymyr Zelenskyy

text: Zelenskyy announced his candidacy in the 2019 presidential election on the evening of 31 December 2018, alongside the New Year's Eve address of then-president Petro Poroshenko on the TV channel 1+1. A political outsider, he had already become one of the frontrunners in opinion polls for the election. He won the election with of the vote in the second round, defeating Poroshenko. He has positioned himself as an anti-establishment and anti-corruption figure.


title: Volodymyr Zelenskyy

text: As president, Zelenskyy has been a proponent of e-government and of unity between the Ukrainian and Russian speaking parts of the country's population. His communication style heavily uses social media, particularly Instagram. His party won a landslide victory in the snap legislative election held shortly after his inauguration as president. During the first two years of his administration, Zelenskyy oversaw the lifting of legal immunity for members of parliament (the Verkhovna Rada), the country's response to the COVID-19 pandemic and subsequent economic recession, and some limited progress in tackling corruption in Ukraine.


title: Volodymyr Zelenskyy

text: During his presidential campaign, Zelenskyy promised to end Ukraine's protracted conflict with Russia, and he has attempted to engage in dialogue with Russian president Vladimir Putin. His administration faced an escalation of tensions with Russia in 2021, culminating in the launch of an ongoing full-scale Russian invasion in February 2022. Zelenskyy's strategy during the Russian military buildup was to calm the Ukrainian populace and assure the international community that Ukraine was not seeking to retaliate. He initially distanced himself from warnings of an imminent war, while also calling for security guarantees and military support from NATO to "withstand" the threat. After the start of the invasion, Zelenskyy declared martial law across Ukraine and a general mobilisation of the armed forces. His leadership during the crisis has won him widespread international praise, and he has been described as a symbol of the Ukrainian resistance. Zelenskyy was named the "Time" Person of the Year for 2022 and opinion polls in Ukraine have ranked him as Ukraine's greatest president.


title: Volodymyr Zelenskyy

text: Volodymyr Oleksandrovych Zelenskyy was born to Jewish parents on 25 January 1978 in Kryvyi Rih, then in the Ukrainian Soviet Socialist Republic. His father, Oleksandr Zelenskyy, is a professor and computer scientist and the head of the Department of Cybernetics and Computing Hardware at the Kryvyi Rih State University of Economics and Technology; his mother, Rymma Zelenska, used to work as an engineer. His grandfather, Semyon (Simon) Ivanovych Zelenskyy, served as an infantryman, reaching the rank of colonel in the Red Army (in the 57th Guards Motor Rifle Division) during World War II; Semyon's father and three brothers were killed in the Holocaust. In March 2022, Zelenskyy revealed that his great-grandparents had been killed after German troops burned their home to the ground during a massacre.


title: Volodymyr Zelenskyy

text: Prior to starting elementary school, Zelenskyy lived for four years in the Mongolian city of Erdenet, where his father worked. Zelenskyy grew up speaking Russian. At the age of 16, he passed the Test of English as a Foreign Language and received an education grant to study in Israel, but his father did not allow him to go. He later earned a law degree from the Kryvyi Rih Institute of Economics, then a department of Kyiv National Economic University and now part of Kryvyi Rih National University, but did not go on to work in the legal field.


title: Volodymyr Zelenskyy

text: At age 17, he joined his local team competing in the KVN comedy competition team. He was soon invited to join the united Ukrainian team "Zaporizhia-Kryvyi Rih-Transit" which performed in the KVN's Major League and eventually won in 1997. That same year, he created and headed the Kvartal 95 team which later transformed into the comedy outfit Kvartal 95. From 1998 to 2003, Kvartal 95 performed in the Major League and the highest open Ukrainian league of KVN, and the team members spent a lot of the time in Moscow and constantly toured around post-Soviet countries. In 2003, Kvartal 95 started producing TV shows for the Ukrainian TV channel 1+1, and in 2005, the team moved to fellow Ukrainian TV channel Inter.


title: Volodymyr Zelenskyy

text: In 2008, he starred in the feature film "Love in the Big City", and its sequel, "Love in the Big City 2". Zelenskyy continued his movie career with the film "Office Romance. Our Time" in 2011 and with "Rzhevsky Versus Napoleon" in 2012. "Love in the Big City 3" was released in January 2014. Zelenskyy also played the leading role in the 2012 film "8 First Dates" and in sequels which were produced in 2015 and 2016. He recorded the voice of Paddington Bear in the Ukrainian dubbing of "Paddington" (2014) and "Paddington 2" (2017).


title: Volodymyr Zelenskyy

text: Zelenskyy was a member of the board and the general producer of the TV channel Inter from 2010 to 2012.


title: Volodymyr Zelenskyy

text: In August 2014, Zelenskyy spoke out against the intention of the Ukrainian Ministry of Culture to ban Russian artists from Ukraine. Since 2015, Ukraine has banned Russian artists and other Russian works of culture from entering Ukraine. In 2018, the romantic comedy "Love in the Big City 2" starring Zelenskyy was banned in Ukraine.


title: Volodymyr Zelenskyy

text: After the Ukrainian media had reported that during the Russo-Ukrainian War Zelenskyy's Kvartal 95 had donated ₴1 million to the Ukrainian army, some Russian politicians and artists petitioned for a ban on his works in Russia. Once again, Zelenskyy spoke out against the intention of the Ukrainian Ministry of Culture to ban Russian artists from Ukraine.


title: Volodymyr Zelenskyy

text: In 2015, Zelenskyy became the star of the television series "Servant of the People", where he played the role of the president of Ukraine. In the series, Zelenskyy's character was a high-school history teacher in his 30s who won the presidential election after a viral video showed him ranting against government corruption in Ukraine.


title: Volodymyr Zelenskyy

text: The comedy series "Svaty" ("In-laws"), in which Zelenskyy appeared, was banned in Ukraine in 2017, but unbanned in March 2019.


title: Volodymyr Zelenskyy

text: Zelenskyy worked mostly in Russian-language productions. His first role in the Ukrainian language was the romantic comedy "I, You, He, She", which appeared on the screens of Ukraine in December 2018. The first version of the script was written in Ukrainian but was translated into Russian for the Lithuanian actress Agnė Grudytė. Later, the movie was dubbed into Ukrainian.


title: Volodymyr Zelenskyy

text: The October 2021 Pandora Papers revealed that Zelenskyy and his chief aide and the head of the Security Service of Ukraine Ivan Bakanov operated a network of offshore companies in the British Virgin Islands, Cyprus, and Belize. These companies included some that owned expensive London property. Around the time of his 2019 election, Zelenskyy handed his shares in a key offshore company over to Sergei Shefir, but the two men appear to have made an arrangement for Zelenskyy's family to continue receiving the money from these companies. Zelenskyy's election campaign had centred on pledges to clean up the government of Ukraine.


title: Volodymyr Zelenskyy

text: In March 2018, members of Zelenskyy's production company Kvartal 95 registered a new political party called "Servant of the People" – the same name as the television program that Zelenskyy had starred in over the previous three years. Although Zelenskyy denied any immediate plans to enter politics and said he had registered the party name only to prevent it being appropriated by others, there was widespread speculation that he was planning to run. As early as October 2018, three months before his campaign announcement and six months before the presidential election, he was already a frontrunner in opinion polls. After months of ambiguous statements, on 31 December, less than four months from the election, Zelenskyy announced his candidacy for president of Ukraine on the New Year's Eve evening show on the TV channel 1+1. His announcement up-staged the New Year's Eve address of incumbent president Petro Poroshenko on the same channel, which Zelenskyy said was unintentional and attributed to a technical glitch.


title: Volodymyr Zelenskyy

text: Zelenskyy's presidential campaign against Poroshenko was almost entirely virtual. He did not release a detailed policy platform and his engagement with mainstream media was minimal; he instead reached out to the electorate via social media channels and YouTube clips. In place of traditional campaign rallies, he conducted stand-up comedy routines across Ukraine with his production company Kvartal 95. He styled himself as an anti-establishment, anti-corruption figure, although he was not generally described as a populist. He said he wished to restore trust in politicians, "to bring professional, decent people to power" and to "change the mood and timbre of the political establishment". On 16 April 2019, a few days before the election, 20 Ukrainian news outlets called on Zelenskyy to "stop avoiding journalists". Zelenskyy stated that he was not hiding from journalists but that he did not want to go to talk shows where "people of the old power" were "just doing PR" and that he did not have time to satisfy all interview requests.


title: Volodymyr Zelenskyy

text: Prior to the elections, Zelenskyy presented a team that included former finance minister Oleksandr Danylyuk and others. During the campaign, concerns were raised over his links to the oligarch Ihor Kolomoyskyi. President Poroshenko and his supporters claimed that Zelenskyy's victory would benefit Russia. On 19 April 2019 at Olimpiyskiy National Sports Complex presidential debates were held in the form of a show. In his introductory speech, Zelenskyy acknowledged that in 2014 he voted for Poroshenko, but "I was mistaken. We were mistaken. We voted for one Poroshenko, but received another. The first appears when there are video cameras, the other Petro sends Medvedchuk privietiki (greetings) to Moscow". Although Zelenskyy initially said he would only serve a single term, he walked back this promise in May 2021, saying he had not yet made up his mind.


title: Volodymyr Zelenskyy

text: Zelenskyy stated that as president he would develop the economy and attract investment to Ukraine through "a restart of the judicial system" and restoring confidence in the state.<ref name="7210004/ Zelensky"></ref> He also proposed a tax amnesty and a 5 per cent flat tax for big business which could be increased "in dialogue with them and if everyone agrees". According to Zelenskyy, if people would notice that his new government "works honestly from the first day", they would start paying their taxes.


title: Volodymyr Zelenskyy

text: Zelenskyy clearly won the first round of elections on 31 March 2019. In the second round, on 21 April 2019, he received 73 per cent of the vote to Poroshenko's 25 per cent, and was elected President of Ukraine. Polish president Andrzej Duda was one of the first European leaders to congratulate Zelenskyy. French president Emmanuel Macron received Zelenskyy at the Élysée Palace in Paris on 12 April 2019. On 22 April, U.S. president Donald Trump congratulated Zelenskyy on his victory over the telephone. European Commission president Jean Claude Juncker and European Council president Donald Tusk also issued a joint letter of congratulations and stated that the European Union (EU) will work to speed up the implementation of the remainder of the EU-Ukraine Association Agreement, including the Deep and Comprehensive Free Trade Area.


title: Volodymyr Zelenskyy

text: Zelenskyy was inaugurated on 20 May 2019. Various foreign officials attended the ceremony in Ukraine's parliament (Verkhovna Rada), including Salome Zourabichvili (Georgia), Kersti Kaljulaid (Estonia), Raimonds Vējonis (Latvia), Dalia Grybauskaitė (Lithuania), János Áder (Hungary), Maroš Šefčovič (European Union), and Rick Perry (United States). Zelenskyy is the first Jewish president; with Volodymyr Groysman as prime minister, Ukraine became the first country other than Israel to simultaneously have a Jewish head of state and head of government. In his inaugural address, Zelenskyy dissolved the then Ukrainian parliament and called for early parliamentary elections (which had originally been due to be held in October of that year). One of Zelenskyy's coalition partners, the People's Front, opposed the move and withdrew from the ruling coalition.


title: Volodymyr Zelenskyy

text: Zelenskyy's first major proposal to change the electoral system from a plurality voting system to proportional representation with closed party lists was strongly rejected by the Ukrainian parliament, due to the belief that closed lists would lead to more corruption in government.


title: Volodymyr Zelenskyy

text: In addition, on 6 June, lawmakers refused to include Zelenskyy's key initiative on reintroducing criminal liability for illegal enrichment in the parliament's agenda, and instead included a similar bill proposed by a group of deputies. In June 2019 it was announced that the president's third major initiative, which seeks to remove immunity from lawmakers, diplomats and judges, would be submitted after the July 2019 Ukrainian parliamentary election. This initiative was completed on 3 September, when the new parliament passed a bill stripping lawmakers of legal immunity, delivering Zelenskyy a legislative victory by fulfilling one of his key campaign promises.


title: Volodymyr Zelenskyy

text: On 8 July, Zelenskyy ordered the cancellation of the annual Kyiv Independence Day Parade on Maidan Nezalezhnosti, citing costs. Despite this, Zelenskyy highlighted that the day would "honor heroes" on Independence Day, however the "format will be new". He also proposed to spend the money that would have been used to finance the parade on veterans.


title: Volodymyr Zelenskyy

text: In 2020, Zelenskyy's party proposed reforms to Ukraine's media laws with the intent to increase competition and loosen the dominance of Ukrainian oligarchs on television and radio broadcasters. Critics said it risked increasing media censorship in Ukraine because its clause of criminal responsibility for the distribution of disinformation could be abused.


title: Volodymyr Zelenskyy

text: Zelenskyy was criticized for a secret trip to Oman in January 2020 that was not published on his official schedule and on which he appeared to mix a personal holiday with government business. Although the president's office said the trip had been paid for by Zelenskyy himself and not with government money, Zelenskyy came under heavy criticism for the lack of transparency around the trip, which was compared unfavourably to a secret vacation his predecessor Petro Poroshenko took in the Maldives, and which Zelenskyy himself had criticized at the time.


title: Volodymyr Zelenskyy

text: In January 2021, parliament passed a bill updating and reforming Ukraine's referendum laws, which Ukraine's Constitutional Court had declared unconstitutional in 2018. Fixing the referendum law had been one of Zelenskyy's campaign promises.


title: Volodymyr Zelenskyy

text: In June 2021, Zelenskyy submitted to the Verkhovna Rada a bill creating a public registry of Ukraine's oligarchs, banning them from participating in privatizations of state-owned companies, and forbidding them from contributing financially to politicians. Opposition party leaders supported Zelenskyy's goal of reducing oligarchs' influence on politics in Ukraine but were critical of his approach, saying the public register would be both dangerous, as it concentrated power in the president; and ineffective, since oligarchs were merely a "symbol" of more deeply-rooted corruption. The bill was passed into law in September 2021.


title: Volodymyr Zelenskyy

text: Critics of Zelenskyy's administration have claimed that, in taking power away from the Ukrainian oligarchs, he has sought to centralize authority and strengthen his personal position.


title: Volodymyr Zelenskyy

text: Zelenskyy appointed Andriy Bohdan as head of the Presidential Administration of Ukraine. Prior to this, Bohdan had been the lawyer of Ukrainian oligarch Ihor Kolomoyskyi. Under the rules of Lustration in Ukraine, introduced in 2014 following Euromaidan, Bohdan is not entitled to hold any state office until 2024 (because of his government post during the Second Azarov Government). Bohdan, however, contended that because heading the presidential administration is not considered civil service work, lustration did not apply to him. A number of the members of the Presidential Administration Zelenskyy appointed were former colleagues from his former production company, Kvartal 95, including Ivan Bakanov, who became deputy head of the Ukrainian Secret Service. Former deputy foreign minister Olena Zerkal declined an appointment as deputy head of the presidential administration, but did agree to serve as the Ukrainian representative of the international courts concerning Russia. Zelenskyy's requests to replace the foreign minister, defence minister, chief prosecutor and head of Ukraine's security service were rejected by parliament. Zelenskyy also dismissed and replaced 20 of the governors of Ukraine's 24 oblasts.


title: Volodymyr Zelenskyy

text: In the 21 July 2019 parliamentary election, Zelenskyy's political party, Servant of the People, won the first single-party majority in modern Ukrainian history in parliament, with 43 per cent of the party-list vote. His party gained 254 of the 424 seats.


title: Volodymyr Zelenskyy

text: Following the elections, Zelenskyy nominated Oleksiy Honcharuk as prime minister, who was quickly confirmed by parliament. Parliament also confirmed Andrii Zahorodniuk as defence minister, Vadym Prystaiko as foreign minister and Ivan Bakanov as head of the SBU. Arsen Avakov, a controversial figure due to longstanding corruption allegations, was kept on as interior minister, with Honcharuk arguing that the relatively inexperienced government needed experienced administrators and that Avakov had been "'drawn red lines' that cannot be crossed."


title: Volodymyr Zelenskyy

text: Zelenskyy dismissed Bohdan as head of his presidential administration on 11 February 2020 and appointed Andriy Yermak as his successor the same day.


title: Volodymyr Zelenskyy

text: On 6 March 2020, the Honcharuk government gave way to the government of Denys Shmyhal. At the time, there was disquiet in the press over the hasty departure of Honcharuk. In his 4 March address to the Rada, Zelenskyy recommitted to reforms domestic and financial, and remarked that he "cannot always become a psychologist for people, a crisis manager for someone, a collector who requires honestly earned money, and a nanny of the ministry in charge." By September 2020, Zelenskyy's approval ratings had fallen to less than 32 per cent.


title: Volodymyr Zelenskyy

text: On 24 March 2021, Zelenskyy signed the Decree 117/2021 approving the "strategy for de-occupation and reintegration of the temporarily occupied territory of the Autonomous Republic of Crimea and the city of Sevastopol."


title: Volodymyr Zelenskyy

text: One of Zelenskyy's central campaign promises had been to end the Russo-Ukrainian War and resolve the Russia-sponsored separatist movement there. On 3 June, Zelenskyy appointed former president Leonid Kuchma as Ukraine's representative in the Tripartite Contact Group for a settlement in the conflict. On 11 July 2019, Zelenskyy held his first telephone conversation with Russian president Vladimir Putin, during which he urged Putin to enter into talks mediated by European countries. The two leaders also discussed the exchange of prisoners held by both sides. In October 2019, Zelenskyy announced a preliminary deal struck with the separatists, under which the Ukrainian government would respect elections held in the region in exchange for Russia withdrawing its unmarked troops. The deal was met with heavy criticism and protests by both politicians and the Ukrainian public. Detractors noted that elections held in Donbas were unlikely to be free and fair, that the separatists had long driven out most pro-Ukrainian residents out of the region to ensure a pro-Russia majority, and that it would be impossible to ensure Russia kept its end of the agreement. Zelenskyy defended his negotiations, saying the elections would not be held before a Russian withdrawal. The agreement failed to ease the conflict, as the separatists continued their attacks and Russia continued providing them with weapons and ammunition. Several Ukrainian nationalist militias and former militias also refused to accept the agreement, including the far-right Azov fighters in the Luhansk region of Donbas. Zelenskyy met personally with some of these groups and tried to convince them to surrender their unregistered weapons and accept the peace accord. Andriy Biletsky, the leader of the far-right National Corps and first commander of Azov, accused Zelenskyy of being disrespectful to army veterans and of acting on behalf of the Kremlin by leaving Ukrainians vulnerable to Russian aggression. Ultimately, the peace deal failed to reduce the violence, much less end the war.


title: Volodymyr Zelenskyy

text: In December 2019, Russia and Ukraine agreed to resume talks mediated by France and Germany under the so-called Normandy Format, which had been abandoned in 2016; it was Zelenskyy's first face-to-face meeting with Vladimir Putin. In July 2020, Zelenskyy announced a formal ceasefire with the separatists — the more than twentieth such attempt since the war began in 2014. Although the ceasefire was frequently violated over the next few years and overall violence remained high, ceasefire violations in 2020 did decrease by over 50 per cent compared to the previous year.


title: Volodymyr Zelenskyy

text: On 8 January 2020, the Presidential Office announced that Volodymyr Zelenskyy was cutting his trip to Oman short owing to the Ukraine International Airlines Flight 752 plane crash in nearby Iran the same day. The same day, internet news site Obozrevatel.com released information that on 7 January 2020, Ukrainian politician of the Opposition Platform — For Life Viktor Medvedchuk – who has exclusive relations with the current president of Russia – may have arrived in Oman. Soon, rumors began that Zelenskyy may have had some additional meetings beside the ones that were announced. On 14 January 2020, Andriy Yermak dismissed the rumors as speculations and baseless conspiracy theories, while Medvedchuk stated that the plane was used by his older daughter's family to fly from Oman to Moscow. Later, Yermak contacted the on-line newspaper Ukrainian Truth and gave more details about the visit to Oman and the plane crash in Iran.


title: Volodymyr Zelenskyy

text: On 17 January 2020, the presidential appointee Minister of Foreign Affairs Vadym Prystaiko was unable to give answers during the "times of questions to the government" in parliament when the people's deputies of Ukraine asked him about the visit's official agenda, the invitation from Oman, officials of the Ministry of Foreign Affairs who were preparing the visit, as well as how the president actually crossed the border while visiting Oman. On 20 January 2020, Prystaiko followed up by giving a briefing to the press in the Office of the president of Ukraine and saying that he would explain everything about the visit that when the time came.


title: Volodymyr Zelenskyy

text: Zelenskyy's first official trip abroad as president was to Brussels in June 2019, where he met with European Union and NATO officials.


title: Volodymyr Zelenskyy

text: In August 2019, Zelenskyy promised to lift the moratorium on exhuming Polish mass graves in Ukraine after the previous Ukrainian government banned the Polish side from carrying out any exhumations of Polish victims of the Ukrainian Insurgent Army-perpetrated Volhynian massacres, following the removal of a memorial to the Ukrainian Insurgent Army in Hruszowice, southeastern Poland.


title: Volodymyr Zelenskyy

text: In September 2019, it was reported that U.S. president Donald Trump had allegedly blocked payment of a congressionally mandated $400 million military aid package to Ukraine to pressure Zelenskyy during a July phone call between the two presidents to investigate alleged wrongdoing by Joe Biden and his son Hunter Biden, who took a board seat on Ukrainian natural gas company Burisma Holdings. This report was the catalyst for the Trump–Ukraine scandal and the impeachment inquiry against Donald Trump. Zelenskyy has denied that he was pressured by Trump and declared that "he does not want to interfere in a foreign election."


title: Volodymyr Zelenskyy

text: On a trip to the United States in September 2021, Zelenskyy engaged in talks and commitments with U.S. president Joe Biden, Secretary of Defense Lloyd Austin, Secretary of Energy Jennifer Granholm, and Secretary of State Antony Blinken. President Zelenskyy and First Lady Olena Zelenska also took part in the opening of the Ukrainian House in Washington, D.C. On the same trip, he met with Apple CEO Tim Cook and with Ukrainians in senior positions at Silicon Valley tech companies and spoke at Stanford University. While Zelenskyy was still in the U.S., just after delivering a speech at the United Nations, an assassination attempt was made in Ukraine on Serhiy Shefir, his closest aide. Shefir was unhurt in the attack, although his driver was hospitalized with three bullet wounds.


title: Volodymyr Zelenskyy

text: In April 2021, in response to Russian military build-up at the Ukrainian borders, Zelenskyy spoke to American president Joe Biden and urged NATO members to speed up Ukraine's request for membership.


title: Volodymyr Zelenskyy

text: On 26 November 2021, Zelenskyy accused Russia and Ukrainian oligarch Rinat Akhmetov of backing a plan to overthrow his government. Russia denied any involvement in a coup plot and Akhmetov said in a statement that "the information made public by Volodymyr Zelenskiy about attempts to draw me into some kind of coup is an absolute lie. I am outraged by the spread of this lie, no matter what the president's motives are." In December 2021, Zelenskyy called for preemptive action against Russia.


title: Volodymyr Zelenskyy

text: On 19 January 2022, Zelenskyy said in a video message that the country's citizens should not panic and appealed to the media to be "methods of mass information and not mass hysteria." On 28 January, Zelenskyy called on the West not to create a "panic" in his country over a potential Russian invasion, adding that constant warnings of an "imminent" threat of invasion are putting the economy of Ukraine at risk. Zelenskyy said that "we do not see a bigger escalation" than in early 2021 when Russia's military build-up started. Zelenskyy and U.S. president Joe Biden disagreed on how imminent the threat was.


title: Volodymyr Zelenskyy

text: On 19 February, as worries of a Russian invasion of Ukraine grew, Zelenskyy warned the Munich Security Conference that Western nations should abandon their "appeasement" attitude toward Moscow. "Ukraine has been granted security assurances in exchange for giving up the world's third-largest nuclear arsenal. We don't have any firearms. And there's no security... But we have a right to urge a transformation from an appeasement policy to one that ensures security and peace," he stated.


title: Volodymyr Zelenskyy

text: In the early hours of 24 February, shortly before the start of the Russian invasion, Zelenskyy recorded an address to the citizens of both Ukraine and Russia. He disputed claims of the Russian government about the presence of neo-Nazis in the Ukrainian government and stated that he had no intention of attacking the Donbas region, while highlighting his personal connections to the area. In part of the address, he spoke in Russian to the people of Russia, appealing to them to pressure their leadership to prevent war:


title: Volodymyr Zelenskyy

text: On the morning of 24 February, Putin announced that Russia was initiating a "special military operation" in the Donbas. Russian missiles struck a number of military targets in Ukraine, and Zelenskyy declared martial law. Zelenskyy also announced that diplomatic relations with Russia were being severed, effective immediately. Later in the day, he announced general mobilisation.


title: Volodymyr Zelenskyy

text: On 25 February, Zelenskyy said that despite Russia's claim that it was targeting only military sites, civilian sites were also being hit. In an early morning address that day, Zelenskyy said that his intelligence services had identified him as Russia's top target, but that he is staying in Kyiv and his family will remain in the country. "They want to destroy Ukraine politically by destroying the head of state", he said.


title: Volodymyr Zelenskyy

text: In the early hours of 26 February, during the most significant assault by Russian troops on the capital of Kyiv, the United States government and Turkish president Recep Tayyip Erdoğan urged Zelenskyy to evacuate to a safer location, and both offered assistance for such an effort. Zelenskyy turned down both offers and opted to remain in Kyiv with its defense forces, saying that "the fight is here [in Kyiv]; I need ammunition, not a ride".


title: Volodymyr Zelenskyy

text: More than 90% of Ukrainians supported the actions of Zelenskyy, including more than 90% in western and central Ukraine and more than 80% in Russian-speaking regions in eastern and southern Ukraine. A Pew Research Center poll found that 72% of Americans had confidence in Zelenskyy's handling of international affairs.


title: Volodymyr Zelenskyy

text: Zelenskyy has gained worldwide recognition as the wartime leader of Ukraine during the Russian invasion; historian Andrew Roberts compared him to Winston Churchill. "Harvard Political Review" said that Zelenskyy "has harnessed the power of social media to become history's first truly online wartime leader, bypassing traditional gatekeepers as he uses the internet to reach out to the people." He has been described as a national hero or a "global hero" by many commentators, including publications such as "The Hill", "Deutsche Welle", "Der Spiegel" and "USA Today". BBC News and "The Guardian" have reported that his response to the invasion has received praise even from previous critics.


title: Volodymyr Zelenskyy

text: During the invasion, Zelenskyy has been reportedly the target of more than a dozen assassination attempts; three were prevented due to tips from Russian FSB employees who opposed the invasion. Two of those attempts were carried out by the Wagner Group, a Russian paramilitary force, and the third by the Kadyrovites, the personal guard of Chechen leader Ramzan Kadyrov.


title: Volodymyr Zelenskyy

text: On 7 March 2022, Czech president Miloš Zeman decided to award Zelenskyy with the highest state award of the Czech Republic, the Order of the White Lion, for "his bravery and courage in the face of Russia's invasion".


title: Volodymyr Zelenskyy

text: Zelenskyy has repeatedly called for direct talks with Russian president Vladimir Putin, saying: "Good Lord, what do you want? Leave our land. If you don't want to leave now, sit down with me at the negotiating table. But not from 30 meters away, like with Macron and Scholz. I don't bite." Zelenskyy said he was "99.9 percent sure" that Putin thought the Ukrainians would welcome the invading forces with "flowers and smiles".


title: Volodymyr Zelenskyy

text: On 7 March 2022, as a condition for ending the invasion, the Kremlin demanded Ukraine's neutrality; recognition of Crimea, which had been annexed by Russia, as Russian territory; and recognition of the self-proclaimed separatist republics of Donetsk and Luhansk as independent states. On 8 March, Zelenskyy expressed willingness to discuss Putin's demands. Zelenskyy said he is ready for dialogue, but "not for capitulation". He proposed a new collective security agreement for Ukraine with the United States, Turkey, France, Germany as an alternative to the country joining NATO. Zelenskyy's Servant of the People party said that Ukraine would not give up its claims on Crimea, Donetsk and Luhansk. However, Zelenskyy said that Ukraine was considering giving the Russian language protected minority status.


title: Volodymyr Zelenskyy

text: On 15 March 2022, Polish Prime Minister Mateusz Morawiecki, together with Czech Prime Minister Petr Fiala and Slovenian Prime Minister Janez Janša, visited Kyiv to meet with Zelenskyy in a display of support for Ukraine.


title: Volodymyr Zelenskyy

text: On 16 March 2022, a deepfake appeared online of Zelenskyy calling on Ukrainian citizens to surrender to Russia. The attack was largely deemed to have failed at its intended goal. The video is considered to be the first use of deepfake technology in a global-scale disinformation attack.


title: Volodymyr Zelenskyy

text: Zelenskyy has made an effort to rally the governments of Western nations in an effort to isolate Russia. He has made numerous addresses to the legislatures of the EU, UK, Poland, Australia, Canada, US, Germany, Israel, Italy, Japan, the Netherlands, Romania, and the Nordic countries.


title: Volodymyr Zelenskyy

text: On March 23, Zelenskyy was calling on Russians to emigrate from Russia so as not to finance the war in Ukraine with their taxes.


title: Volodymyr Zelenskyy

text: In March 2022, Zelenskyy supported the suspension of 11 Ukrainian political parties with ties to Russia: the Socialist Party of Ukraine, Derzhava, Left Opposition, Nashi, Opposition Bloc, Opposition Platform — For Life, Party of Shariy, Progressive Socialist Party of Ukraine, Union of Leftists, and the Volodymyr Saldo Bloc. The Communist Party of Ukraine, another pro-Russia party, had already been banned in 2015 because of its support to the Donbas separatists. Zelenskyy has also supported consolidating all TV news stations into a single 24-hour news broadcast run by the state of Ukraine.


title: Volodymyr Zelenskyy

text: In May 2022, Zelenskyy said that Ukrainian men of conscription age had a duty to remain in Ukraine and that up to 100 Ukrainian soldiers were killed every day in the fighting in eastern Ukraine. He made the comment after he was asked about an online petition calling to lift a prohibition on Ukrainian men leaving Ukraine. As Zelenskyy ordered a general military mobilization in February 2022, he also banned men aged 18 to 60 from leaving Ukraine. In early June 2022, Zelenskyy's adviser Mykhailo Podolyak said that up to 200 Ukrainian soldiers were killed in combat every day.


title: Volodymyr Zelenskyy

text: Zelenskyy denounced suggestions by former US diplomat Henry Kissinger that Ukraine should cede control of Crimea and Donbas to Russia in exchange for peace. On 25 May 2022, he said that Ukraine would not agree to peace until Russia agreed to return Crimea and the Donbas region to Ukraine. However, he later said he did not believe that all the land seized by Russia since 2014, which includes Crimea, could be recaptured by force, saying that "If we decide to go that way, we will lose hundreds of thousands of people."


title: Volodymyr Zelenskyy

text: On 3 May 2022, Zelenskyy accused Turkey of having "double standards" by welcoming Russian tourists while attempting to act as an intermediary between Russia and Ukraine in order to end the war.


title: Volodymyr Zelenskyy

text: On 25 May 2022, Zelenskyy said that he was satisfied with China's policy of staying away from the conflict. In August 2022, he said China had the economic leverage to pressure Putin to end the war, adding "I’m sure that without the Chinese market for the Russian Federation, Russia would be feeling complete economic isolation. That’s something that China can do – to limit the trade [with Russia] until the war is over." According to Zeleenskyy, since the beginning of the invasion, Chinese President Xi Jinping had refused to speak with him."


title: Volodymyr Zelenskyy

text: On 30 May 2022, Zelenskyy criticized EU leaders for being too soft on Russia and asked, "Why can Russia still earn almost a billion euros a day by selling energy?" The study published by the Centre for Research on Energy and Clean Air (CREA) calculates that the EU paid Russia about €56 billion for fossil fuel deliveries in the three months following the start of Russia's invasion.


title: Volodymyr Zelenskyy

text: On 20 June 2022, Zelenskyy addressed African Union (AU) representatives via videoconference. He invited African leaders for virtual meeting but only four of them attended. On 20 July 2022, South America's Mercosur trade bloc refused Zelenskyy's request to speak at the trade bloc's summit in Paraguay.


title: Volodymyr Zelenskyy

text: Speaking about the 2022 Russian mobilization, Zelenskyy called on Russians to not submit to "criminal mobilization", saying: "Russian commanders do not care about the lives of Russians — they just need to replenish the empty spaces left" by killed and wounded Russian soldiers. Following Putin's announcement of Russia annexing four regions of Ukrainian territory it had seized during its invasion, Zelenskyy announced that Ukraine would not hold peace talks with Russia while Putin was president.


title: Volodymyr Zelenskyy

text: On 25 September 2022, Zelenskyy said that Putin’s threats to use nuclear weapons "could be a reality." He added that Putin "wants to scare the whole world" with nuclear blackmail. He also said that Putin is aware that the "world will never forgive" a Russian nuclear strike.


title: Volodymyr Zelenskyy

text: When asked what kind of relationship Ukrainians and Ukraine will have with Russia after the war, Zelenskyy replied that "They took too many people, too many lives. The society will not forgive them", adding that "It will be the choice of our society whether to talk to them, or not to talk at all, and for how many years, tens of years or more."


title: Volodymyr Zelenskyy

text: In a mid-June interview with a representative of the president of Ukraine at the Cabinet of Ministers, Andriy Herus stated that Zelenskyy had never promised to lower communal tariffs, but that a campaign video in which Zelenskyy stated that the price of natural gas in Ukraine could fall by 20–30 per cent or maybe more was a not a direct promise but actually "half-hinting" and "joking". Zelenskyy's election manifesto mentioned tariffs only once—that money raised from a capital amnesty would go towards "lowering the tariff burden on low-income citizens".


title: Volodymyr Zelenskyy

text: During his presidential campaign, Zelenskyy said that he supported Ukraine's becoming a member of the European Union and NATO, but he said Ukrainian voters should decide on the country's membership of these two organisations in referendums. At the same time, he believed that the Ukrainian people had already chosen "eurointegration". Zelenskyy's close advisor Ivan Bakanov also said that Zelenskyy's policy is supportive of membership of both the EU and NATO, and proposes holding referendums on membership. Zelenskyy's electoral programme claimed that Ukrainian NATO membership is "the choice of the Maidan and the course that is enshrined in the Constitution, in addition, it is an instrument for strengthening our defense capability". The program states that Ukraine should set the goal to apply for a NATO Membership Action Plan in 2024. The programme also states that Zelenskyy "will do everything to ensure" that Ukraine can apply for European Union membership in 2024. Two days before the second round, Zelenskyy stated that he wanted to build "a strong, powerful, free Ukraine, which is not the younger sister of Russia, which is not a corrupt partner of Europe, but our independent Ukraine".


title: Volodymyr Zelenskyy

text: In October 2020, he spoke in support of Azerbaijan in regards to the Nagorno-Karabakh war between Azerbaijan and ethnic Armenians over the disputed region of Nagorno-Karabakh. Zelenskyy said: "We support Azerbaijan's territorial integrity and sovereignty just as Azerbaijan always supports our territorial integrity and sovereignty."


title: Volodymyr Zelenskyy

text: Zelenskyy has tried to position Ukraine as a neutral party in the political and trade tensions between the United States and China. In January 2021, Zelenskyy said in an interview with "Axios" that he does not perceive China as a geopolitical threat and that he does not agree with the United States assertions that it represents one.


title: Volodymyr Zelenskyy

text: Zelenskyy supported the late 2013 and early 2014 Euromaidan movement. During the war in Donbas, he actively supported the Ukrainian army. Zelenskyy helped fund a volunteer battalion fighting on Donbas.


title: Volodymyr Zelenskyy

text: In a 2014 interview with "Komsomolskaya Pravda in Ukraine", Zelenskyy said that he would have liked to pay a visit to Crimea, but would avoid it because "armed people are there". In August 2014, Zelenskyy performed for Ukrainian troops in Mariupol and later his studio donated ₴1 million to the Ukrainian army. Regarding the 2014 Russian annexation of Crimea, Zelenskyy said that, speaking realistically, it would be possible to return Crimea to Ukrainian control only after a regime change in Russia.


title: Volodymyr Zelenskyy

text: In an interview in December 2018, Zelenskyy stated that as president he would try to end the ongoing war in Donbas by negotiating with Russia.<ref name="8/12/26/7202291/ Zelensky"> Zelensky about the war in the Donbas: Though we are ready to agree with the devil , Ukrayinska Pravda (26 December 2018)</ref> As he considered the leaders of the Donetsk People's Republic and the Luhansk People's Republic (DPR and LPR) to be Russia's "puppets", it would "make no sense to speak with them". He did not rule out holding a referendum on the issue. In an interview published three days before the 2019 presidential election (on 21 April), Zelenskyy stated that he was against granting the Donbas region "special status". In the interview he also said that if he were elected president he would not sign a law on amnesty for the militants of the DPR and LPR.


title: Volodymyr Zelenskyy

text: In response to suggestions to the contrary, he stated in April 2019 that he regarded Russian president Vladimir Putin "as an enemy". On 2 May 2019, Zelenskyy wrote on Facebook that "the border is the only thing Russia and Ukraine have in common".


title: Volodymyr Zelenskyy

text: Zelenskyy opposes the Nord Stream 2 natural gas pipeline between Russia and Germany, calling it "a dangerous weapon, not only for Ukraine but for the whole of Europe."


title: Volodymyr Zelenskyy

text: During the presidential campaign, Zelenskyy promised bills to fight corruption, including removal of immunity from the president of the country, members of the Verkhovna Rada (the Ukrainian parliament) and judges, a law about impeachment, reform of election laws, and providing efficient trial by jury. He promised to bring the salary for military personnel "to the level of NATO standards".


title: Volodymyr Zelenskyy

text: Although Zelenskyy prefers elections with open list election ballots, after he called the snap 2019 Ukrainian parliamentary election his draft law "On amendments to some laws of Ukraine in connection with the change of the electoral system for the election of people's deputies" proposed to hold the election with closed list because the 60-day term to the snap election did not "leave any chances for the introduction of this system".


title: Volodymyr Zelenskyy

text: Zelenskyy opposed targeting the Russian language in Ukraine and banning artists for their political opinions (such as those viewed by the Government as anti-Ukrainian). In April 2019, he stated that he was not against a Ukrainian language quota (on radio and TV), although he noted they could be tweaked.<ref name="/7212672/ Zelensky"> Zelensky suggested, that he might not get to shake Poroshenko's hand (ed. if one were to cut off the hands of all corrupt officials) , Ukrayinska Pravda (18 April 2019)</ref> He also said that Russian artists "who have turned into (anti-Ukrainian) politicians" should remain banned from entering Ukraine.


title: Volodymyr Zelenskyy

text: In responding to a petition demanding equal rights for same-sex couples, Zelenskyy echoed the view that family does not depend on sex and asked the Prime Minister of Ukraine to review civil partnerships for same-sex couples. With regards to same-sex marriage, Zelenskyy cited a provision in the Constitution of Ukraine barring same-sex marriage, as well as a ban on wartime changes to the Constitution, ruling out an introduction of same-sex marriages during the ongoing war. Civil rights organizations praised the statement, though criticizing its vagueness, as Zelenskyy eschewed details about legal proposals for civil partnerships.


title: Volodymyr Zelenskyy

text: On 2 December 2022, Zelenskyy entered a bill to the Verkhovna Rada that would officially ban all activities of the Ukrainian Orthodox Church (Moscow Patriarchate) UOC in Ukraine.


title: Volodymyr Zelenskyy

text: In September 2003, Zelenskyy married Olena Kiyashko, with whom he had attended school and university. Kiyashko worked as a scriptwriter at Kvartal 95. The couple's first daughter, Oleksandra, was born in July 2004. Their son, Kyrylo, was born in January 2013. In Zelenskyy's 2014 movie "8 New Dates", their daughter played Sasha, the daughter of the protagonist. In 2016, she participated in the show "The Comedy Comet Company Comedy's Kids" and won ₴50,000. The family lives in Kyiv.


title: Volodymyr Zelenskyy

text: Zelenskyy's first language is Russian, and he is also fluent in Ukrainian and English. His assets were worth about ₴37 million (about US$1.5 million) in 2018.


title: Volodymyr Zelenskyy

text: On 27 March 2022, Slovakia awarded Zelenskyy one of the country's top awards, the State Award of Alexander Dubček. Eduard Heger, the Slovak prime minister, compared the Russian invasion of Ukraine in 2022 to the Soviet invasion of Czechoslovakia in 1968. Zelenskyy has been called by "The" "Times of Israel" the "Jewish defender of Ukrainian democracy". Gal Beckerman of "The Atlantic" described Zelenskyy as having "[given] the world a Jewish Hero". British newspaper "Financial Times" selected Zelenskyy as Person of the Year in 2022.


title: Volodymyr Zelenskyy

text: "Ausichicrinites zelenskyyi", an extinct species of feather star described on July 20, 2022 by a group of Polish paleontologists, is named after Zelenskyy "for his courage and bravery in defending free Ukraine".


title: John Cena

text: John Felix Anthony Cena Jr. ( ; born April 23, 1977) is an American part-time professional wrestler, actor, and former rapper. He is currently signed to WWE. Widely regarded as one of the greatest professional wrestlers of all time, he is tied with Ric Flair for the most recognized world championship reigns in professional wrestling history.


title: John Cena

text: Cena moved to California in 1998 to pursue a career as a bodybuilder, and switched to professional wrestling in 1999 before making his debut for Ultimate Pro Wrestling (UPW). He signed with the World Wrestling Federation (WWF, now WWE) in 2001 and was assigned to its developmental territory Ohio Valley Wrestling (OVW), winning the OVW Heavyweight Championship and OVW Southern Tag Team Championship. After moving to SmackDown in 2002, Cena gained fame and success after adopting the character of a trash-talking rapper. After winning the WWE Championship in 2005, Cena transitioned into a clean-cut, heroic character which he described as a "goody-two shoes Superman". He led the company as its franchise player and public face for the next decade.


title: John Cena

text: A joint-record 16-time world champion, Cena has won the WWE Championship a record-setting 13 times and the World Heavyweight Championship three times. He is also a five-time WWE United States Champion, a two-time WWE Tag Team Champion, a two-time World Tag Team Champion, a two-time Royal Rumble winner, and a one-time Money in the Bank winner. He has also headlined multiple major WWE pay-per-view events, including its flagship event, WrestleMania, five times. His professional wrestling career has been met with mixed critical and audience reception, with praise for his character work and promotional skills, but criticism for his perceived over-representation and on-screen dominance relative to other wrestlers.