Sunday, 18 November 2012

2.2 The Life Processes Of Animals

All animals can reproduce and have young of offspring. Based
on their way of reproduction, we can divide animals into two groups.

A)Animals that give birth

Animals such as lions, cows, whales and
dolphins give birth to their young. The young grow in their mother’s womb until
they are born. After birth the young feed on their mother’s milk.

B)Animals that lay eggs

Animals such as birds , frogs, crocodile
and grasshoppers lay eggs.their young hatch from the eggs
after few days or weeks

Animals
go through different stages in their life.The life cycle of an animal
shows how the young of an
animal develop into an adult that is capable of
producing young.

The egg is a tiny, round, oval, or cylindrical object,
usually with fine ribs and other microscopic structures. The female attaches
the egg to leaves, stems, or other objects, usually on or near the intended
caterpillar food.

The caterpillar (or larva) is the long, worm-like stage of
the butterfly or moth. It often has an interesting pattern of stripes or
patches, and it may have spine-like hairs. It is the feeding and growth
stage. As it grows, it sheds its skin four or more times so as to enclose its
rapidly growing body.

The chrysalis (or pupa) is the transformation stage within
which the caterpillar tissues are broken down and the adult insect's
structures are formed. The chrysalis of most species is brown or green and
blends into the background. Many species overwinter in this stage.

The adult (or imago) is colorful butterfly or moth usually
seen. It is the reproductive and mobile stage for the species. The adults
undergo courtship, mating, and egg-laying. The adult butterfly or moth is
also the stage that migrates or colonizes new habitats. The butterfly
pictured here is a Monarch, which is fairly large in size. The
Monarch's wingspan is 3 3/8 - 4 7/8 inches (8.6 - 12.4 cm).

Egg

Frogs and Toads tend to lay many eggs because there are
many hazards between fertilization and full grown frogness! Those eggs that die
tend to turn white or opaque. The lucky ones that actually manage to hatch
still start out on a journey of many perils.Life starts right as the central yolk splits in two. It then divides into four,
then eight, etc.- until it looks a bit like a raspberry inside a jello cup.
Soon, the embryo starts to look more and more like a tadpole, getting longer
and moving about in it's egg.

Usually, about 6-21 days (average!) after being fertilized,
the egg will hatch. Most eggs are found in calm or static waters, to prevent
getting too rumbled about in infancy!. Some frogs, like the Coast foam-nest
tree frog, actually mate in tree branches overlooking static bonds and streams.
Their egg masses form large cocoon-like foamy masses. The foam sometimes cakes
dry in the sun, protecting the inside moisture. When the rain comes along,
after development of 7 to 9 days, the foam drips down, dropping tiny tadpoles
into the river or pond below.

Tadpole

Shortly after hatching, the tadpole still feeds on the remaining
yolk, which is actually in its gut! The tadpole at this point consists of
poorly developed gills, a mouth, and a tail. It's really fragile at this point.
They usually will stick themselves to floating weeds or grasses in the water
using little sticky organs between its' mouth and belly area. Then, 7 to 10
days after the tadpole has hatched, it will begin to swim around and feed on
algae.

After about 4 weeks, the gills start getting grown over by
skin, until theyeventually disappear. The tadpoles get teeny tiny teeth which help them
grate food turning it into soupy oxygenated particles. They have long coiled
guts that help them digest as much nutrients from their meadger diets as
possible.By the fourth week, tadpoles can actually be fairly social creatures. Some eveninteract andschool like
fish!

Tadpole
with legs

After about 6 to 9 weeks, little tiny legs start to sprout. The head
becomes more distinct and the body elongates. By now the diet may grow to
include larger items like dead insects and even plants.
The arms will begin to bulge where they will eventually pop out, elbow first.
After about 9 weeks, the tadpole looks more like a teeny frog with a really
long tail. It is now well on its way to being almost full-grown!

Young
Frog, or Frog let

By 12 weeks, the tadpole has only a teeny tail stub and looks like a
miniature version of the adult frog. Soon, it will leave the water, only to
return again to lay more eggs and start the process all over again!

Frog

By between 12 to 16 weeks, depending on water and food
supply, the frog has completed the full growth cycle. Some frogs that live in
higher altitudes or in colder places might take a whole winter to go through the
tadpole stage...others may have unique development stages that vary from your
"traditional" tadpole-in-the-water type life cycle: some of these are
described later in this tour. Now these frogs will start the whole process again...finding mates and creating
new froggies.

Eggs: A hen lays eggs in a nest. Some eggs have an embryo
inside. An embryo will grow into a chick in 21 days. The mother hen
must keep the egg warm. The egg's hard shell protects it while it
grows. The baby bird will use an egg tooth on it's beak to hatch out of
the egg. This can take a full day!

Chick: The chick is wet when it hatches from its egg. It
has feathers called down. The down will dry fast. Also, chicks can
walk right away. They like to eat seeds, bugs, and worms. Chicks
grow more feathers in about 4 weeks. A comb grows on the chick's head and a
wattle grows under the chick's beak. Chicks resemble their parents from
the time they hatch and as they grow.

Chicken: Chicks are fully grown into chickens in six
months. Female chicks grow up to be hens. Male chicks grow up to be
roosters. The hens will lay more eggs.


#include "aos_log.h"
#include "aos_util.h"
#include "aos_string.h"
#include "aos_status.h"
#include "oss_auth.h"
#include "oss_util.h"
#include "oss_api.h"
#include "oss_config.h"
#include "oss_sample_util.h"

void multipart_upload_file_from_buffer()
{
    aos_pool_t *p = NULL;
    aos_string_t bucket;
    aos_string_t object;
    int is_cname = 0;
    aos_table_t *headers = NULL;
    aos_table_t *complete_headers = NULL;
    aos_table_t *resp_headers = NULL;
    oss_request_options_t *options = NULL;
    aos_string_t upload_id;
    aos_status_t *s = NULL;
    aos_list_t buffer;
    oss_list_upload_part_params_t *params = NULL;
    aos_list_t complete_part_list;
    oss_list_part_content_t *part_content = NULL;
    oss_complete_part_content_t *complete_part_content = NULL;
    int part_num1 = 1;
    int part_num2 = 2;

    aos_pool_create(&p, NULL);
    options = oss_request_options_create(p);
    init_sample_request_options(options, is_cname);
    headers = aos_table_make(p, 1);
    complete_headers = aos_table_make(p, 1);
    aos_str_set(&bucket, BUCKET_NAME);
    aos_str_set(&object, "multipart-key.1");

    //init mulitipart
    s = oss_init_multipart_upload(options, &bucket, &object,
                                  &upload_id, headers, &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("Init multipart upload succeeded, upload_id:%.*s\n",
               upload_id.len, upload_id.data);
    } else {
        printf("Init multipart upload failed\n");
        aos_pool_destroy(p);
        return;
    }

    //upload part
    aos_list_init(&buffer);
    make_random_body(p, 200, &buffer);
    s = oss_upload_part_from_buffer(options, &bucket, &object, &upload_id,
                                    part_num1, &buffer, &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("Upload multipart part succeeded\n");
    } else {
        printf("Upload multipart part failed\n");
        aos_pool_destroy(p);
        return;
    }

    aos_list_init(&buffer);
    make_random_body(p, 10, &buffer);
    s = oss_upload_part_from_buffer(options, &bucket, &object, &upload_id,
        part_num2, &buffer, &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("Upload multipart part succeeded\n");
    } else {
        printf("Upload multipart part failed\n");
        aos_pool_destroy(p);
        return;
    }

    //list part
    params = oss_create_list_upload_part_params(p);
    params->max_ret = 1000;
    aos_list_init(&complete_part_list);
    s = oss_list_upload_part(options, &bucket, &object, &upload_id,
                             params, &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("List multipart succeeded\n");
    } else {
        printf("List multipart failed\n");
        aos_pool_destroy(p);
        return;
    }

    aos_list_for_each_entry(oss_list_part_content_t, part_content, &params->part_list, node) {
        complete_part_content = oss_create_complete_part_content(p);
        aos_str_set(&complete_part_content->part_number,
                    part_content->part_number.data);
        aos_str_set(&complete_part_content->etag, part_content->etag.data);
        aos_list_add_tail(&complete_part_content->node, &complete_part_list);
    }

    //complete multipart
    apr_table_add(complete_headers, OSS_CONTENT_TYPE, "video/MP2T");
    s = oss_complete_multipart_upload(options, &bucket, &object, &upload_id,
            &complete_part_list, complete_headers, &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("Complete multipart upload succeeded, upload_id:%.*s\n",
               upload_id.len, upload_id.data);
    } else {
        printf("Complete multipart upload failed\n");
    }

    aos_pool_destroy(p);
}

void multipart_upload_file_from_file()
{
    aos_pool_t *p = NULL;
    aos_string_t bucket;
    aos_string_t object;
    int is_cname = 0;
    aos_table_t *headers = NULL;
    aos_table_t *complete_headers = NULL;
    aos_table_t *resp_headers = NULL;
    oss_request_options_t *options = NULL;
    aos_string_t upload_id;
    oss_upload_file_t *upload_file = NULL;
    aos_status_t *s = NULL;
    oss_list_upload_part_params_t *params = NULL;
    aos_list_t complete_part_list;
    oss_list_part_content_t *part_content = NULL;
    oss_complete_part_content_t *complete_part_content = NULL;
    int part_num = 1;
    int64_t pos = 0;
    int64_t file_length = 0;

    aos_pool_create(&p, NULL);
    options = oss_request_options_create(p);
    init_sample_request_options(options, is_cname);
    headers = aos_table_make(p, 1);
    complete_headers = aos_table_make(p, 1);
    aos_str_set(&bucket, BUCKET_NAME);
    aos_str_set(&object, "multipart-key.2");

    //init mulitipart
    s = oss_init_multipart_upload(options, &bucket, &object,
                                  &upload_id, headers, &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("Init multipart upload succeeded, upload_id:%.*s\n",
               upload_id.len, upload_id.data);
    } else {
        printf("Init multipart upload failed\n");
        aos_pool_destroy(p);
        return;
    }

    //upload part from file
    file_length = get_file_size(MULTIPART_UPLOAD_FILE_PATH);
    while(pos < file_length) {
        upload_file = oss_create_upload_file(p);
        aos_str_set(&upload_file->filename, MULTIPART_UPLOAD_FILE_PATH);
        upload_file->file_pos = pos;
        pos += 100 * 1024;
        upload_file->file_last = pos < file_length ? pos : file_length; //200k
        s = oss_upload_part_from_file(options, &bucket, &object, &upload_id,
                part_num++, upload_file, &resp_headers);

        if (aos_status_is_ok(s)) {
            printf("Multipart upload part from file succeeded\n");
        } else {
            printf("Multipart upload part from file failed\n");
        }
    }

    //list part
    params = oss_create_list_upload_part_params(p);
    params->max_ret = 1000;
    aos_list_init(&complete_part_list);
    s = oss_list_upload_part(options, &bucket, &object, &upload_id,
                             params, &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("List multipart succeeded\n");
    } else {
        printf("List multipart failed\n");
        aos_pool_destroy(p);
        return;
    }

    aos_list_for_each_entry(oss_list_part_content_t, part_content, &params->part_list, node) {
        complete_part_content = oss_create_complete_part_content(p);
        aos_str_set(&complete_part_content->part_number,
                    part_content->part_number.data);
        aos_str_set(&complete_part_content->etag, part_content->etag.data);
        aos_list_add_tail(&complete_part_content->node, &complete_part_list);
    }

    //complete multipart
    s = oss_complete_multipart_upload(options, &bucket, &object, &upload_id,
            &complete_part_list, complete_headers, &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("Complete multipart upload from file succeeded, upload_id:%.*s\n",
               upload_id.len, upload_id.data);
    } else {
        printf("Complete multipart upload from file failed\n");
    }

    aos_pool_destroy(p);
}

