struct S0
{
    int x;
    int y;
    SamplerState ss;
};

struct S1
{
    float b;
    SamplerState samplerState;
    S0 s0;
    int a;
};

struct S2
{
    int a1;
    int a2;
    int a3;
    int a4;
    int a5;
    S1 resources;
};

SamplerState samp;
Texture2D tex;

float4 main(float4 vpos : VPOS) : COLOR0
{
    S1 s1;
    S2 s2;
    s1.s0.ss = samp;
    s2.resources = s1;
    return tex.Sample(s2.resources.s0.ss, float2(0.5));
}