Sections

2025-11-25

Kebab - Slamová básnička


Inspirováno slamovým vystoupením Doda a Huhi na 6. autistické konferenci, jakož i stylem psaní Ekosystému od Qłećalhqoatlh.J. Věnováno všem zaměstnancům kebabáren.


Kebab

Dáme si u bab

Je populární

Okulární

Pohled na ty ceny

Döner Price Index

Inflace zuby cení

Stejně si dám mega

Kdo by žral mini

Kdo by chodil ven jen pro mini

Vlezte mi na záda

Velká kláda

Někde dělají tenké a dlouhé

Jinde dělají krátké a tlusté

Musí se vejít do mikrovlnky

Trnky Brnky

Onehdy plné neřestných vtipů

Pro lidi dneska vybírající z DIPu

Omáčka samozřejmě pari a kálivá

Vlastně kari a pálivá

Ale uvidím, co na to střeva

S básnickým průjmem

Po dlouhé době 

Vysokoškolní burnoutové újmě

Ještě to je v tobě

Obzvlášť hodně cibule

Jen co se vejde do kebule

Posypat chilli

Hodně

Jak kdyby chillinka měla povodně

A stejně tak hodně odteče z účtu

Někde se ještě vejdou do limitu

Nad nějž je třeba zadat PIN

A na tlačítka terminálu otisky prstu

QR kódy jsou prý in

Podobá se to platbě kryptem

Ale platil by jenom kretén

Něčím co roste na hodnotě

Náš český fiatový shitcoin není ještě

Tak špatný, aby ho nahradilo

Něco, čeho by víc než 21 mega nebylo

21 lidí přišlo

A taky si objednávají kebab

Jenom 1, ne 3 jako já

Anticipujíce fanum tax od bab

Doma je stát a ten nejsem já

Z nějakého důvodu u nich jedou krabice

Možná mají alergii na lepek

Určitě to není laktózová intolerance

Protože si dávají omáčku z bylinek

Ale hodného nepálí

A pálivé má z fanum tax výjimku

Teplo sálá

Operační sál

Kde se řeže do masa

Zeleniny sada

Nandavána do turskih pita

Z posavkogo zlatnog žita

Ale spíš než ze Srbské Krajiny

Asi odněkud z Ukrajiny

S příchutí ruského lidského hnojiva

Mimo jiné také pro slunečnice na olej

Kydaného sauronským Puťa puťa ná

Slepice jsou po dinosaurech

A jejich maso je dosypáno

V extra porci, jak objednáno

Zabalit s sebou

Odvézt šalinou

Jak kázal Hřib

Kolik aut, tolik chyb

Ideologického ražení

Wolťáci jezdí na motorkách

I v zimě při mražení

Onoho času autisti prý nesměli řídit

Maximálně tak elektrokolo

Při covidu to dobré bylo

Ale pak nahnali všechny zpátky do kanclů

Tupě nasedli zpátky do plechovek

A ještě si koupili další

Místo udatných bivojských kanců

Tohle je na pohlavek

Nejste z cukru, když prší

Dopravím se domů

Vytáhnu kládu na stůl

Opatrně vybalím z alobalu

Abych ho neroztrhnul

Rozkousám maso

Chroupu salát

Chilli je sadomaso

Halal a salah

Muezin dává dáwu

Kéž bych uměl správně mlátit hlavou o koberec

Ale musel bych stejně odložit ten kebab

Aťsi jsem kafír

A teď mám chuť na kefír-er

Turecký jogurt

V omáčkách kebabu

Tráví střeva z Gazy Labubu

Tak si dál žeru

A potom ho strávený

Na hajzlu vyseru

Ani mě ta prdel nepálí

A pak parasympatikálně

Se jak protistátní živel válím

Ve své serotoninádě

Serenádě

Seru na dělání si to normálně

Investoval jsem chytře

Do sebe, přepepřeného vepře


KONEC


2025-11-17

Smutty Sator squares

Very related to me putting on full body chains and solving sex joke crosswords. Girlfriend is something normies get, not me.

ASSEN
STEVE
SEXES
EVETS
NESSA

LASAL
ADELA
SEXES
ALEDA
LASAL

NESSA
EVETS
SEXES
STEVE
ASSEN

SUSAN
ULEMA
SEXES
AMELU
NASUS

TASER
AMENE
SEXES
ENEMA
RESAT

TASER
ANELE
SEXES
ELENA
RESAT

TESSA
EVETS
SEXES
STEVE
ASSET

ASSED
STEVE
SEXES
EVETS
DESSA

ASSES
STEVE
SEXES
EVETS
SESSA

ASSET
STEVE
SEXES
EVETS
TESSA

BASAN
ADELA
SEXES
ALEDA
NASAB

DESSA
EVETS
SEXES
STEVE
ASSED

DESSE
EVETS
SEXES
STEVE
ESSED