void abort_multipart_upload()
{
    aos_pool_t *p = NULL;
    aos_string_t bucket;
    aos_string_t object;
    int is_cname = 0;
    aos_table_t *headers = NULL;
    aos_table_t *resp_headers = NULL;
    oss_request_options_t *options = NULL;
    aos_string_t upload_id;
    aos_status_t *s = NULL;

    aos_pool_create(&p, NULL);
    options = oss_request_options_create(p);
    init_sample_request_options(options, is_cname);
    headers = aos_table_make(p, 1);
    aos_str_set(&bucket, BUCKET_NAME);
    aos_str_set(&object, OBJECT_NAME);

    s = oss_init_multipart_upload(options, &bucket, &object,
                                  &upload_id, headers, &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("Init multipart upload succeeded, upload_id:%.*s\n",
               upload_id.len, upload_id.data);
    } else {
        printf("Init multipart upload failed\n");
        aos_pool_destroy(p);
        return;
    }

    s = oss_abort_multipart_upload(options, &bucket, &object, &upload_id,
                                   &resp_headers);

    if (aos_status_is_ok(s)) {
        printf("Abort multipart upload succeeded, upload_id::%.*s\n",
               upload_id.len, upload_id.data);
    } else {
        printf("Abort multipart upload failed\n");
    }

    aos_pool_destroy(p);
}

void multipart_object_sample()
{
    multipart_upload_file_from_buffer();
    multipart_upload_file_from_file();
    abort_multipart_upload();
}


New Zealand records in Olympic weightlifting

The following are the national records in Olympic weightlifting in New Zealand. Records are maintained in each weight class for the snatch lift, clean and jerk lift, and the total for both lifts by Olympic Weightlifting New Zealand (OWNZ).

Current records

Men

Women

Historical records

Men (1998–2018)

Women (1998–2018)

References

External links
OWNZ web site
New Zealand records Updated 12 December 2019

Category:National records in Olympic weightlifting
Category:Weightlifting in New Zealand
Olympic weightlifting


---
abstract: 'We study linear electron transport through a single-molecule magnet (SMM) and the interplay of its anisotropic spin with quantized vibrational distortions of the molecule. We show that, despite the longitudinal anisotropy barrier and small transverse anisotropy, vibrational fluctuations can induce quantum spin-tunneling (QST) and a QST-Kondo effect. The interplay of spin scattering, QST and molecular vibrations can strongly enhance the Kondo effect and induce an anomalous magnetic field dependence of vibrational Kondo side-bands.'
author:
- 'F. May$^{(1,2)}$'
- 'M. R. Wegewijs$^{(3,4)}$'
- 'W. Hofstetter$^{(1)}$'
title: ' Interaction of spin and vibrations in transport through single-molecule magnets '
---

Transport measurements on nanometer-sized magnetic systems address the fundamental problem of how a few magnetic atoms in an anisotropic environment respond to an electron current [@Bogani08]. Such an environment is provided, for instance, by ligand groups holding such atoms together in a single magnetic molecule contacted in a break junction [@Zyazin10; @Parks10]. A very similar situation arises for transport through magnetic atoms embedded in a molecular network on an insulating surface in an STM setup [@Otte08; @*Otte09]. Such systems, for simplicity all referred to as single-molecule magnets (SMM), constitute a single, large spin-moment with spin-anisotropy. The interplay with quantum transport provides new possibilities to study and control their molecular magnetism. For instance, the tunneling allows access to several charge states of the SMM which can exhibit enhanced magnetic properties [@Zyazin10]. When such charge states are only virtually accessible, effective spin-spin exchange interaction arises [@Otte08; @*Otte09] and inelastic excitation of the spin moment is possible [@Zyazin10], allowing for time-dependent control [@Loth10]. A key result is that in either regime the transport depends sensitively on the magnetic anisotropy of the SMM, which is characterized by spin-quadrupole terms in the Hamiltonian. A further new aspect is the recently demonstrated mechanical tuning of these anisotropy terms in a transport setup [@Parks10]. Although the effect of such molecular distortions on magnetization measurements of SMM crystal samples has been addressed [@Leuenberger00; @*Pohjola00; @Kortus02], so far their dynamic effect on transport through an SMM have not been studied. One candidate for sensitively probing such a coupling of the SMM *spin* to vibrations is a specific type of Kondo effect induced by quantum spin-tunneling (QST). This QST through the energy barrier arising from a dominant uni-axial magnetic anisotropy term relies on the presence of weak transverse anisotropy. Combined with the exchange tunneling to attached electrodes a QST-Kondo resonance specific to SMMs can arise [@Romeike06a]. One might expect such QST-assisted Kondo transport to be simply suppressed by coupling of the spin to molecular vibrations as this tends to increase the anisotropy barrier [@Kortus02]. However, the dynamical effect of vibrational fluctuations and the possible competition between longitudinal and transverse spin-vibration coupling have not been studied so far, even though coupling to vibrations in the Kondo regime has been considered for spin-isotropic molecules [@Paaske05; @Kikoin06; @Balseiro06; @*Cornaglia07].

In this paper we consider the modulation of the magnetic anisotropy of an SMM by a quantized vibrational mode distorting an SMM with half-integer spin. Strikingly, even *without static transverse anisotropy*, a QST-induced Kondo peak can arise in the linear conductance. This Kondo effect is dynamically generated by vibrational fluctuations which distort the SMM, and thereby allow the spin to fluctuate. More generally, a higher QST-Kondo temperature may result from spin-vibration coupling which is relevant for experimental investigation of low temperature transport through SMMs. This enhancement of the interplay of Kondo spin scattering and QST by discrete vibrations indicates a possible avenue along which transport and quantum magnetism may be combined with nano-mechanical effects.

[*Model and method.*]{} We consider a SMM strongly coupled to electronic leads at low temperature in the Coulomb blockade regime, where the charge on the SMM only changes virtually. We assume that the spin couples to a local vibrational mode with frequency $\Omega$. The total Hamiltonian reads $H={H_\text{SMM}}+{H_\text{K}}$ with $$\begin{aligned}
{H_\text{SMM}} & = -D S_z^2 +{{\textstyle \frac{1}{2}}}E \left( S_{+}^2+S_{-}^2\right) +\Omega {b_{\phantom \sigma}^{\dagger}}b \label{eq1}\\
      & + \big[ -D' S_z^2 + {{\textstyle \frac{1}{2}}}E' \left(S_+^2+S_{-}^2 \right) \big] \left({b_{\phantom \sigma}^{\dagger}}+b\right) \nonumber \\
{H_\text{K}}&=\sum_{k\sigma}{\epsilon_{{k}\sigma}^{\phantom{\dagger}}}{a_{{k}\sigma}^{\dagger}}{a_{{k}\sigma}^{\phantom{\dagger}}}+ J\boldsymbol{S} \cdot \boldsymbol{s} \,. \label{eq2}\end{aligned}$$ Here $S_z$ is the projection of the molecule’s spin on its easy axis, which we choose to be the $z$-axis and $S_{\pm}=S_x\pm i S_y$. We consider here only half-integer values of the spin magnitude $S$, for which there is a Kondo effect at zero magnetic field [@Romeike06a], and later comment on the integer spin case. Starting from an isolated molecule, the longitudinal anisotropy $D$ splits the eigenstates of $S_z$ into the inverted parabolic magnetic spectrum, which is sketched in [Fig. \[fig:1\]]{} for the representative case of $S=3/2$ used throughout this work. The zero-field splitting (ZFS) corresponds to the energy difference between the ground-state and the first magnetic excitation, and equals $\delta=(2S-1)D$ for $E=0$ (and $E'=D'=0$). The transverse anisotropy $E$ breaks the continuous rotational symmetry about the easy-axis of the SMM, thereby causing spin-tunneling through the barrier. As shown in [@Kortus02], vibrational modes modulate the magnetic anisotropy and can significantly contribute to the observed magnetic splittings. Here we additionally consider the dynamical effects of such coupling by allowing the dominant anisotropy parameters to depend linearly on the vibrational mode coordinate $Q=(b+{b_{\phantom \sigma}^{\dagger}})/\sqrt{2}$ through coupling coefficients $D'$ and $E'$. Here the operator $b$ ($b^\dagger$) relaxes (excites) the vibration by one quantum. Thus, when the SMM vibrates it lowers its symmetry and QST is enhanced. Importantly, this also holds for virtual quantum vibrations. We note that recently such a linear dependence of the $D$ parameter on the pitch angle coordinate [@Gregoli09] in the tetra-iron (III) “propeller”-SMM used in [@Zyazin10] has been measured. The conduction electron states, represented by the operators ${a_{{k}\sigma}^{\phantom{\dagger}}},{a_{{k}\sigma}^{\dagger}}$ in [Eq. (\[eq2\])]{}, correspond to even combinations of left and right physical electronic states and their bandwidth is given by $2W$. Finally, deep in the Coulomb blockade regime, the interaction of the SMM with the electrodes is given by an isotropic Heisenberg spin-exchange with the conduction band electron spin ${\mathbf{s}}={{\textstyle \frac{1}{2}}} \sum_{kk'}\sum_{\sigma\sigma'}{a_{{k}\sigma}^{\dagger}}\boldsymbol \tau_{\sigma\sigma'}{a_{{k'}\sigma'}^{\phantom{\dagger}}}$ where $\boldsymbol \tau$ is the vector of Pauli matrices. The coupling $J$ is assumed anti-ferromagnetic, which, as pointed out in [@Gonzalez08], depends on the spins of the virtual charge states of the SMM [@Aligia86; @*Lustfeld81]. One might expect that coupling to a molecular vibration suppresses the interaction of the SMM with the electrodes due to Franck-Condon overlap, effectively reducing $J$. However, for an isotropic spin 1/2 it was shown that the opposite may happen and that spin-exchange processes which change the vibrational quantum number are suppressed deep in the Coulomb blockade regime [@Paaske05]. Therefore we assume $J$ to be independent of the vibrational coordinate in [Eq. (\[eq2\])]{}.

![ \[fig:1\] (Color online). Magneto-mechanical excitation spectrum of the SMM with $S=3/2$. Magnetic states, lying on an inverted parabola due to the static longitudinal anisotropy ($D$), each have vibrational excitations ($n$) on the upright parabolas. Magnetic transitions induced by Kondo spin-scattering ($J$), static anisotropy ($E$) and longitudinal ($D'$) and transverse ($E'$) spin-vibration coupling are indicated. Magnetic states in the two different Kramer’s subspaces are marked blue and orange. ](figure1.eps){height="0.5\linewidth"}

The numerical results for the zero-temperature linear conductance $G(V) = (e^2/\hbar) \left( A(eV/2) + A(-eV/2) \right)$ as a function of the bias voltage $V$ presented below were calculated using the Numerical Renormalization Group (NRG). Here $A(\omega)=\sum_{\sigma} A_\sigma(\omega)$ is the equilibrium SMM spectral function obtained from the T-matrix [@Costi00]. This method is exact in the limit of linear response in $V$ or of strong asymmetric coupling of the SMM to the electrodes. For all NRG calculations we used the parameters $\Lambda=2$, $N_s=4000$ states [@Bulla08rev] and 11 vibrational states were sufficient to obtain results independent of the vibration number cutoff.

[*Static anisotropy.*]{} Even without the vibration ($E'=D'=0$) or transport ($J=0$) the SMM eigenstates are not spin-eigenstates when $E \ne 0$. However, for the typical case of moderate transverse anisotropy $E<D$ it still is convenient to label these mixed states by the dominant spin-eigenstate ($M$) in the superposition. Due to the two-fold spin-rotational symmetry of [Eq. (\[eq1\])]{} the mixing caused by $E$ is only possible within the two subspaces spanned by ${|{\pm {{\textstyle \frac{1}{2}}}}\rangle},{|{\mp {{\textstyle \frac{3}{2}}}}\rangle}$ (marked blue and orange in [Fig. \[fig:1\]]{}). It was shown [@Romeike06a] that upon including exchange spin scattering with conduction band electrons ($J$) the interplay with the QST (generated by $E$) gives rise to a Kondo peak in the linear conductance. Due to the presence of the electrodes spin-fluctuations thus become significant at low temperature despite the presence of the anisotropy barrier of size $DS^2$ opposing SMM spin-reversal. A hallmark of this QST-Kondo effect is that it is suppressed with decreasing ratio of $E/D$ or increasing $S$ (because the barrier grows). This QST-Kondo effect is clearly distinct from the under-screened high-spin Kondo effect which arises for $S\geq 1$ in the limit $D=E=D'=E'=\Omega=0$ where magnetic anisotropy is not important [@Koller05]. Starting from the latter limit, introducing the anisotropy barrier, $D>0$, both splits and suppresses the [high-spin Kondo ]{}peak. The remnants of the [high-spin Kondo ]{}peak are located close to the ZFS scale $\delta =(2S-1)D$, with possible renormalization to smaller values for large exchange interaction $J$ [@Zyazin10].

These ZFS [high-spin Kondo ]{}side-peaks have recently been studied in detail in several experiments [@Zyazin10; @Parks10; @Otte08; @*Otte09]. The [QST Kondo ]{}peak, on the other hand, located at zero-bias in the absence of magnetic field, has to our knowledge not been observed experimentally. One possible reason for this is that in SMMs typically $E/D<1$ and the [QST Kondo ]{}temperature $T_K$ is suppressed too much, reducing both the height and width of the peak (without splitting it).

[*Dynamic anisotropy.*]{} The anisotropic couplings of the large spin to the vibrational mode $D'$ and $E'$ are however also of importance [@Kortus02], especially if the vibrational mode frequency energy $\Omega$ is low. The simplest effect of the longitudinal vibrational coupling $D'$ is a polaronic shift which is different for each magnetic level. For $E=E'=0$ one can shift the vibrational coordinate $Q$ (or the operator $b$) in ${H_\text{SMM}}$ by an $S_z^2$-dependent amount, resulting in an effective Hamiltonian with eigenvalues $
  E_{M,n} = -D M^2 -(D'^2/\Omega) M^4  +\Omega n
$, where $M=-S,..,S$ and $n=0,1,..$ are the quantum numbers of the spin and the polaron, respectively. Each SMM eigenstate is thus dressed by vibrational excitations as sketched in [Fig. \[fig:1\]]{}. The effective static energy barrier opposing spin inversion is changed in shape and increased in height. This always results in an effectively *enhanced* ZFS $\delta \rightarrow\Delta$, $$\Delta=\delta + (4S(S^2-\frac{3}{2}S+1)-1)\frac{D'^2}{\Omega}
  \label{eq:deltaeff}
  .$$ Based on this simple picture one may expect that the [QST Kondo ]{}effect is suppressed by coupling to vibrations.

![ (Color online). Logarithmic color plot of the SMM spectral function $A(\omega)$ normalized to the value $A_0=\pi^2/4$ achieved for a symmetrically coupled quantum channel. This corresponds to the linear conductance at $\omega=eV$ and $T=0$. Parameters $S=3/2$, $D=5\cdot10^{-4}W$, $E=0.1D$, $E'=0$, $\Omega=0.5D$, $J=0.2W$ and $D'$ is varied. The dashed line represents the renormalized ZFS from [Eq. (\[eq:deltaeff\])]{}. []{data-label="fig:2"}](figure2.eps){height="0.5\linewidth"}

For fixed $E'=0$ this is indeed the case as can be seen in [Fig. \[fig:2\]]{}: Due to the moderate but non-vanishing static $E=0.1D$ a zero-bias [QST Kondo ]{}peak (red) occurs which is increasingly suppressed with the coupling $D'$ due to an increased barrier. In addition two side-peaks are found at the effective ZFS $\omega \approx \pm \Delta$ given by [Eq. (\[eq:deltaeff\])]{} as indicated by the dashed lines (and renormalized to slightly smaller value due to strong $J$). These peaks are the remnants of the $S=3/2$ [high-spin Kondo ]{}effect.

In [Fig. \[fig:3\]]{} we now focus on the dynamical effect of the spin-vibration coupling by first considering zero transverse anisotropy ($E=0$). Without coupling to the vibrations there is no [QST Kondo ]{}peak. Switching on spin-vibration coupling of only one type, either $D' \neq 0$ and $E'=0$ (black), or, $E' \neq 0$ and $D'=0$ (blue), does not change this result. Only in the latter case, vibrational side-peaks appear in the spectrum at $\omega=\pm \Omega$ (renormalized to smaller value due to strong $J$). Strikingly, when both types of couplings are non-zero, a pronounced [QST Kondo ]{}peak appears, even though there is no transverse magnetic anisotropy $E=0$ (red). This *vibration-induced* [QST Kondo ]{}effect is the central result of this work. We now first explain why it requires the presence of both longitudinal and transverse couplings referring to processes sketched in [Fig. \[fig:1\]]{}. The Kondo effect is related to fluctuations between degenerate states of the SMM which are in opposite Kramer’s subspaces [@Romeike06a]. Since $E=0$, to reach states on the other side of the anisotropy barrier, a vibration-induced spin-tunneling of type $E'$ is required, which however, involves a virtual vibrational excitation. An exchange scattering process ($J$), which changes the Kramer’s subspace, cannot change the vibrational number at low energy, c.f. [@Paaske05]. This is why the two processes $E'$ and $J$ result only in a [QST Kondo ]{}side-peak in [Fig. \[fig:3\]]{} which is split at $\Omega$ and suppressed due to the inability to reach the vibrational ground-state. Only when a longitudinal spin-coupling $D'$ is present as well, the virtual vibrational excitation can *coherently* reach the ground state and a full *zero-bias* [QST Kondo ]{}anomaly can develop, as the red curve in [Fig. \[fig:3\]]{} shows. One may say that due to the quantum-fluctuations of the vibrational mode of the SMM, the magnetic symmetry is broken in virtual intermediate states, allowing for Kondo exchange scattering, c.f. [@Kikoin06]. Therefore even for SMMs which have vanishing static $E$ due to symmetry, spin-fluctuations may result in pronounced transport features due to the interplay of exchange scattering and intra-molecular spin-vibration coupling. Clearly, the vibrational fluctuations can further assist the [QST Kondo ]{}effect when it already is present due to static $E$: this results in a higher Kondo temperature as shown in the green curve of [Fig. \[fig:3\]]{}.

![ (Color online). Effect of the spin-vibration coupling on the QST-Kondo peak: SMM spectral functions shown for various combinations of zero and non-zero values of the parameters. Non-zero values used: $D'=0.04D$, $E'=0.16D$ and $E=0.02D$. Remaining parameters as in [Fig. \[fig:2\]]{}. []{data-label="fig:3"}](figure3.eps){height="0.5\linewidth"}

In [Fig. \[fig:4\]]{} we show the dependence of the [QST Kondo ]{}temperature $T_K$ on the longitudinal and transverse static anisotropies and their respective vibration-couplings $D'$ and $E'$. $T_K$ grows as both the transverse anisotropies are increased since they both enhance QST. Whereas $D$ always suppresses the [QST Kondo ]{}effect, [Fig. \[fig:4\]]{}(a), its fluctuations first enhance $T_K$ by allowing QST between the Kramers degenerate ground-states. Eventually they will suppress $T_K$ if the vibrational contribution to the anisotropy barrier $S^4D'^2/\Omega$, protecting the SMM against these processes, increases too much.

![ (Color online). QST-Kondo temperature $T_K$ in units of bandwidth $2W$ (log color scale) determined from the NRG level flow for $S=3/2$ and $J=0.2W$. (a) Static [QST Kondo ]{}effect: $T_K$ as function of the static anisotropy parameters $D$, $E$ without spin-vibration coupling. Dashed contour lines indicate that $T_K$ increases with the ratio $E/D$ [@Romeike06a]. (b) [vibration-induced QST Kondo ]{}effect: $T_K$ as function of spin-vibration couplings $D'$ and $E'$ with $\Omega=0.5D$ for static anisotropy, $D=5\cdot10^{-4}W$ and $E=0$. The dashed line marks the regime $D'>0.4D$ where $D'$ starts to suppress $T_K$, note the constant $D$ here and also the offset: $T_K=0$ for either $E'=0$ or $D'=0$. Results for small finite $E$ are similar. []{data-label="fig:4"}](figure4.eps){height="0.4\linewidth"}

Finally we show in Fig. \[fig:5\] how the experimentally accessible evolution of the conductance with a magnetic field reveals the different origin of the various peaks. For simplicity, we consider the field to be along the easy axis as in some experiments [@Zyazin10; @Parks10] and added the Zeeman term $-S_zH_z$ to ${H_\text{SMM}}$ in [Eq. (\[eq1\])]{} absorbing the g-factor into the magnetic field. As the magnetic field is increased, the [QST Kondo ]{}peak is weakened and splits with the anomalous $g$-factor, $|\omega_{\text{Kondo}}| = 2 S H_z$ [@Romeike11a]. This clearly indicates the origin of the [QST Kondo ]{}effect, since the ground-state Kramer’s doublet $M=\pm S$ is split by $\Delta M=\pm 2S$. Strikingly, the vibrational side-peaks have the same, strong field dependence, as they correspond to a similar transition offset in energy by $\Omega$: $|\omega_{\text{vib}}| = \Omega + 2 S H_z$. In contrast to this, the [high-spin Kondo ]{}peak (ZFS) evolves much slower in the magnetic field, independent of the spin magnitude $S$: $|\omega_{\text{ZFS}}| = \Delta +  H_z$, signaling that it corresponds only to a transition with $\Delta M=\pm 1$. Comparing with the above formulas for the peak evolution, indicated by dashed lines in Fig. \[fig:5\], we conclude that the [QST Kondo ]{}and [high-spin Kondo ]{}effects are distinguishable, especially for SMM with large spin.

![ (Color online). Magnetic field evolution of the spectral function (log color scale) for the parameters of the red curve of [Fig. \[fig:3\]]{}: $S=3/2$, $E=0.02D$, $D'=0.04D$ and $E'=0.16D$. Dashed lines mark the QST-Kondo (red) and vibrational side-peak (yellow) both evolving with an anomalous g-factor and zero-field split high-spin Kondo peak (blue). []{data-label="fig:5"}](figure5.eps){height="0.5\linewidth"}

Finally, we remark that for an SMM with integer spin $S$ there is no [QST Kondo ]{}effect at zero field, but instead a zero-bias conductance dip (for $0<E<D$). As pointed out in [@Leuenberger06] a transverse magnetic field results in a [QST Kondo ]{}effect, where similar spin-vibration effects as studied here could occur.

[*Conclusion.*]{} We have studied the interplay of spin and vibration on the conductance through a single-molecule magnet. Whereas longitudinal coupling to the vibration increases the zero-field splitting, suppressing the quantum spin-tunneling Kondo peak, a vibrationally induced quantum spin-tunneling Kondo effect can occur at zero bias if transverse coupling is present as well. The transition to virtual vibrational excited states and the transverse spin-mixing in these virtual states results in a Kondo effect, even in the absence of static transverse anisotropy. The interplay with vibrations thus can increase the quantum spin-tunneling Kondo temperature for a given static anisotropy, which may motivate further experimental investigation of low temperature transport though single-molecule magnets. The measurable magnetic field evolution of the conductance reveals that vibrational side-bands acquire an anomalous $g$-factor. We acknowledge A. Cornia, J. Kortus and J. Paaske for stimulating discussions and support from NanoSci-ERA.

[23]{} natexlab\#1[\#1]{}bibnamefont \#1[\#1]{}bibfnamefont \#1[\#1]{}citenamefont \#1[\#1]{}url \#1[`#1`]{}urlprefix\[2\][\#2]{} \[2\]\[\][[\#2](#2)]{}

, ****, ().

, , , , , , , , , , , ****, ().

, , , , , , , , , , , ****, ().

, , , , , , , , ****, ().

, , , , , , ****, ().

, , , , , , **** ().

, ****, ().

, ****, ().

, , , , ****, ().

, , , , ****, ().

, ****, ().

, , , ****, ().

, , , ****, ().

, , , ****, ().

, , , , , , , , ****, ().

, , , ****, ().

, , , ****, ().

, ****, ().

, ****, ().

, , , ****, ().

, , , ****, ().

, , , , ****, ().

, ****, ().


The surgical learning curve of artificial urinary sphincter implantation: implications for prosthetic training and referral.
We investigated the surgical learning curve of artificial urinary sphincter implantation using a large, consecutive, single surgeon series. We retrospectively reviewed the results of the first 150 consecutive, virgin artificial urinary sphincter implantations performed by a single surgeon between 1992 and 2003 for post-prostatectomy male stress urinary incontinence. Complication and reoperation rates, and continence outcomes (daily pad use and number of patients with a functional artificial urinary sphincter at last followup) were analyzed as a function of consecutive implant cases. There was a significant decrease in the number of patients with complications (12 vs 3, relative risk 4.0, p = 0.012) and the number with reoperation (11 vs 3, relative risk 3.7, p = 0.026) when the first 25 patients who underwent artificial urinary sphincter implantation were compared to the second 25. No further decrease was noted beyond the first 25 cases. Despite significantly higher complication and reoperation rates in the first 25 cases, equivalent functional outcomes (same postoperative daily pad use and number of patients with a functional artificial urinary sphincter at last followup) were still achieved after artificial urinary sphincter revision. The surgical learning curve of placing a virgin artificial urinary sphincter was about 25 cases, as measured by complication and reoperation rates. This case number was high compared to typical exposure during residency and clinical practice. There is an urgent need to improve urological prosthetic training and emphasize the referral of artificial urinary sphincter cases to regional centers of excellence or to high volume, artificial urinary sphincter implanters to improve the surgical outcome.


/*
 * Copyright 2016-present Open Networking Foundation
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.onosproject.ui.impl.topo;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.onosproject.net.DefaultAnnotations;
import org.onosproject.net.config.NetworkConfigRegistryAdapter;
import org.onosproject.net.region.DefaultRegion;
import org.onosproject.net.region.Region;
import org.onosproject.ui.UiTopoLayoutService;
import org.onosproject.ui.model.topo.UiTopoLayout;
import org.onosproject.ui.model.topo.UiTopoLayoutId;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
import static org.onosproject.net.region.Region.Type.CAMPUS;
import static org.onosproject.net.region.RegionId.regionId;
import static org.onosproject.ui.model.topo.UiTopoLayoutId.layoutId;

/**
 * Suite of unit tests for the UI topology layout manager.
 */
public class UiTopoLayoutManagerTest {

    private static class MockConfigService extends NetworkConfigRegistryAdapter {
    }

    private static Region region(String id, String name, Region.Type type) {
        return new DefaultRegion(regionId(id), name, type,
                DefaultAnnotations.EMPTY, null);
    }

    private static UiTopoLayout layout(String id, Region region, String parentId) {
        UiTopoLayoutId parent = parentId == null ? null : layoutId(parentId);
        UiTopoLayout layout = new UiTopoLayout(layoutId(id));
        // TODO: set region and parent
        return layout;
    }

    private static final Region R1 = region("r1", "R1", CAMPUS);
    private static final Region R2 = region("r2", "R2", CAMPUS);

    private static final UiTopoLayout L1 = layout("l1", R1, null);
    private static final UiTopoLayout L2 = layout("l2", R2, null);

    private UiTopoLayoutService svc;
    private UiTopoLayoutManager mgr;

    @Before
    public void setUp() {
        mgr = new UiTopoLayoutManager();
        svc = mgr;

        mgr.cfgService = new MockConfigService();
        mgr.activate();
    }

    @After
    public void tearDown() {
        mgr.deactivate();
        mgr.cfgService = null;
    }

    @Test
    public void basics() {
        assertEquals("should be just default layout", 1, svc.getLayouts().size());
        svc.addLayout(L1);
        svc.addLayout(L2);
        assertEquals("incorrect number of layouts", 3, svc.getLayouts().size());
        assertEquals("incorrect layout", L1.id(), svc.getLayout(L1.id()).id());
        assertEquals("incorrect layout", L2.id(), svc.getLayout(L2.id()).id());
        svc.removeLayout(L1);
        assertEquals("incorrect number of layouts", 2, svc.getLayouts().size());
        assertNull("layout should be gone", svc.getLayout(L1.id()));
        assertEquals("incorrect layout", L2.id(), svc.getLayout(L2.id()).id());
    }

}


Q:

SQL Server case statement embedded within In clause

I have written a case statement inside an IN clause. And I am getting the following error:

Subquery returned more than 1 value. This is not permitted when the
  subquery follows =, !=, <, <= , >, >= or when the subquery is used as
  an expression.

Here is the code:
declare @Consultant as bigint
set @Consultant=0

select * from tProject where
 tProject.ID in
(
Case
When @Consultant=0 then (select #t1.ProjectID from #t1)
else  (select #t1.ProjectID from #t1 inner join #t2 on #t1.ProjectID=#t2.ProjectID)
end
)

A:

Try this
declare @Consultant as bigint
set @Consultant=0

select * from tProject where
( tProject.ID in (select #t1.ProjectID from #t1) and @Consultant=0)

or

(tProject.ID in
(select #t1.ProjectID from #t1 inner join #t2 on
#t1.ProjectID=#t2.ProjectID) and @Consultant<>0
)

or use IF
declare @Consultant as bigint
set @Consultant=0

If @Consultant=0 then
select * from tProject where
tProject.ID in (select #t1.ProjectID from #t1)

else

select * from tProject where
tProject.ID in
(select #t1.ProjectID from #t1 inner join #t2 on
#t1.ProjectID=#t2.ProjectID)


FRIEDRICH NIETZSCHE HAS BEEN accused of many things in politics, from Nazism to incoherence. His place in political philosophy has been rejected, while many see him as an essential thinker about power, the state, and social difference. While there is a danger of evasion and finding excuses to ignore difficult parts of Nietzsche, it would nevertheless be a mistake to neglect the degree to which Nietzsche presents provocations, thought experiments, literary exercises, and explorations of possibility, as inseparable parts of his philosophical project. The most provocatively anti-egalitarian and illiberal moments in Nietzsche, therefore, should not turn into the end of the argument. Hugo Drochon’s Nietzsche’s Great Politics provides explanations for these radical conflicts and ambiguities along with a clear account of how we can make sense of Nietzsche as a political thinker. It is an approach visibly influenced by Bernard Williams and shaped by an urge to put Nietzsche in historical context:

For Nietzsche to have a politics, he therefore would need to relate his […] ethical and psychological insights […] to an intelligible account of modern politics — namely, that of the state, democracy and international politics. Moreover, he must posit a vision of how power should be exercised in his ideal society, with what limitations and to what ends. To this account we should add something like a political strategy: given his understanding of modern politics and his advocating of a future ideal, how does Nietzsche propose we move from one to the other? What is his political program?

The approach — both to Nietzsche and to more recent political thought — is carefully documented. Drochon establishes his positions in a methodical manner and while there is not much to complain about in the book, sometimes the methodical approach is done at the expense of establishing a clear argument; it would be interesting to see the author in a more boldly argumentative and less carefully descriptive mode. What he achieves here, however, is certainly enough to make his book necessary reading for anyone working on Nietzsche as a political thinker.

Drochon is skeptical of humanist-apolitical readings of Nietzsche, along with democratic readings and totalitarian-hierarchical readings. What he argues for is a “soft” version of the perfectionism John Rawls attributes to Nietzsche, where there is a hierarchy between aristocracy and lower classes, but in the form of an agonism, which is less harsh than what some of the most extreme of Nietzsche’s comments about slavery might suggest:

On Rawls’s scale, Nietzsche therefore might not appear to be as extreme as Rawls makes him out to be. That the two spheres Nietzsche posits should have different aspirations — that the spirit of the herd rules within the herd, and the “independent ones” have their own different valuation — reveals that there are balances to Nietzsche’s desire for society to be organized in such a way as to make the overmen possible.

Drochon is careful to take full account of the most provocative of Nietzsche’s ideas about Western slavery and the Indian caste system, so there is no question of toning Nietzsche down or evading his more uncomfortable thoughts. The book provides a nuanced argument that Nietzsche had a personal view of modern politics — and not just a desire to return to an earlier age — and that, in the context of the modern world, he thought a relatively mild form of hierarchy was the best way of cultivating great individuals.

What Drochon’s book also does is open up questions of the relation between universal rights and the pursuit of excellence — what might be called norms versus life. In taking up the topic of norms, Nietzsche was responding to the pressure of the Kantian legacy, which underlies the emphasis on norms, along with other influences feeding into the later thought, such as Utilitarian ethics and positivist science. The ideal of equality in Rawls, and the goal of cultural merit in Nietzsche, might be difficult to harmonize if there is any kind of recognition of excellence in culture as the basic principle. Even without greater economic goods rewarding the creator of excellence, the creator is going to have more esteem from peers than those who have not created such excellence, which may conflict with Rawlsian norms. At the very least, Rawls requires some kind of benefit to those with the least such esteem, or that is surely the consequence of applying his ideas to culture. If culture is at the center of human life, as Nietzsche requires, then the issue must arise. Of course, Nietzsche goes beyond this, suggesting that creation of excellence requires an aristocracy standing above the lower classes in rights. In this case, not just equality of rewards, but equality of rights and opportunities are undermined. Even allowing for some meritocratic opportunities to rise up through the hierarchy, there is clearly some difference in opportunities according to initial place in the hierarchy.

It might also be argued that some inherited benefits are the inevitable price for allowing individuals to pursue excellence and allowing words for such excellence. Some trade-off is necessary so that there can be a flourishing society, in which individuals with great capacities prosper. There are broadly Rawlsian ways of justifying the promotion of excellence, however. Nietzsche is not even discussing trade-offs or regrettable prices for the existence of some goods, in the manner of Rawls; it just is the case for him that a society is justified by its great individuals. It might nevertheless be possible to harmonize a concern with the flourishing of all individuals and the flourishing of great individuals.

Drochon examines and rejects a number of proposals for seeing Nietzsche’s position as one of harmonizing the flourishing of all and the flourishing of the excellent few. He argues that Emersonian perfectionism is too democratic from Nietzsche’s point of view. In related arguments, he suggests that aristocratic and elitist aspects of J. S. Mill and Tocqueville’s thought do not capture the extent of Nietzsche’s adherence to a hierarchy that can be traced back to ancient Greece. In Drochon’s account, Nietzsche sees the ancient Greek polity as losing its creativity in the time of democratic Athens with Plato’s ideal state as a final response. Nietzsche’s inversion of Platonic metaphysics is taken up as more preservation than denial of Plato’s political thought.

What Drochon overlooks in Nietzsche’s view of antiquity is the latter’s Romanism: his apparent admiration for the Roman aristocracy, strongly expressed in the On the Genealogy of Morals (Essay One). It fits with the structuring of that essay for a preference for the master over the slave. The opposition is mobile, so that the Jews, who are the most slavish people for the Romans, only adopt the slavish characteristics in adaptation to conquest. The opposition between Roman political masters and Jewish religious slaves, according to Nietzsche, is maintained up to the 18th century, in admiration for the French aristocracy as a political class. The French Revolution is then a late expression of Judea, so that revolutionary ideology is equated with slavish religiosity.

We can note ambiguities here. Both sides in this French opposition were influenced by Rousseau, generally referred to as a plebeian thinker in Nietzsche. Rousseau was in some degree the product of aristocratic patronage and the prevailing thoughts of this aristocracy, which has its own interest in natural humanity. His social and political thought follows on from earlier aristocratic and Catholic thinkers, like Louis de Rouvroy, Duke de Saint-Simon and Bishop François Fénelon. The former’s Memoirs include many anticipations of Rousseau’s notion of amour-propre, while the latter’s Adventures of Telemachus features in Émile and anticipates Rousseau’s advocacy of simple agricultural societies. The trauma of the socialization of natural humanity in Rousseau has strong echoes in Nietzsche, just to indicate one line of connection.

It would be very difficult for anyone to capture all the ways in which Nietzsche explores politics, including the proposed centrality of the Rome versus Judea tension. One complication in Nietzsche’s Romanism is that the empire he admires was premised on a decline of the aristocracy, compared with a monarchical figure surrounded by advisors from lesser social levels and looking for popular support (at least from soldiers and the city of Rome).

Drochon gives us a unified approach to Nietzsche’s political thought, and this is done scrupulously and with attention to nuance, but awareness of the trickier aspects of unifying Nietzsche’s thought is weakened. A trade-off between unity and giving a full account of all parts of Nietzsche’s work is inevitable, and Drochon’s trade-off is successful, but that is no reason to ignore the cost. If Nietzsche’s thought is aristocratic, as Drochon suggests, that does not exclude monarchy, but it does limit the kind of monarchy that can be accommodated. The more “despotic” that is, the less it has a restraining aristocratic power, the less it is suited to Nietzsche’s vision of a republic of great individuals. The same issue arises with Napoleon III, who Drochon briefly notes as an inspiration to Nietzsche. Of course, there was an element of aristocratic culture in Napoleon III’s reign, but it was a populist monarchy resting on plebiscitary legitimacy and mixed autocratic tendencies with some respect for representative institutions. Maybe the relatively liberal despotism of Napoleon III fits into Drochon’s interpretation of Nietzsche as offering a “softer” kind of hierarchy in the democratic world, but the book does not fully articulate this possibility. What Drochon does take account of is Nietzsche’s preference for a Mediterranean and European vision in Napoleon III, which has an element of Romanism in it.

There is a much bigger context for Nietzsche’s remarks on Rome, which includes Johann Gottlieb Fichte’s Addresses to the German Nation, where he contrasts national German spirit with universalist Roman-French spirit. Nietzsche does not seem to have been a great reader of German Idealism, and he may not have been very familiar with the text, but he was surely aware of that line of argument. However, even in Drochon’s account of Nietzsche’s relations with Wagner, the turn away from Germanism to Romano-Gallicism is not emphasized.

Drochon’s thesis on the convergence of Nietzschean elitism with a kind of liberal perfectionism, as defined by Rawls, is very suggestive, though there are other ways of investigating this aspect of Nietzsche. There is a history of liberalism, with roots in earlier republican thought, that precedes the kind of democratic egalitarianism that Rawls proposes. The older republican and liberal tradition from Aristotle to Benjamin Constant restricts political life to a privileged part of the community; it is aristocratic in nature, tending to assume that there is a natural aristocracy that displays perfectionist capacities. Liberty is presumed to come from constitutional arrangements in which a political aristocracy offers moderation in the use of power, compared with monarchical despots and the people as a whole.

By the early 19th century, this vision was under pressure because liberal thinkers accepted the moral equality of all humans and rejected slavery. This move was strongly constrained by racist and patriarchal assumptions, but was still incompatible with the earlier strong aristocratic principles. The older assumptions about the exclusive role of the aristocracy in politics, or at least its natural dominance, carried on in other forms. Alexis de Tocqueville’s fears of the “tyranny of the majority,” along with his belief that the judiciary and the legal profession should provide a new aristocracy, anticipate more recent ideas of a political class and of restraints on majoritarianism, even within systems where all citizens elect the law-making body.

On the face of it, Nietzsche was not taken with this way of thinking either. What distinguishes him from this kind of liberal, or conservative, elitism is a far deeper suspicion of the kind of community that exists in a world of market exchange and expanding state functions. Nietzsche criticized the effects of market exchange on character, weakening it as individuals become more concerned with gaining the approval of others, via the marketplace, for their capacities and the products of their capacities. This did not make him a socialist anymore than his objections to the expanding state made him a night-watchman state liberal. He proposed forms of community around hospitality, friendship, promise making, and artistic and scientific experimentation that are never integrated into a system.

As Drochon points out, Nietzsche favored some kind of European aristocracy as political leadership, with echoes of Roman and Hohenstaufen Empire. In some way, then, Nietzsche is an advocate of a European Union of sorts, though how far his vision might have been satisfied by the technocrats and largely Catholic politicians at the origin of the EU is another matter. In applying Nietzsche to the world of liberal democratic politics we are likely to feel some tension between the heroic ruling class he imagines and the banal realities of career politicians trying to assemble coalitions of voters. This is a process that looks more like the work of the higher man, the conformist, than the overman.

Nietzsche shows an inclination toward the isolated philosopher, or artist, as his model, and a rather eclectic taste in politicians. The corrupt and deceitful Mirabeau the Younger, a leading figure among constitutional monarchists in the early stage of the French Revolution, receives favorable mention along with Napoleon and Lazare Carnot, a Jacobin who went over to Napoleon, while keeping republican principles. The briefly reigning Kaiser Friedrich III, between Wilhelm I and Wilhelm II, who favored more liberal policies in Germany, provides another point of reference.

What should also be explored in Nietzsche’s politics is how an aristocracy can be formed, which must also accommodate the Nietzsche-type, the thinker who needs solitude, distance, and a very peripheral relation to political community. In Nietzsche’s Great Politics, Drochon provides a fine way into these questions surrounding Nietzsche’s thought about great politics. He provides a scrupulous account of Nietzsche’s political thought and a stimulating argument for a way of taking Nietzsche seriously from a political point of view.

¤

Barry Stocker teaches philosophy within the Department of Humanities and Social Science and the Graduate School of Arts and Sciences at Istanbul Technical University.


52 F.3d 318
U.S.v.David Cavallaro
NO. 94-7497
United States Court of Appeals,Third Circuit.
Mar 31, 1995

Appeal From:  M.D.Pa., No. 92-cr-00152-2,
McClure, J.

1
AFFIRMED.


Share this:

A controversial imam who authorities have called an unindicted co-conspirator in the 1993 World Trade Center bombing is scheduled to speak tonight to a Muslim student group at Queens College on the subject “How Islam Perfected Thanksgiving.”

The appearance by Brooklyn mosque imam Siraj Wahhaj – who also testified for convicted terror plotter “blind Sheik” Omar Abdel Rahman – and a recent nasty verbal altercation involving members of the Muslim Student Association that invited him, has spurred some other students to demand that Queens College cut off funding for that group.

The MSA “definitely should not be funded by the taxpayers,” Queens College Republicans Vice President Ryan James Girdusky told The Post.

“The MSA has shown itself to be an alleged possible breeding ground of anti-American jihad’s thoughts,” Girdusky wrote the CUNY school’s president in a recent letter.

Professor Tim Rosen said that at a screening of the anti-radical Muslim film “Fitna” two weeks ago, a MSA member was “laughing” and muttered “good” during footage showing American businessman Nicholas Berg being beheaded by terrorists in Iraq, and that the student was “giggling and saying ‘good’ ” during footage of planes hitting the Twin Towers.

At a raucous post-screening debate with Queens College Republicans, who hosted the film, an MSA member said, “If I had enough money I would be part of the jihad army, I would kill all the Jews,” recalled College Republicans treasurer Eli Karl.

“He said, ‘When I get enough money, I’m going to do some pretty bad things . . . and he talked about getting a bomb,” recalled Karl, who now supports de-funding MSA.

Girdusky said a female member of MSA “said something like, ‘How could you show something like this [the movie] when we get attacked for denying the Holocaust? ‘ ”

The MSA did not respond to requests for comment.

Karim Abdullah, a spokesman for Wahhaj, said the allegation that the imam was somehow involved in the 1993 bombing is completely baseless. And Abdullah said that Wahhaj testified as an “expert witness” in the case of terror booster Rahman, not as an advocate.

Mayor Bloomberg last week expressed regret for having Wahhaj attend a Nov. 12 City Hall meeting of Muslim leaders, where the mayor and the imam had shaken hands.

Queens College, when asked about Wahhaj issued a statement noting that speakers invited to campus are protected by the Constitutional guarantee of free speech.

The college also said it has “award-winning programs to foster peace between Muslims and Jews.”

Queens College did not address a question about how campus security responded when some members of the College Republicans called security to report the MSA member who had mentioned “jihad” and a “bomb” after the movie screening.


Create a Destination Decks don't have to be attached to the house; they can lead to new vistas, private retreats and little nooks in the garden.

Dreamy Urban Deck This ipe deck includes a custom powder-coated steel planter with native and drought-resistant perennials and shrubs. Design by Groundworks, Inc.

Emphasizing the View The view was the foremost design factor in this elegant deck. Gardens designed by Madelyn Simon

Dreamy Deck At HGTV Dream Home 2012, the entertainment deck features a spa with a view of Utah's wide-open spaces.

Naturally Pretty A color palette of earthy browns and vibrant greens plus invisible doors connect interior spaces to this contemporary deck, creating an expanded living space. Design by Linda Sullivan

Adaptable Deck This versatile outdoor space offers three different types of entertaining areas, depending on the weather: a gathering spot around the fire pit, a deck for sunny afternoons and an enclosed gazebo. Design by Robert Hursthouse From: Bob Hursthouse

Blending Naturally Steep terrain needn't be a deterrent to outdoor living. This amazing multi-level deck provides plenty of space for relaxing and entertaining, yet stays in tune with the rugged woodsy environs.

Country Lounging This warm redwood deck pops against the bright colored pergola. Add whimsy with hanging and crawling plants in a variety of colors and a wall of floating windows. Design by Claudia Schmutzler From: Claudia Schmutzler

Cottage-Style Porch This late 19th century home was completely refurbished, including a beautiful private porch that overlooks magnificent landscaping. A comfortable seating area complements the space and an outdoor rug anchors the primary seating area. Design by Ron Nathan From: Ron Nathan

Contemporary Elements Warm, natural elements like redwood, brick and plants make this outdoor space cozy. The custom brick pizza oven adds an element of fun to the space, which is perfect for family gatherings. Design by Claudia Schmutzler From: Claudia Schmutzler

Cozy Cabana An octagonal cabana makes a cozy spot for cold drinks and watching sunsets. Design by Barry Dixon From: Barry Dixon

A Bit of Bohemian In an artistic couple's backyard, Jamie Durie created three pergolas for dining and lounging spaces. Each structure has a macrame roof made of hand-dyed ropes, from which baskets of flowers and foliage hang. From: Jamie Durie

Vegetable Boardwalk For a couple who wanted a garage remodel so they can develop their cooking-school-for-kids business, Jamie Durie created a "vegetable boardwalk" as part of the larger makeover. The vertical gardens greatly expand the amount of produce the couple can grow, and edibles are near the kitchen for easy care and harvest.

Sunbathing in the City The city seems like a world away in this urban rooftop garden, designed by Adam Miller. Artificial turf surrounds the pergolas.

Contemporary Lounge These neutrals work together to create a sleek and cozy outdoor space. The warm redwood deck and pergola are accented with creamy neutrals in the furniture and stone elements like the fire pit and walls. Design by Claudia Schmutzler From: Claudia Schmutzler

Sky-High Terrace Terraced levels feature a small hot tub, amazing city views and even a potting shed. Design by Jeff Tohl From: Jeffrey Tohl

Moveable Seating Designed by Jamie Durie, this seating area  complete with its own shade  can be moved around the deck as needed. From: Jamie Durie

Permanent Shade A cantilever roof with natural cedar underside partially shades the dining area on the HGTV Green Home 2011 deck and adds interest to the outdoor space.

Natural Oasis Beautiful plantings, colorful details and streamlined simplicity accent this Asian-style dining area, designed by Jane Ellison. From: Jane Ellison

Mountain Views At HGTV Dream Home 2011, ample decking provides plenty of places to relax and enjoy the mountain views.

Mediterranean Dining This deck was extended to provide ample space for a dining table near the luxurious infinity pool. Design by Jamie Durie From: Jamie Durie

A Daybed to Remember A fabulous swinging daybed provides resting space near the kitchen and dining counter on this contemporary urban deck. A grade-level planter adds year-round greenery. The arborvitae will fill out to create a green wall. Design by Adam Miller

Floating Roof A set of folding glass doors is the only thing dividing indoors and the outside. The floating roof, suspended between two giant trees, shades the inviting deck. A sunken deck for dining and shade-loving plants completes this Seattle-inspired design by Jamie Durie.

Creekside Retreat This timber pergola provides a restful oasis beside a creek. Rock walls and plants help define the space. Design by Dan Berger

Building Green One of the eco-friendly elements of HGTV Green Home 2012 is the barbecue courtyard. Born of architect Steve Kemp's vision for a truly green design, the outdoor space replaces the conventional backyard, which would have required major regrading of the site and the construction of retaining walls. "Now the 'yard' is open to almost every room in the house, rather than being open to one or two rooms," he says.

Enormous Fun In this amazing makeover by landscape designer Ahmed Hassan, a custom deck doubles the family's available living space. Under the cedar pergola, custom daybeds invite serious lounging (and napping).


In The Bourgeois Virtue of Contingency, I explained my skepticism about McCloskey’s thesis that the industrial revolution took off due to a change in societal values, namely the adoption of a bourgeois ethic that gave dignity to merchants and commerce.

Using historical examples, I tried to show that norms and values arise spontaneously following changes to the boundary conditions of our rules and institutions. Of course, new values must ultimately shape institutions as well, but it will depend on the rate of diffusion and whether, once the ideas are out there, they can coalesce in a politically potent way.

In the conversations that followed, McCloskey criticized the Acemoglu and Robinson view of economic development as “add-institutions-and-stir.” She buttressed her criticism with examples, such as the failure of time clocks to correct nurse absenteeism in India. According to McCloskey, what was lacking was an ethic of professionalism — that is, the mutual expectation of professionalism from nurse to nurse required to instill the disciplining sense of an Impartial Spectator.

My caveat is to say that in this and every other case, the details matter. In a sense, introducing a mere time clock assumed too much in terms of existing social capital. For example, in a disciplined household, a parent’s stern look can alone induce obedience, while dysfunctional households often involve the most yelling and corporal punishment. It’s a phenomenon that, of all things, reminds me of monetary policy and what economist Nick Rowe calls the fallacy of concrete steppes. As Rowe explains it, by nature humans like linear explanations, a set of concrete steps like “add a time clock”, yet market equilibria are by nature non-linear:

Sometimes the future causes the present, because people’s expectations of the future affect what they do in the present… Next week, millions of Canadians will get up and go to work about one hour later than they did this week, if we measure time by the sun. “What concrete steps will the government take to get Canadians to do this? Can anybody tell me that?” No, I can’t tell you that. I don’t have a clue what concrete steps, if any, the government will take. But I fully expect it will work. All the government does is announce that it wants us all to do this, and to put all our clocks back one hour. Maybe the government has the power to force government clocks back one hour, and force some government workers to start and leave work one hour later by the sun. But the rest of us just follow along, simply because we expect everyone else to follow along.

When monetary policy focuses on the concrete steps, we get a ballooning monetary base. Credible central banks, on the other hand, can conduct looser monetary policy simply by making a credible threat, keeping base money flat. In the context of parenting, the household with the screaming parent is like Japan during their Lost Decade, taking many concrete steps with no results, while the disciplined household uses credible expectations management, meaning the bed gets made with mom nary lifting a finger.

All social institutions have similar multiple equilibria, and so I am totally on board with rejecting the naivety of the “add-institutions-and-stir” view. Expectations and credibility are just as important as the concrete steps. Yet equating ethics with expectations is misleading, since expectations are largely engendered by facts about the institutions.

Aggregate demand stagnated in Japan because people’s spending was partially contingent on the expectations of other people’s spending, diallelus. The emptier theories explain this as a failing of “animal spirits.” Or as I can imagine McCloskey putting it, perhaps Japan lacked an ethic of monetary velocity…

One final example: In my office absenteeism picks up on Friday afternoons (surprise!). This is despite many “training workshops” designed to encourage a culture of professionalism. The more effective technique, however, is for the boss to simply do an office walk-around every Friday at 4pm, and then let those absent hear about it Monday morning. Slowly, the boss can make his walk around less frequent but with a surprise element. Absenteeism will drop off, self-reinforced by mutual expectations and the lingering credibility of this “professionalism anchor”.

In the case of the Indian nurses, Acemoglu and Robinson report (pg 491) that the program was actually effective at first, but was progressively sabotaged by the administration “in cahoots” with the nurses. The lesson here is not the that an ethic was lacking, but that like monetary policy, credible expectations depend largely on the rule enforcer’s independence. It’s a lesson drawn straight from the work of Thomas Shelling:

A would-be reformer who wants to improve social welfare by changing people’s behavior to a better equilibrium must take care to identify a social plan that is in fact a Nash equilibrium, so that nobody can profit by unilaterally deviating from the plan. If a leader tries to change people’s expectations to some plan that is not a Nash equilibrium, then his exhortations to change behavior would be undermined by rational deviations. The point of this example is that, even when the better equilibrium is well understood, there still remains a nontrivial social problem of how to change everyone’s expectations to the better equilibrium. Such coordinated social change requires some form of socially accepted leadership, and thus it may depend on factors that are essentially political.

In this light, its almost self-aggrandizing to blame our First World incorruptibility on the absorption of certain values. Instead we should recognize that in the background of ostensibly voluntary obedience to the norms of property and exchange is a credible threat of incentive compatible rule enforcement. If that credibility evaporates, not surprisingly, so does most of our high-mindedness.


from typing import Any, Optional, Union

class InvalidURL(Exception):
    def __init__(self, message: str) -> None:
        ...

class URL:
    value: bytes
    schema: Optional[bytes]
    host: Optional[bytes]
    port: int
    path: bytes
    query: bytes
    fragment: Optional[bytes]
    is_absolute: Any

    def __init__(self, value: bytes) -> None:
        ...

    def join(self, other: "URL") -> "URL":
        ...

    def base_url(self) -> "URL":
        ...

    def __add__(self, other: Union[bytes, "URL"]) -> "URL":
        ...

    def __eq__(self, other: object) -> bool:
        ...


<?xml version='1.0' encoding='UTF-8'?>
<!--

    DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.

    Copyright (c) 1997-2015 Oracle and/or its affiliates. All rights reserved.

    The contents of this file are subject to the terms of either the GNU
    General Public License Version 2 only ("GPL") or the Common Development
    and Distribution License("CDDL") (collectively, the "License").  You
    may not use this file except in compliance with the License.  You can
    obtain a copy of the License at
    https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
    or packager/legal/LICENSE.txt.  See the License for the specific
    language governing permissions and limitations under the License.

    When distributing the software, include this License Header Notice in each
    file and include the License file at packager/legal/LICENSE.txt.

    GPL Classpath Exception:
    Oracle designates this particular file as subject to the "Classpath"
    exception as provided by Oracle in the GPL Version 2 section of the License
    file that accompanied this code.

    Modifications:
    If applicable, add the following below the License Header, with the fields
    enclosed by brackets [] replaced by your own identifying information:
    "Portions Copyright [year] [name of copyright owner]"

    Contributor(s):
    If you wish your version of this file to be governed by only the CDDL or
    only the GPL Version 2, indicate your decision by adding "[Contributor]
    elects to include this software in this distribution under the [CDDL or GPL
    Version 2] license."  If you don't indicate a single choice of license, a
    recipient has the option to distribute your version of this file under
    either the CDDL, the GPL Version 2 or to extend the choice of license to
    its licensees as provided above.  However, if you add GPL Version 2 code
    and therefore, elected the GPL Version 2 license, then the option applies
    only if the new code is made subject to such option by the copyright
    holder.

-->
<faces-config version="2.0"
              xmlns="http://java.sun.com/xml/ns/javaee"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
    <factory>
        <exception-handler-factory>
            com.sun.faces.test.servlet30.viewRootPhaseListenerNoContextParam.MyExceptionHandlerFactory
        </exception-handler-factory>
    </factory>
    <lifecycle>
        <phase-listener>com.sun.faces.test.servlet30.viewRootPhaseListenerNoContextParam.FacesConfigPhaseListener</phase-listener>
    </lifecycle>
</faces-config>


Kara Danvers is struggling with a fear of abandonment on Supergirl for a very good reason — as an alien, her loved ones are often living or dead on other planets. The latest departure is her boyfriend, who left in a pod at the end of Season 2, but Mon-El will be be back at some point in the future. When he does return to Earth, however, don't expect the goofy, privileged prince to be the same. In an interview with Bustle, actor Chris Wood reveals that Mon-El's return to Supergirl will change both the character and the show.

"He's carrying the baggage of where he's been and what he's been through," says Wood about the character in Season 3. The details of his return and what he's up to are, of course, "shrouded in mystery" and Wood can't discuss them. However, he does reveal that when Mon-El returns, it's going to mix things up quite a bit.

At the end of Season 2, Mon-El was forced to leave Earth after Kara dispersed lead into the atmosphere to fight off invading Daxamites — and his pod was immediately sucked into a wormhole upon departure. While the character has appeared to Kara in dreams and motivational visions, he's not fully back on the show yet in Season 3. He told Kara that she made him want to be a better person, but space is big and we know he has enemies out there.

Bettina Strauss/The CW

"You know [his return] affects everyone," Wood says. Whatever agenda or personality change he comes with is going to shake things up. "This guy who was one thing is now another thing and what he carries with him — it provides a different perspective to what [the other characters are] doing and it sort of changes the dynamic of the group in another way. It definitely creates a domino effect."

Whether he comes back as a fully-fledged hero or, an alien rights activist, or maybe, a hardened criminal, it's going to be interesting. Like him or not, Mon-El has a sort of refreshing innocence on Earth that it's difficult to imagine how that would change.

When exactly is he coming back? How will he deal with that tricky lead problem? That's all part of the mystery. Right now, the rise of Reign on Supergirl is occupying quite a bit of Kara's time. Plus, Lena Luthor is taking over CatCo, and having your best friend become your boss is rife for conflict opportunities. Dynamics are shifting all over Supergirl. By the time Mon-El does return, he might not even recognize everybody himself.

Kevin Smith, who directed the Mon-El centric Season 2 episode "Distant Son," is back directing Season 3, Episode 5. That could be a clue as to when he'll return. Perhaps he'll return as part of the next Arrow-verse crossover event. Mon-El isn't mentioned in the episode descriptions for upcoming episodes "The Faithful," or "Far From The Tree." It seems like Supergirl is going to keep fans and Kara waiting for quite some time, at least until after Season 3, Episode 4.

Diyah Pera/The Cw

As for fan reception of the character, which has been mixed since Mon-El first crash landed on Earth at the end of Season 1, it doesn't really bother the actor. People are entitled to their own opinions and interpretations. "At the end of the day," Wood says, "I'm just doing my job."

Maybe this changed Mon-El will spark a different response in fans. It certainly sounds like his return is going to be something exciting. At least his story is not over, something that at the end of the day, we can all appreciate.


// Copyright 2018 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

#include "src/decoder/codec.h"
#include "include/astc-codec/astc-codec.h"
#include "src/decoder/test/image_utils.h"

#include <gtest/gtest.h>

#include <string>

namespace astc_codec {

static void PrintTo(FootprintType footprint, std::ostream* os) {
    switch (footprint) {
        case FootprintType::k4x4:   *os << "FootprintType::k4x4";   break;
        case FootprintType::k5x4:   *os << "FootprintType::k5x4";   break;
        case FootprintType::k5x5:   *os << "FootprintType::k5x5";   break;
        case FootprintType::k6x5:   *os << "FootprintType::k6x5";   break;
        case FootprintType::k6x6:   *os << "FootprintType::k6x6";   break;
        case FootprintType::k8x5:   *os << "FootprintType::k8x5";   break;
        case FootprintType::k8x6:   *os << "FootprintType::k8x6";   break;
        case FootprintType::k10x5:  *os << "FootprintType::k10x5";  break;
        case FootprintType::k10x6:  *os << "FootprintType::k10x6";  break;
        case FootprintType::k8x8:   *os << "FootprintType::k8x8";   break;
        case FootprintType::k10x8:  *os << "FootprintType::k10x8";  break;
        case FootprintType::k10x10: *os << "FootprintType::k10x10"; break;
        case FootprintType::k12x10: *os << "FootprintType::k12x10"; break;
        case FootprintType::k12x12: *os << "FootprintType::k12x12"; break;
        default:
          *os << "<Unexpected FootprintType "
              << static_cast<uint32_t>(footprint) << ">";
    }
}

namespace {

using ::testing::TestWithParam;
using ::testing::ValuesIn;

ImageBuffer LoadGoldenImageWithAlpha(std::string basename) {
  const std::string filename =
      std::string("src/decoder/testdata/") + basename + ".bmp";
  ImageBuffer result;
  LoadGoldenBmp(filename, &result);
  EXPECT_EQ(result.BytesPerPixel(), 4);
  return result;
}

struct ImageTestParams {
  std::string image_name;
  FootprintType footprint;
  size_t width;
  size_t height;
};

static void PrintTo(const ImageTestParams& params, std::ostream* os) {
  *os << "ImageTestParams(" << params.image_name << ", " << params.width << "x"
      << params.height << ", ";
  PrintTo(params.footprint, os);
  *os << ")";
}

TEST(CodecTest, InvalidInput) {
  const size_t valid_width = 16;
  const size_t valid_height = 16;
  const size_t valid_stride = valid_width * 4;

  const std::vector<uint8_t> data(256);
  std::vector<uint8_t> output(valid_width * valid_height * 4);

  // Invalid footprint.
  EXPECT_FALSE(ASTCDecompressToRGBA(
      data.data(), data.size(), valid_width, valid_height,
      FootprintType::kCount, output.data(), output.size(), valid_stride));

  // Fail for 0 width or height.
  EXPECT_FALSE(ASTCDecompressToRGBA(data.data(), data.size(), 0, valid_height,
                                    FootprintType::k4x4, output.data(),
                                    output.size(), valid_stride));
  EXPECT_FALSE(ASTCDecompressToRGBA(data.data(), data.size(), valid_width, 0,
                                    FootprintType::k4x4, output.data(),
                                    output.size(), valid_stride));

  // Fail for data size that's not a multiple of block size.
  EXPECT_FALSE(ASTCDecompressToRGBA(
      data.data(), data.size() - 1, valid_width, valid_height,
      FootprintType::k4x4, output.data(), output.size(), valid_stride));
  // Fail for data size that doesn't match the block count.
  EXPECT_FALSE(ASTCDecompressToRGBA(
      data.data(), data.size() - 16, valid_width, valid_height,
      FootprintType::k4x4, output.data(), output.size(), valid_stride));

  // Fail for invalid stride.
  EXPECT_FALSE(ASTCDecompressToRGBA(
      data.data(), data.size(), valid_width, valid_height, FootprintType::k4x4,
      output.data(), output.size(), valid_stride - 1));

  // Fail for invalid output size.
  EXPECT_FALSE(ASTCDecompressToRGBA(
      data.data(), data.size(), valid_width, valid_height, FootprintType::k4x4,
      output.data(), output.size() - 1, valid_stride));
}

class CodecTest : public TestWithParam<ImageTestParams> {};

TEST_P(CodecTest, PublicAPI) {
  const auto& params = GetParam();
  const std::string astc = LoadASTCFile(params.image_name);

  ImageBuffer our_decoded_image;
  our_decoded_image.Allocate(params.width, params.height, 4);
  ASSERT_TRUE(ASTCDecompressToRGBA(
      reinterpret_cast<const uint8_t*>(astc.data()), astc.size(), params.width,
      params.height, params.footprint, our_decoded_image.Data().data(),
      our_decoded_image.DataSize(), our_decoded_image.Stride()));

  // Check that the decoded image is *very* similar to the library decoding
  // of an ASTC texture. They may not be exact due to differences in how we
  // convert a 16-bit float to an 8-bit integer.
  ImageBuffer decoded_image = LoadGoldenImageWithAlpha(params.image_name);
  CompareSumOfSquaredDifferences(decoded_image, our_decoded_image, 1.0);
}

TEST_P(CodecTest, DecompressToImage) {
  const auto& params = GetParam();

  std::string error;
  std::unique_ptr<ASTCFile> image_file = ASTCFile::LoadFile(
      std::string("src/decoder/testdata/") + params.image_name + ".astc",
      &error);
  ASSERT_TRUE(image_file) << "Failed to load " << params.image_name << ": "
                          << error;

  ASSERT_TRUE(image_file->GetFootprint());
  EXPECT_EQ(params.footprint, image_file->GetFootprint().value().Type());

  ImageBuffer our_decoded_image;
  our_decoded_image.Allocate(image_file->GetWidth(), image_file->GetHeight(),
                             4);

  ASSERT_TRUE(DecompressToImage(*image_file, our_decoded_image.Data().data(),
                                our_decoded_image.DataSize(),
                                our_decoded_image.Stride()));

  // Check that the decoded image is *very* similar to the library decoding
  // of an ASTC texture. They may not be exact due to differences in how we
  // convert a 16-bit float to an 8-bit integer.
  ImageBuffer decoded_image = LoadGoldenImageWithAlpha(params.image_name);
  CompareSumOfSquaredDifferences(decoded_image, our_decoded_image, 1.0);
}

// Test to make sure that reading out color values from blocks in a real-world
// image isn't terribly wrong, either.
std::vector<ImageTestParams> GetTransparentImageTestParams() {
  return {
    // image_name         astc footprint        width    height
    { "atlas_small_4x4",  FootprintType::k4x4,  256,     256 },
    { "atlas_small_5x5",  FootprintType::k5x5,  256,     256 },
    { "atlas_small_6x6",  FootprintType::k6x6,  256,     256 },
    { "atlas_small_8x8",  FootprintType::k8x8,  256,     256 },
  };
}

INSTANTIATE_TEST_CASE_P(Transparent, CodecTest,
                        ValuesIn(GetTransparentImageTestParams()));

}  // namespace

}  // namespace astc_codec


Q:

How can I get the different results as I put the number?

I wanna get the different results as the inputted number.
For example, when I put 4 I get the results of the rectangle and when I put 3 I get the triangle.
import java.util.Scanner;

public class Source9_1 {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    int x, y; // 클래스 Parameter(내부 변수)

    Point[] v = new Point[n]

    for(int i=0; i <= v.length; i++) {
        v[i] = new Point();
        v[i].

    }
}

class Point {
    int x, y; // 클래스 Parameter (내부 변수)

    public void setPoint(int x, int y) { // Point 세팅
        this.x = x;
        this.y = y;
    }

    public void printPoint() { // Point 출력
        System.out.println("x = " + x + ", y = " + y);
    }
}

class Rectangle extends Point {
    Point[] p = new Point[4];

    Rectangle(Point[] p) {
        this.p = p;
    }
}

class Triangle extends Point {
    Point[] p = new Point[3]; // 3개의 Point인스턴스를 담을 배열 생성

    Triangle(Point[] p) {
        this.p = p;
    }
}

class Shape extends Point { // Point 배열 및 상속을 받아 세팅 후 출력가능한 클래스
    Point coord[10];
    static int s = 0; // 불릴 때마다 값 증가 ???

    public void printShapePoint() { // 배열에 담은 Point 출력

    }

    public void setShapePoint() { // 배열에 담기 위해 Point 증가

    }
}

So far, I coded like this but I don't know what to do now.
How can I get the different result as I put the number?
This is the result what I want

A:

First of all, about your Rectangle and Triangle classes. I feel like you have missed your point there (pun not intended), because you've put both extending the Point class. That doesn't make much sense, since you have the Shape class, which would do a much better job as the superclass for them.
So:
class Rectangle extends Shape {
    ...
}

class Triangle extends Shape {
    ...
}

With that out of the way, what you have so far:

You are capturing the number of points from the input;
You are creating an array of that size;
You are instantiating and setting an Point object for each of the array positions.

What you need to do next:

Capture the points coordinates from the input
Set said coordinates to the Point objects
Instantiate an Triangle or Rectangle object, depending on how many points you have.

So, inside your for statement you will want to do:
for (int i=0; i <= v.length; i++) {
    v[i] = new Point();
    x = sc.nextInt(); // Save 'x' value into the variable
    y = sc.nextInt(); // Save 'y' value into the variable
    v[i].setPoint(x, y); // Set both values using the method from Point
}

Then, since both Rectangle and Triangle have Shape as a common superclass, you are allowed to put objects of either one of these class in a Shape variable. So right after the for statement you will want to do:
Shape s; // Create the empty variable here, so it will exist outside the if-else scope
if (n == 3)
    s = new Triangle(v);
else
    s = new Rectangle(v);

Finally, just print your points:
for (int i = 0; i < v.length; i++)
    v[i].printPoint();

And that's pretty much it.


## The Odin Project Code of Conduct

The Odin Project's online communities are intended to be informative and relaxing spaces where Odinites can find answers to their programming questions or simply hang out.  Since we aim to be an inclusive and friendly community, we request that all Odinites follow the guidelines laid out in this Code of Conduct.  Following these guidelines will ensure that all Odinites have a positive learning experience:

1. Be polite, welcoming, and inclusive.

2. Inappropriate conduct and harassment of any kind will not be tolerated. Any such remarks will result in an immediate ban.

3. Actions that seem specifically designed to test the limits of what is offensive and serve no other purpose (i.e., trolling) will not be tolerated, and such sessions will be immediately terminated.

4. Do not post someone's personal information or post links to personal information.

Additionally, The Odin Project and it's core members reserve the right to ban or otherwise disable the account(s) of users in defiance with this code of conduct or for any other reason they see fit.

## Our Standards

Examples of behavior that contribute to creating a positive environment include:

  * Using welcoming and inclusive language.

  * Being respectful of differing viewpoints and experiences.

  * Gracefully accepting constructive criticism.

  * Focusing on what is best for the community.

  * Showing empathy towards other community members.

## Our Responsibilities

The Odin Project's core members are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.

The Odin Project's core members have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at contact@theodinproject.com. After investigating and reviewing each complaint, the project team will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.


‘I felt awful for telling men about mum’s diamond ring’

THE daughter of a couple subjected to a horrifying robbery in their home told how awful she felt when she realised she had told a jeweller about a diamond ring belonging to her mother.

Natalie Davies, daughter of Peter and Jacqueline Davies, was giving evidence on the second day of the trial of Liverpool jeweller Laurence Levey and co-defendant Gary Warner, who are both charged with conspiring to rob Mr and Mrs Davies at their home near Leeswood, Mold, in August last year.

Three masked men dressed in black threatened to kill Mr Davies, left the couple tied up, and got away with £100,000 in cash and jewellery said to be valued at more than £40,000.

The prosecution say Mr Davies and his daughter had earlier been to Levey’s shop, Pryers in London Road, Liverpool, to buy a Rolex watch as a surprise present for Mrs Davies’ 65th birthday.

Mr Davies, a scrap metal dealer, bargained with Mr Levey, got the price down from £18,000 to £13,500, and the jeweller followed them back to Leeswood so he could be paid in cash.

John Philpotts, prosecuting, has told the jury at Mold Crown Court that Levey then identified Mr Davies as a wealthy robbery target – and the robbery occurred a short time later.

Giving evidence Natalie Davies said she travelled to Liverpool with her father to get the watch and Levey and his partner then followed them back to Leeswood.

She said her father did not want them in the house and they stopped outside. Her father went in to get the cash and they then travelled to her home close by where the transaction took place. It turned out that her father was £1,000 short and he returned home to get the additional money.

During that time she chatted to Levey about the fact she was about the get married. They talked about wedding rings and he gave her a business card. She also said she mentioned to him a lovely solitaire diamond ring her mother had.

“I later felt awful that I had mentioned it,” she said.

The jury has heard the ring was in fact a fake, but at the time Miss Davies believed it to be genuine.

The court has heard how Mr Davies, then aged 64, was bound with tape and his clothes cut from him with a knife.

The robbers also tied up his wife and threatened to kill her husband unless they revealed where their money and jewellery was kept.

Levey, 56, who lives in a flat at Coniston House, Mossley Hill Drive, Liverpool 17, and Warner, 45, of Beteler Court, Elphin’s Drive Apartments in Warrington, both deny the charges.

Warner is alleged to have been one of the three robbers after Mr Philpotts said his DNA was found on an empty tape roll left behind at the premises.


WEBVTT YOU MIGHT REMEMBER THIS VIDEO OFA TRANSFORMER THAT EXPLODED INRIO RANCHO.JUST INCREDIBLE.THE FIRE KNOCKED OUT POWER FORTHOUSANDS OF CUSTOMERS FORSEVERAL HOURS.PNM SAYS THE EXPLOSION HAPPENEDWHEN A RACCOON CRAWLED INTO IT.WELL NOW SOMEONE HAS CREATED AMEMORIAL FOR THAT RACCOON ANDNAMED HIM "SPARKY."


Q:

Does modifying metric of a space change the limit of a sequence in it?

Im reading Rudin's Principles of Mathematical Analysis and get this idea. In my opinion, doing it will remove or add some limit points in the space because this modification may change the radius of their neighborhood.
Im not sure whether it will exert effects on a limit of a convergent sequence. For example, {(1+1/n)|n∈$N$} in $R$ usual does converge to 1 and will it still converge to 1 when its metric is modified by d(x,y)=|1/x-1/y|? Or another question that we know (0,1) is open in $R$ usual, can you turn it to a closed set in $R$ just by modifying its metric?

A:

Consider the following metric: \[d(x,y) = |f(x) - f(y)|\]
where $f$ is the function that swaps the real numbers $7$ and $903$ and leaves every other real number untouched.
With this metric, the sequence $x_n = 7 + 1/n$ converges to $903$, so yes, different metrics can have completely different limits of sequences.