#include <stdio.h>
#include <string.h>

static void print_one(double x) {
    char buf;
    // Use up to 15 significant digits (safe for double), no unnecessary trailing zeros
    // %g may omit the decimal point if there is no fractional part.
    snprintf(buf, sizeof(buf), "%.15g", x);
    if (strchr(buf, '.') == NULL && strchr(buf, 'e') == NULL && strchr(buf, 'E') == NULL) {
        // Ensure at least one decimal digit (e.g., 9 -> 9.0)
        size_t len = strlen(buf);
        if (len + 2 < sizeof(buf)) {
            buf[len] = '.';
            buf[len + 1] = '0';
            buf[len + 2] = '\0';
        }
    }
    printf("%s", buf);
}

int main(void) {
    int n;
    if (scanf("%d", &n) != 1 || n < 0 || n > 1000) {
        printf("Invalid input");
        return 0;
    }

    double arr; // room for n existing + 1 new
    for (int i = 0; i < n; ++i) {
        if (scanf("%lf", &arr[i]) != 1) { // %lf reads a double
            printf("Invalid input");
            return 0;
        }
    }

    double newValue;
    if (scanf("%lf", &newValue) != 1) { // %lf reads a double
        printf("Invalid input");
        return 0;
    }

    // Append at the end as required
    arr[n] = newValue;

    for (int i = 0; i <= n; ++i) {
        if (i) putchar(' ');
        print_one(arr[i]);
    }
    return 0;
}