ESSED
STEVE
SEXES
EVETS
DESSE

NASAB
ADELA
SEXES
ALEDA
BASAN

NASUS
AMELU
SEXES
ULEMA
SUSAN

RESAT
ELENA
SEXES
ANELE
TASER

RESAT
ENEMA
SEXES
AMENE
TASER

SESSA
EVETS
SEXES
STEVE
ASSES


Sator square search in C

// Started with ChatGPT, optimized manually. Valgrinded. Thread and Unicode unsafe.

// 214 ms on 7 MB american-english-insane with size 5 on Ryzen 5 3600 with -O3.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h> //toupper (replace with ICU case folding)

#define MAXW 262144
#define MAXL 32
#define HSIZE 262139

static char **WL; static unsigned WC = 0; static unsigned found = 0;

// HASHTABLE (with linked lists to handle collisions)
typedef struct W { char *w; struct W *n; } W;
static W *H[HSIZE]; // 2 MB
unsigned hfn(const char *s){
    unsigned h=5381;for(;*s;)h=((h<<5)+h)+(unsigned char)*s++;return h%HSIZE;
}
int has(const char *s){
    for(W*w=H[hfn(s)];w;w=w->n)if(!strcmp(s,w->w))return 1;
    return 0;
}
void ins(const char *s){
    unsigned h=hfn(s);W*w=malloc(sizeof* w);w->w=strdup(s);w->n=H[h];H[h]=w;
}

void rev(const char* s, char* d){ // not Unicode safe, replace with ICU
    size_t l = strlen(s); for(size_t i = 0; i < l; ++i) d[i] = s[l-1-i];
    d[l] = 0;
}

void search(int lvl, char **sq, int N){
    if(lvl==N/2){ //check square symmetry, not Unicode safe
        for(int r=0;r<N;++r) for(int c=0;c<N;++c) if(sq[r][c]!=sq[c][r]) return;
            puts(""); for (int i=0; i<N; ++i) puts(sq[i]); //output if fine
            ++found;
    }else{ //O(n) traversing WL & then O(1) looking up reversations in W
        for(unsigned i=0; i<WC; ++i){ //unparallelizable memory stingy design
            sq[lvl]=WL[i]; //direct to the word for that level and position
            if(sq[lvl][0]!=sq[0][lvl]) continue; //acrostic upper left corner
            // not Unicode safe
            if(N%2&&sq[lvl][N/2]!=sq[N/2][lvl]) continue; //center column
            rev(sq[lvl],sq[N-1-lvl]); //reverse row #lvl to row #lvl from bottom
            if(!has(sq[N-1-lvl])) continue; //check if reversed thing is real
            search(lvl+1,sq,N); //next level
        }
    }
}

void square(int N) {
    if (N < 1) return;
    unsigned c = 0;
    char **sq=calloc(N,sizeof(char*));
    //  0   1  N/2  N-2  N-1
    //  0   1   2   N/2  N-2  N-1
    for(int i=N/2+N%2;i<N;++i) sq[i]=calloc(N+1,sizeof(char));
    if(N%2){ //top half needn't to be allocated if using existing WL pointers
        for (c = 0; c < WC; ++c) {
            int pal = 1;
            for(int i=0;i<N/2;i++) if(WL[c][i]!=WL[c][N-1-i]){pal=0;break;}
            if(!pal) continue; // not Unicode safe
            sq[N/2]=WL[c];
            search(0,sq,N);
        }
    }else{
        search(0,sq,N);
    }
    for(int i=N/2+N%2;i<N;++i) free(sq[i]);
    free(sq);
}

int main(int c,char**v){
 if(c<3){fprintf(stderr,"\nUsage: %s <wordlist> <size>\n",v[0]);return 1;}
 unsigned L=atoi(v[2]);
 if(L<1||L>MAXL){fprintf(stderr,"\nSize must be 1 to %d.\n",MAXL);return 1;}
 FILE*f=fopen(v[1],"r");
 if(!f){fprintf(stderr,"\nCouldn't open file.\n");return 1;}
 WL=calloc(MAXW,sizeof*WL); // 2 MB
 if(!WL){fprintf(stderr,"\nCouldn't allocate wordlist.\n");return 1;}
 char b[MAXL*2];
 while(fgets(b,sizeof b,f)){
  b[strcspn(b,"\r\n")]=0;
  if(strlen(b)==L){
   for(char*p=b;*p;p++)*p=toupper(*p);
   if(!has(b)){WL[WC++]=strdup(b);ins(b);} //fix duplicate output
  }
  if(WC>=MAXW){fprintf(stderr,"\nWord limit reached.\n");break;}
 }
 fclose(f);
 printf("\nLoaded %u words of length %u.\n",WC,L);
 square(L);
 printf("\nFound %u Sator squares of size %u.\n",found,L);
 for(int i=0;i<HSIZE;++i){W*w=H[i];while(w){W*n=w->n;free(w->w);free(w);w=n;}}
 for(unsigned i=0;i<WC;++i)free(WL[i]);
 free(WL);
 return 0;
}


2025-11-06

Český národní podnik strká nos do osobních záležitostí uchazečů o zaměstnání


Tiskla si u mě sestra. A vy se divíte, proč radši beru invaliďák? A to ani není o tom, že bych nemoh někam dojet a něco doufámže naprosto přesně popsaného tam dělat, ale prostě o tom, že všude je plno nekonsensuálněhierarchických neuronormativistů, a zákoník práce je socialistický paskvil plný kogentních ustanovení.


Dotazník vybraného uchazeče pro vypracování pracovněprávních dokumentů - Pracovní smlouvy / Dohody o pracovní činnosti


Český národní podnik s.r.o.

Melantrichova 17, Praha 1

IČ: 49 68 73 87


Jméno a příjmení: {na OP, pro kikoťi "Grzegorz Brzęczyszczykiewicz"}

Rodné příjmení: {FUJTAJBL!}

Datum narození: {REDUNDANTNÍ!}

Trvalé bydliště: {na OP}

Kontaktní adresa:

Stav / Počet dětí: {FUJTAJBL! Napsal bych tam "Budoucí korporátní otrok / e^(iπ)+1"}

Telefon:

Emailová [sic] adresa:

Rodné číslo: {na OP, obsahuje datum narození, pohlaví, pořadí a dělitelnovač 11, trans mají vysoké pořadí}

Číslo OP: {na OP, pochopitelně}

Místo narození: {na OP, Do jaké porodnice s vámi jeli?, pro kikoťi "Lękołody, Chrząszczyżewoszyce"}

Občanství: {Jakého státu je ten občanský průkaz?}

Zdravotní pojišťovna: {Odvody, to jest další daně}

Studující (statut studenta): {Daňová sleva}

Škola: {Jestli výše ano, jinak asi alma mater.}

Důchod - druh: {pracující důchodci jsou ostuda rádobysociálního systému}

Zároveň zaměstnán u jiného zaměstnavatele: ANO NE {Pro stát, jestli <300 h/rok.}

Žádáte uplatnění slevy na dani na poplatníka u naší společnosti: ANO NE


Číslo bankovního účtu: {Předpokládám, že se tam bude posílat mzda. Tato kolonka může být přepoužita pro kryptoadresy.}


Děti:

Jméno | Příjmení | Rodné číslo

{HIMLHERGOTDONRVETRKRUCAJZELEMENT! Nejsou-li na to benefity, uznatelné důvody zdejchnutí se (otravná státní škola), nebo extra vstupy, nechápu, co to tam dělá.}


[sic] Praze dne:

Podpis:


(2. strana)


Jazykové znalosti, praktické zkušenosti s používáním cizích jazyků:

{Celkem smysluplná otázka, můžou vás pak vyslat do ciziny, nebo přivolat ke komunikaci s cizincem.}

Nejvyšší dosažené vzdělání (datum ukončení studia, získaný titul, obor - k dotazníku přiložte doklad o ukončení studia): {Máte diplom? A mohla bych ho vidět?}

Dovednosti, zájmy, záliby:

{tohle v životopisech nikdo nečte}

Předchozí zaměstnání: {FUJTAJBL, jestli tohle není životopis.}

Zkušenost z prodejem:

{Hlásí-li se na pozici prodeje, toto je jediná skutečně důležitá otázka.}

Co očekáváte od nového místa a jaké si představujete finanční ohodnocení:

{Je to past! Napsal bych tam "přijatelná míra neuronormativismu a 100 m̶/h".}

Forma spolupráce (úvazek (1/2, 3/4, 1/1, brigáda): {1 NEUZAVŘENÁ ZÁVORKA!}

Při výběru zaměstnání je pro mě důležité - seřaďte od nejdůležitejšího až po nejméně důležité:

[   |   |   |   |   |   ]

1. Pracovní kolektiv

2. Pracovní doba

3. Pocit jistoty

4. Přístup vedení firmy

5. Mzda

6. Pracovní prostředí

{Je to past! Mzda a pracovní doba nesmí být na vrchu.}



Vyplní zaměstnavatel:


Pracovní poměr se sjednává na dobu:

Pracovník nastoupí do práce dne:

Pracovní úvazek: {V podstatě nominální zlomek 40 h/týden.}

Pracovní zařazení:     Od     Do     {Pracuje se dle úkolů, ne dle hodin.}

Zkušební doba: 3/6 měsíců {Očekávaná délka pracovního poměru pro autisty.}

Místo výkonu práce:

Základní hodinová mzda / paušál: {Představy o ni jsou výše na tomtéž papíru.}

Středisko: