Snippets Collections
Experience the thrill of online betting with Alphacodez's 1xbet clone script. Delve into a world of virtual sports betting, from cricket to horse racing, and replicate the excitement of 1XBet. Our bespoke solution mirrors key features, including sports betting, live casino games, and live streaming. Launch your venture ethically and legally, and unlock the potential for success in the booming online gambling industry.
Alphacodez cash app clone script offers a secure and efficient platform for peer-to-peer payments and financial management. This customizable solution, inspired by Cash App, provides seamless transaction capabilities, user-friendly interfaces, and robust security features. Empower your business with a reliable and scalable payment solution tailored to your specific needs.
The AlphaCodez Binance clone script is the ultimate gateway for entrepreneurs diving into the crypto world. Replicating Binance's powerhouse features, it equips visionaries to craft their exchange kingdoms. Alphacodez Binance Clone includes all of Binance's latest features, including user registration, multi-crypto wallets, diverse trading options, and customization. Success rests on security, compliance, maintenance, and market appeal.
Turn Passion into Profit with Alphacodez onlyfans clone script development solutions! Build Your Exclusive Content Hub, Connect with Audiences and Set the Stage for Unmatched Digital Success. Seamlessly Replicate Success with Intuitive Features, Dynamic Performance, and Endless Potential. Make Your Mark and Redefine the Landscape!. Launch your own subscription-based content-sharing platform and seize new revenue opportunities.
Step into the realm of crypto gambling with our premier Betfury clone script. Crafted with precision, our script mirrors the esteemed platform's features, offering a seamless blend of gaming, staking, and earning opportunities. From thrilling blockchain-based games to lucrative dividend payouts, users will be immersed in a world of excitement. With a user-friendly interface optimized for both web and mobile, accessibility is paramount. Customize the script to align with your brand identity, and launch your own crypto gambling empire with our Betfury clone script today.
Introducing Alphacodez's revolutionary Bet365 clone script , designed to help entrepreneurs swiftly establish their own dynamic online sports betting platform. Our customizable solution meticulously replicates the acclaimed features of Bet365, providing a diverse array of sports betting options and exhilarating live casino games. With a steadfast commitment to top-notch security measures and an intuitive user interface, Alphacodez empowers entrepreneurs to confidently step into the thriving online betting industry.
Introducing the Paxful clone script by AlphaCodez – a revolutionary solution that mirrors the renowned peer-to-peer cryptocurrency exchange platform. Our script empowers entrepreneurs to create their own robust P2P crypto marketplace, facilitating seamless buying and selling of digital assets. With a user-friendly interface and advanced trading features, users can effortlessly engage in secure transactions while enjoying real-time market updates. Built with scalability and security in mind, our Paxful clone script ensures a reliable and efficient platform for users worldwide. Entrepreneurs can customize and launch their P2P exchange platform quickly, tapping into the booming cryptocurrency market with confidence. Experience the power of decentralized finance with the AlphaCodez Paxful clone script – where innovation meets opportunity. 
 Node reverseList(Node head)
    {
        if(head == null || head.next == null)
            return head;
        Node p = reverseList(head.next);
        head.next.next = head;
        head.next = null;
        return p;
    }
code:
#include<stdio.h>  
    #include<stdlib.h>  
     
    void main()  
    {  
        // initlialize the variable name  
        int i, NOP, sum=0,count=0, y, quant, wt=0, tat=0, at[10], bt[10], temp[10];  
        float avg_wt, avg_tat;  
        printf(" Total number of process in the system: ");  
        scanf("%d", &NOP);  
        y = NOP; // Assign the number of process to variable y  
     
    // Use for loop to enter the details of the process like Arrival time and the Burst Time  
    for(i=0; i<NOP; i++)  
    {  
    printf("\n Enter the Arrival and Burst time of the Process[%d]\n", i+1);  
    printf(" Arrival time is: \t");  // Accept arrival time  
    scanf("%d", &at[i]);  
    printf(" \nBurst time is: \t"); // Accept the Burst time  
    scanf("%d", &bt[i]);  
    temp[i] = bt[i]; // store the burst time in temp array  
    }  
    // Accept the Time qunat  
    printf("Enter the Time Quantum for the process: \t");  
    scanf("%d", &quant);  
    // Display the process No, burst time, Turn Around Time and the waiting time  
    printf("\n Process No \t\t Burst Time \t\t TAT \t\t Waiting Time ");  
    for(sum=0, i = 0; y!=0; )  
    {  
    if(temp[i] <= quant && temp[i] > 0) // define the conditions  
    {  
        sum = sum + temp[i];  
        temp[i] = 0;  
        count=1;  
        }    
        else if(temp[i] > 0)  
        {  
            temp[i] = temp[i] - quant;  
            sum = sum + quant;    
        }  
        if(temp[i]==0 && count==1)  
        {  
            y--; //decrement the process no.  
            printf("\nProcess No[%d] \t\t %d\t\t\t\t %d\t\t\t %d", i+1, bt[i], sum-at[i], sum-at[i]-bt[i]);  
            wt = wt+sum-at[i]-bt[i];  
            tat = tat+sum-at[i];  
            count =0;    
        }  
        if(i==NOP-1)  
        {  
            i=0;  
        }  
        else if(at[i+1]<=sum)  
        {  
            i++;  
        }  
        else  
        {  
            i=0;  
        }  
    }  
    // represents the average waiting time and Turn Around time  
    avg_wt = wt * 1.0/NOP;  
    avg_tat = tat * 1.0/NOP;  
    printf("\n Average Turn Around Time: \t%f", avg_tat);  
    printf("\n Average Waiting Time: \t%f",avg_wt);
    }
    
   output:
Total number of process in the system: 4

 Enter the Arrival and Burst time of the Process[1]
 Arrival time is: 	2
 
Burst time is: 	6

 Enter the Arrival and Burst time of the Process[2]
 Arrival time is: 	4
 
Burst time is: 	7

 Enter the Arrival and Burst time of the Process[3]
 Arrival time is: 	4
 
Burst time is: 	8

 Enter the Arrival and Burst time of the Process[4]
 Arrival time is: 	8
 
Burst time is: 	2
Enter the Time Quantum for the process: 	3

 Process No 		 Burst Time 		 TAT 		 Waiting Time 
Process No[1] 		 6				 4			 -2
Process No[4] 		 2				 6			 4
Process No[2] 		 7				 17			 10
Process No[3] 		 8				 19			 11
 Average Turn Around Time: 	11.500000
 Average Waiting Time: 	5.750000
fcfs output
Enter the number of processes: 5
Enter the burst time for each process:
Process 1: 8
Process 2: 7
Process 3: 16
Process 4: 5
Process 5: 1
Process ID	Burst Time	Waiting Time	Turnaround Time
1		8		0		8
2		7		8		15
3		16		15		31
4		5		31		36
5		1		36		37

Average Waiting Time: 18.00
Average Turnaround Time: 25.40
sjf output:
Enter the number of processes: 5
Enter details for process 1:
Process ID: 12
Arrival Time: 0
Burst Time: 7
Enter details for process 2:
Process ID: 34
Arrival Time: 4
Burst Time: 8
Enter details for process 3:
Process ID: 56
Arrival Time: 7
Burst Time: 9
Enter details for process 4:
Process ID: 78
Arrival Time: 6
Burst Time: 14
Enter details for process 5:
Process ID: 90
Arrival Time: 10
Burst Time: 12

Process	Completion Time	Waiting Time	Turnaround Time
12		7		0		7
34		15		3		11
56		24		8		17
78		38		18		32
90		50		28		40

Average Waiting Time: 11.40
Average Turnaround Time: 21.40
FCFS:
#include<stdio.h>

// Process structure
struct process {
    int pid;      // Process ID
    int burst;    // Burst time
    int waiting;  // Waiting time
    int turnaround;// Turnaround time
};

// Function to calculate waiting and turnaround times for each process
void calculateTimes(struct process proc[], int n) {
    int total_waiting = 0, total_turnaround = 0;
   
    // Waiting time for first process is 0
    proc[0].waiting = 0;
    // Turnaround time for first process is its burst time
    proc[0].turnaround = proc[0].burst;

    // Calculate waiting and turnaround times for each process
    for (int i = 1; i < n; i++) {
        // Waiting time of current process = Turnaround time of previous process
        proc[i].waiting = proc[i - 1].waiting + proc[i - 1].burst;
        // Turnaround time of current process = Waiting time of current process + Burst time of current process
        proc[i].turnaround = proc[i].waiting + proc[i].burst;
    }
}

// Function to display the process details
void displayProcesses(struct process proc[], int n) {
    printf("Process ID\tBurst Time\tWaiting Time\tTurnaround Time\n");

    for (int i = 0; i < n; i++) {
        printf("%d\t\t%d\t\t%d\t\t%d\n", proc[i].pid, proc[i].burst, proc[i].waiting, proc[i].turnaround);
    }
}

// Function to calculate average waiting and turnaround times
void calculateAverages(struct process proc[], int n, float *avg_waiting, float *avg_turnaround) {
    int total_waiting = 0, total_turnaround = 0;

    for (int i = 0; i < n; i++) {
        total_waiting += proc[i].waiting;
        total_turnaround += proc[i].turnaround;
    }

    *avg_waiting = (float)total_waiting / n;
    *avg_turnaround = (float)total_turnaround / n;
}

int main() {
    int n; // Number of processes
    printf("Enter the number of processes: ");
    scanf("%d", &n);

    struct process proc[n]; // Array of processes

    // Input process details
    printf("Enter the burst time for each process:\n");
    for (int i = 0; i < n; i++) {
        proc[i].pid = i + 1;
        printf("Process %d: ", i + 1);
        scanf("%d", &proc[i].burst);
    }

    // Calculate waiting and turnaround times
    calculateTimes(proc, n);

    // Display the process details
    displayProcesses(proc, n);

    // Calculate and display average waiting and turnaround times
    float avg_waiting, avg_turnaround;
    calculateAverages(proc, n, &avg_waiting, &avg_turnaround);
    printf("\nAverage Waiting Time: %.2f\n", avg_waiting);
    printf("Average Turnaround Time: %.2f\n", avg_turnaround);

    return 0;
}


SJF:

#include <stdio.h>

struct Process {
    int process_id;
    int arrival_time;
    int burst_time;
};

void sjf_scheduling(struct Process processes[], int n) {
    int completion_time[n];
    int waiting_time[n];
    int turnaround_time[n];

    // Sort processes based on arrival time
    for (int i = 0; i < n; i++) {
        for (int j = i + 1; j < n; j++) {
            if (processes[i].arrival_time > processes[j].arrival_time) {
                // Swap processes
                struct Process temp = processes[i];
                processes[i] = processes[j];
                processes[j] = temp;
            }
        }
    }

    int current_time = 0;

    for (int i = 0; i < n; i++) {
        // Read process details from the keyboard
        printf("Enter details for process %d:\n", i + 1);
        printf("Process ID: ");
        scanf("%d", &processes[i].process_id);
        printf("Arrival Time: ");
        scanf("%d", &processes[i].arrival_time);
        printf("Burst Time: ");
        scanf("%d", &processes[i].burst_time);

        // If the process hasn't arrived yet, wait
        if (current_time < processes[i].arrival_time) {
            current_time = processes[i].arrival_time;
        }

        // Update completion time
        completion_time[i] = current_time + processes[i].burst_time;

        // Update waiting time
        waiting_time[i] = current_time - processes[i].arrival_time;

        // Update turnaround time
        turnaround_time[i] = waiting_time[i] + processes[i].burst_time;

        // Move to the next process
        current_time += processes[i].burst_time;
    }

    // Display results
    printf("\nProcess\tCompletion Time\tWaiting Time\tTurnaround Time\n");
    for (int i = 0; i < n; i++) {
        printf("%d\t\t%d\t\t%d\t\t%d\n", processes[i].process_id, completion_time[i], waiting_time[i], turnaround_time[i]);
    }

    // Calculate and display averages
    int total_waiting_time = 0;
    int total_turnaround_time = 0;
    for (int i = 0; i < n; i++) {
        total_waiting_time += waiting_time[i];
        total_turnaround_time += turnaround_time[i];
    }

    float avg_waiting_time = (float)total_waiting_time / n;
    float avg_turnaround_time = (float)total_turnaround_time / n;

    printf("\nAverage Waiting Time: %.2f\n", avg_waiting_time);
    printf("Average Turnaround Time: %.2f\n", avg_turnaround_time);
}

int main() {
    int n;

    printf("Enter the number of processes: ");
    scanf("%d", &n);

    struct Process processes[n];

    sjf_scheduling(processes, n);

    return 0;
}


Round Robin:
#include<stdio.h>  
    #include<stdlib.h>  
     
    void main()  
    {  
        // initlialize the variable name  
        int i, NOP, sum=0,count=0, y, quant, wt=0, tat=0, at[10], bt[10], temp[10];  
        float avg_wt, avg_tat;  
        printf(" Total number of process in the system: ");  
        scanf("%d", &NOP);  
        y = NOP; // Assign the number of process to variable y  
     
    // Use for loop to enter the details of the process like Arrival time and the Burst Time  
    for(i=0; i<NOP; i++)  
    {  
    printf("\n Enter the Arrival and Burst time of the Process[%d]\n", i+1);  
    printf(" Arrival time is: \t");  // Accept arrival time  
    scanf("%d", &at[i]);  
    printf(" \nBurst time is: \t"); // Accept the Burst time  
    scanf("%d", &bt[i]);  
    temp[i] = bt[i]; // store the burst time in temp array  
    }  
    // Accept the Time qunat  
    printf("Enter the Time Quantum for the process: \t");  
    scanf("%d", &quant);  
    // Display the process No, burst time, Turn Around Time and the waiting time  
    printf("\n Process No \t\t Burst Time \t\t TAT \t\t Waiting Time ");  
    for(sum=0, i = 0; y!=0; )  
    {  
    if(temp[i] <= quant && temp[i] > 0) // define the conditions  
    {  
        sum = sum + temp[i];  
        temp[i] = 0;  
        count=1;  
        }    
        else if(temp[i] > 0)  
        {  
            temp[i] = temp[i] - quant;  
            sum = sum + quant;    
        }  
        if(temp[i]==0 && count==1)  
        {  
            y--; //decrement the process no.  
            printf("\nProcess No[%d] \t\t %d\t\t\t\t %d\t\t\t %d", i+1, bt[i], sum-at[i], sum-at[i]-bt[i]);  
            wt = wt+sum-at[i]-bt[i];  
            tat = tat+sum-at[i];  
            count =0;    
        }  
        if(i==NOP-1)  
        {  
            i=0;  
        }  
        else if(at[i+1]<=sum)  
        {  
            i++;  
        }  
        else  
        {  
            i=0;  
        }  
    }  
    // represents the average waiting time and Turn Around time  
    avg_wt = wt * 1.0/NOP;  
    avg_tat = tat * 1.0/NOP;  
    printf("\n Average Turn Around Time: \t%f", avg_wt);  
    printf("\n Average Waiting Time: \t%f"
import java.util.List;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int opcao = 0;
        String file = "C:\\Users\\gabri\\Downloads\\JogosDesordenados.csv";
        String localSalvado = "C:\\Users\\gabri\\Documents\\";
        do {
            System.out.println("[1] Ler Arquivo");
            System.out.println("[2] Organizar por Categoria");
            System.out.println("[3] Organizar por Avaliação");
            System.out.println("[4] Sair");
            
            opcao = sc.nextInt();
            switch (opcao) {
                case 1:
                    Item[] itens = LeitorCSV.lerArquivo(file);
                    // Verifica se os itens foram lidos com sucesso
                    if (itens != null) {
                        // Itera sobre os itens e imprime as informações
                        for (Item item : itens) {
                                System.out.println("Jogo: " + item.getJogos());
                                System.out.println("Categoria: " + item.getCategoria());
                                System.out.println("Avaliação: " + item.getAvaliacao());
                                System.out.println();
                            }
                        }
                    } else {
                        System.out.println("Não foi possível ler o arquivo.");
                    }
                    break;
                case 2:
                    Item[] archive = LeitorCSV.lerArquivo(file);
                    assert archive != null;
                    SelectionSort.ordenarPorCategoria(archive);
                    SelectionSort.alfabetico(archive);
                    String nomeSalvado = "JogosOrdenadoCategoriaAlfabetico.csv";
                    
                    System.out.println(SelectionSort.toString(archive));
                    SelectionSort.salvarJogosOrdenadosPorCategoria(archive,nomeSalvado,localSalvado);
                    break;
                case 3:
                    Item[] arquivo = LeitorCSV.lerArquivo(file);
                    BubbleSort.bubbleSort(arquivo, arquivo != null ? arquivo.length : 0);
                    int auxiliar = 1;
                    assert arquivo != null;
                    for (Item item : arquivo) {
                        if (item != null) {
                            System.out.println(auxiliar + ":");
                            System.out.println("Jogo: " + item.getJogos());
                            System.out.println("Categoria: " + item.getCategoria());
                            System.out.println("Avaliação: " + item.getAvaliacao());
                            System.out.println();
                            auxiliar++;
                        }
                    }
                    String nomeArquivo = "JogosOrdenadosPorAvaliação.csv";
                    BubbleSort.salvarArquivoCSV(arquivo,nomeArquivo,localSalvado);
                    break;
                case 4:
                    System.out.println("Bye Bye!!!");
                break;
                default:
                    System.out.println("Insira um numero válido");
            }
        } while (opcao != 4);
    }
}
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.IOException;

public class BubbleSort {
    public static void  bubbleSort(Item[] arquivo, int tamanho){
        for(int i = 0; i < tamanho -1; i++){
            for(int j = 0; j < tamanho - i -1; j++){
                if (arquivo[j].getAvaliacao() < arquivo[j+1].getAvaliacao()) {
                    Item temp = arquivo[j];
                    arquivo[j] = arquivo[j+1];
                    arquivo[j+1] = temp;
                }
            }
        }
    }
    public static void salvarArquivoCSV(Item[] arquivo, String nomeArquivo, String local){
        try(BufferedWriter escritor = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File(local + nomeArquivo)), "UTF-8"))){

            //Escrevendo o cabeçalho

            escritor.write("Nome do Jogo; Avaliação; Categoria \n");

            //Escrevendo os dados de cada jogo

            for (Item item : arquivo) {
                escritor.write(String.format("%s;%.2f;%s\n", item.getJogos(), item.getAvaliacao(), item.getCategoria()));
            }

            System.out.println("Arquivo salvo com sucesso em ' "+ local+ "'.");

        }catch (IOException e){
            System.err.println("Erro ao salvar o arquivo CSV: " + e.getMessage());
        }
    }
}
import java.io.FileWriter;
import java.io.IOException;

public class SelectionSort {

    public static void ordenarPorCategoria(Item[] arquivo) {

        int n = arquivo.length;

        //Loop para pecorrer os elementos do array
        for(int i = 0; i < n; i++){
            int minIndex = i;
            for(int j = i+1; j < n; j++){
                if(arquivo[j].getCategoria().compareTo(arquivo[minIndex].getCategoria()) < 0){
                    minIndex = j;
                }
            }
            //Trocar o menor elemento com o primeiro não ordenado

            Item temp = arquivo[minIndex];
            arquivo[minIndex] = arquivo[i];
            arquivo[i] = temp;
        }
    }

    public static void alfabetico(Item[] arquivo){
        int n = arquivo.length;
        for(int i = 0; i < n; i++){
            for(int j = 0; j < n - i -1; j++){
                if(arquivo[j].getCategoria().equals(arquivo[j+i].getCategoria()) &&
                    arquivo[j].getJogos().compareToIgnoreCase(arquivo[j+1].getJogos()) > 0){

                    //troca

                    Item temp = arquivo[j];
                    arquivo[j] = arquivo[j+1];
                    arquivo[j+1] = temp;
                }
            }
        }


    }

    public static String toString(Item[] itens) {
        StringBuilder builder = new StringBuilder();
        if (itens == null || itens.length == 0) {
            return "No items to display.";
        }
        String lastCategory = "";

        for (Item item : itens) {
            if (!item.getCategoria().equals(lastCategory)) {
                lastCategory = item.getCategoria();
                builder.append("\nCategoria: ").append(lastCategory).append("\n");
            }
            builder.append(item.toString()).append("\n");
        }

        return builder.toString();



    }

    public static void salvarJogosOrdenadosPorCategoria(Item[] itens, String nomeArquivo,String local){
        ordenarPorCategoria(itens);
        alfabetico(itens);

        //salvando os arquivos

        try(FileWriter escritor = new FileWriter(local + nomeArquivo)){
            escritor.write(toString(itens));
            System.out.println("Jogos ordenados e salvos com sucesso no : " + local + nomeArquivo);

        } catch (IOException e) {
            System.out.println("Erro ao salvar o arquivo: " + e.getMessage());
        }
    }



}
import java.io.*;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.util.Scanner;

public class LeitorCSV {
    public static Item[] lerArquivo(String caminhoArquivo) {

        Item[] itens = new Item[40];
        int index = 0;
        File arquivo = new File(caminhoArquivo);
        Scanner sc = null;

        // if para conferir se o caminho é válido
        if (arquivo.isAbsolute()) {
            try {
                sc = new Scanner(new InputStreamReader(new FileInputStream(arquivo),"UTF-8"));
                while (sc.hasNextLine() && index < itens.length) {
                    String linha = sc.nextLine();
                    String[] dados = linha.split(",");
                    String jogos = dados[0];
                    String categoria = dados[1];
                    double avaliacao = Double.parseDouble(dados[2]);

                    itens[index] = new Item(jogos, categoria, avaliacao);
                    index++;

                }
            } catch (FileNotFoundException e) {
                System.out.println(e.getMessage());
            } catch (UnsupportedEncodingException e) {
                throw new RuntimeException(e);
            } finally {
                if (sc != null) {
                    sc.close();
                }
            }


            return itens;
        } else {
            //Caso der errado, será avisado

            System.out.println("Erro no caminho fornecido!");

            return  null ;
        }


    }
}
public class Item {
    private String jogos;
    private String categoria;
    private double avaliacao;

    public Item(String jogos, String categoria, double avaliacao) {
        this.jogos = jogos;
        this.categoria = categoria;
        this.avaliacao = avaliacao;
    }

    public String getJogos() {
        return jogos;
    }

    public void setJogos(String jogos) {
        this.jogos = jogos;
    }

    public double getAvaliacao() {
        return avaliacao;
    }

    public void setAvaliacao(double avaliacao) {
        this.avaliacao = avaliacao;
    }

    public String getCategoria() {
        return categoria;
    }

    public void setCategoria(String categoria) {
        this.categoria = categoria;
    }

    @Override
    public String toString(){
        return "| Jogo:" + jogos + "| Categoria:" +  categoria + "| Avaliação:" +  
        avaliacao + " |";

    }
}
922


This answer was valid for Ubuntu 20.04 and previous versions. For Ubuntu 20.10 and later versions, see this answer on StackOverflow.
The short version is:

sudo mkdir -m 0755 -p /etc/apt/keyrings/ 

wget -O- https://example.com/EXAMPLE.gpg |
    gpg --dearmor |
    sudo tee /etc/apt/keyrings/EXAMPLE.gpg > /dev/null
    sudo chmod 644 /etc/apt/keyrings/EXAMPLE.gpg

echo "deb [signed-by=/etc/apt/keyrings/EXAMPLE.gpg] https://example.com/apt stable main" |
    sudo tee /etc/apt/sources.list.d/EXAMPLE.list
    sudo chmod 644 /etc/apt/sources.list.d/EXAMPLE.list

# Optional (you can find the email address / ID using 'apt-key list')
sudo apt-key del support@example.com
 Save
Original answer:
Execute the following commands in terminal

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <PUBKEY>
 Save
where <PUBKEY> is your missing public key for repository, e.g. 8BAF9A6F.

Then update

sudo apt-get update
 Save
ALTERNATE METHOD:

sudo gpg --keyserver pgpkeys.mit.edu --recv-key  <PUBKEY>
sudo gpg -a --export <PUBKEY> | sudo apt-key add -
sudo apt-get update
 Save
Note that when you import a key like this using apt-key you are telling the system that you trust the key you're importing to sign software your system will be using. Do not do this unless you're sure the key is really the key of the package distributor.

Share
Improve this answer
Follow
edited Dec 4, 2023 at 10:15

terdon
101k1515 gold badges200200 silver badges302302 bronze badges
answered Nov 28, 2010 at 18:49

karthick87
82.1k6161 gold badges195195 silver badges233233 bronze badges
16
You can simply pass NO_PUBKEY value as keys parameter. for example GPG error[...]NO_PUBKEY 3766223989993A70 => sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3766223989993A70 – 
S.M.Mousavi
 Feb 19, 2014 at 19:40
34
8BAF9A6F <-- where did you get that number? – 
Olivier Lalonde Mar 9, 2014 at 12:49
18
The number 8BAF9... is what you see in the original error. It would be something like NO_PUBKEY 8BAF... – 
Alex
 Oct 10, 2014 at 19:56
14
If someone tampered with data between me and the repository, and substituted stuff they'd signed, this would wind up with me just adding the key they used, more or less blindly. So what's the process to verify that the key is the right one? – 
mc0e
 May 20, 2015 at 15:37
9
State on 2022.08.28 on jammy: Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)). – 
s.k
 Aug 28, 2022 at 8:39
Show 14 more comments

261


By far the simplest way to handle this now is with Y-PPA-Manager (which now integrates the launchpad-getkeys script with a graphical interface).

To install it, first add the webupd8 repository for this program:

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
 Save
Update your software list and install Y-PPA-Manager:

sudo apt-get update
sudo apt-get install y-ppa-manager
 Save
Run y-ppa-manager (i.e. type y-ppa-manager then press enter key).

When the main y-ppa-manager window appears, click on "Advanced."

From the list of advanced tasks, select "Try to import all missing GPG keys" and click OK.

You're done! As the warning dialog says when you start the operation, it may take quite a while (about 2 minutes for me) depending on how many PPA's you have and the speed of your connection.

Share
Improve this answer
Follow
edited Jun 12, 2020 at 14:37

CommunityBot
1
answered Dec 4, 2013 at 15:52

monotasker
3,67511 gold badge1818 silver badges1515 bronze badges
43
Not really useful in a webserver, as this installs X11. Don't use this method if you're on a server edition, check karthick87's answer! – 
goncalotomas
 Feb 11, 2016 at 20:13
2
Does this allow to verify the keys which are imported, or are you simply blindly importing everything (and therefore trusting everyone who has a PPA)? – 
Paŭlo Ebermann Sep 6, 2016 at 10:36
3
You're importing (and trusting) the keys for every PPA you've added to your system. The assumption is that you trust those PPA's and have checked them out before you added them via apt. – 
monotasker
 Sep 6, 2016 at 14:25
7
This answer is easier by far, and actually requires fewer commands than this "graphical" answer. – 
jpaugh
 Jul 27, 2017 at 19:37
2
But the question asked for a graphical method. – 
monotasker
 Jul 28, 2017 at 22:30
Show 13 more comments

95


It happens when you don't have a suitable public key for a repository.

To solve this problem use this command:

gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 9BDB3D89CE49EC21
 Save
which retrieves the key from ubuntu key server. And then this:

gpg --export --armor 9BDB3D89CE49EC21 | sudo apt-key add -
 Save
which adds the key to apt trusted keys.
If you still have an error. Try this:

sudo find /var/cache/pacman/pkg/ -iname "*.part" -exec rm {} \;
 Save
It removes .part files, which causes the "invalid or corrupted package" error. After you remove them, run this:

sudo pacman -Syyu
The following is for ArchLinux however applies to other Linux distros too. To correct an invalid KEY one needs to do the following:

rm -fr /etc/pacman.d/gnupg
pacman-key --init
pacman-key --populate archlinux
 Save
say the key throwing an error is in Blackarch then is also needed to :

sudo pacman-key --populate blackarch
 Save
and finally

sudo pacman -Sy archlinux-keyring
sudo pacman-key --populate archlinux
sudo pacman-key --refresh-keys
PS C:\>Update-StorageProviderCache -DiscoveryLevel Full
<link rel="stylesheet" href="{{ 'component-list-menu.css' | asset_url }}" media="print" onload="this.media='all'">
<link rel="stylesheet" href="{{ 'component-search.css' | asset_url }}" media="print" onload="this.media='all'">
<link rel="stylesheet" href="{{ 'component-menu-drawer.css' | asset_url }}" media="print" onload="this.media='all'">
<link rel="stylesheet" href="{{ 'component-cart-notification.css' | asset_url }}" media="print" onload="this.media='all'">
<link rel="stylesheet" href="{{ 'component-cart-items.css' | asset_url }}" media="print" onload="this.media='all'">
{%- if settings.predictive_search_enabled -%}
  <link rel="stylesheet" href="{{ 'component-price.css' | asset_url }}" media="print" onload="this.media='all'">
{%- endif -%}
{%- if section.settings.menu_type_desktop == 'mega' -%}
  <link rel="stylesheet" href="{{ 'component-mega-menu.css' | asset_url }}" media="print" onload="this.media='all'">
{%- endif -%}

{%- if settings.cart_type == "drawer" -%}
  {{ 'component-cart-drawer.css' | asset_url | stylesheet_tag }}
  {{ 'component-cart.css' | asset_url | stylesheet_tag }}
  {{ 'component-totals.css' | asset_url | stylesheet_tag }}
  {{ 'component-price.css' | asset_url | stylesheet_tag }}
  {{ 'component-discounts.css' | asset_url | stylesheet_tag }}
{%- endif -%}

<style>
  header-drawer {
    justify-self: start;
    margin-left: -1.2rem;
  }

  {%- if section.settings.sticky_header_type == 'reduce-logo-size' -%}
    .scrolled-past-header .header__heading-logo-wrapper {
      width: 75%;
    }
  {%- endif -%}

  {%- if section.settings.menu_type_desktop != "drawer" -%}
    @media screen and (min-width: 990px) {
      header-drawer {
        display: none;
      }
    }
  {%- endif -%}

  .menu-drawer-container {
    display: flex;
  }

  .list-menu {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .list-menu--inline {
    display: inline-flex;
    flex-wrap: wrap;
  }

  summary.list-menu__item {
    padding-right: 2.7rem;
  }

  .list-menu__item {
    display: flex;
    align-items: center;
    line-height: calc(1 + 0.3 / var(--font-body-scale));
  }

  .list-menu__item--link {
    text-decoration: none;
    padding-bottom: 1rem;
    padding-top: 1rem;
    line-height: calc(1 + 0.8 / var(--font-body-scale));
  }

  @media screen and (min-width: 750px) {
    .list-menu__item--link {
      padding-bottom: 0.5rem;
      padding-top: 0.5rem;
    }
  }
</style>

{%- style -%}
  .header {
    padding: {{ section.settings.padding_top | times: 0.5 | round: 0 }}px 3rem {{ section.settings.padding_bottom | times: 0.5 | round: 0 }}px 3rem;
  }

  .section-header {
    position: sticky; /* This is for fixing a Safari z-index issue. PR #2147 */
    margin-bottom: {{ section.settings.margin_bottom | times: 0.75 | round: 0 }}px;
  }

  @media screen and (min-width: 750px) {
    .section-header {
      margin-bottom: {{ section.settings.margin_bottom }}px;
    }
  }

  @media screen and (min-width: 990px) {
    .header {
      padding-top: {{ section.settings.padding_top }}px;
      padding-bottom: {{ section.settings.padding_bottom }}px;
    }
  }
{%- endstyle -%}

<script src="{{ 'details-disclosure.js' | asset_url }}" defer="defer"></script>
<script src="{{ 'details-modal.js' | asset_url }}" defer="defer"></script>
<script src="{{ 'cart-notification.js' | asset_url }}" defer="defer"></script>
<script src="{{ 'search-form.js' | asset_url }}" defer="defer"></script>
{%- if settings.cart_type == "drawer" -%}
  <script src="{{ 'cart-drawer.js' | asset_url }}" defer="defer"></script>
{%- endif -%}

<svg xmlns="http://www.w3.org/2000/svg" class="hidden">
  <symbol id="icon-search" viewbox="0 0 18 19" fill="none">
    <path fill-rule="evenodd" clip-rule="evenodd" d="M11.03 11.68A5.784 5.784 0 112.85 3.5a5.784 5.784 0 018.18 8.18zm.26 1.12a6.78 6.78 0 11.72-.7l5.4 5.4a.5.5 0 11-.71.7l-5.41-5.4z" fill="currentColor"/>
  </symbol>

  <symbol id="icon-reset" class="icon icon-close"  fill="none" viewBox="0 0 18 18" stroke="currentColor">
    <circle r="8.5" cy="9" cx="9" stroke-opacity="0.2"/>
    <path d="M6.82972 6.82915L1.17193 1.17097" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/>
    <path d="M1.22896 6.88502L6.77288 1.11523" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/>
  </symbol>

  <symbol id="icon-close" class="icon icon-close" fill="none" viewBox="0 0 18 17">
    <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
  </symbol>
</svg>

{%- liquid
  for block in section.blocks
    if block.type == '@app'
      assign has_app_block = true
    endif
  endfor
-%}

<{% if section.settings.sticky_header_type != 'none' %}sticky-header data-sticky-type="{{ section.settings.sticky_header_type }}"{% else %}div{% endif %} class="header-wrapper color-{{ section.settings.color_scheme }} gradient{% if section.settings.show_line_separator %} header-wrapper--border-bottom{% endif %}">
  {%- liquid
    assign social_links = false
    assign localization_forms = false

    if settings.social_twitter_link != blank or settings.social_facebook_link != blank or settings.social_pinterest_link != blank or settings.social_instagram_link != blank or settings.social_youtube_link != blank or settings.social_vimeo_link != blank or settings.social_tiktok_link != blank or settings.social_tumblr_link != blank or settings.social_snapchat_link != blank
      assign social_links = true
    endif

    if localization.available_countries.size > 1 and section.settings.enable_country_selector or section.settings.enable_language_selector and localization.available_languages.size > 1
      assign localization_forms = true
    endif
  -%}
  <header class="header header--{{ section.settings.logo_position }} header--mobile-{{ section.settings.mobile_logo_position }} page-width{% if section.settings.menu_type_desktop == 'drawer' %} drawer-menu{% endif %}{% if section.settings.menu != blank %} header--has-menu{% endif %}{% if has_app_block %} header--has-app{% endif %}{% if social_links %} header--has-social{% endif %}{% if shop.customer_accounts_enabled %} header--has-account{% endif %}{% if localization_forms %} header--has-localizations{% endif %}">
    {%- liquid
      if section.settings.menu != blank
        render 'header-drawer'
      endif

      if section.settings.logo_position == 'top-center' or section.settings.menu == blank
        render 'header-search', input_id: 'Search-In-Modal-1'
      endif
    -%}

    {%- if section.settings.logo_position != 'middle-center' -%}
      {%- if request.page_type == 'index' -%}
        <h1 class="header__heading">
      {%- endif -%}
          <a href="{{ routes.root_url }}" class="header__heading-link link link--text focus-inset">
            {%- if settings.logo != blank -%}
              <div class="header__heading-logo-wrapper">
                {%- assign logo_alt = settings.logo.alt | default: shop.name | escape -%}
                {%- assign logo_height = settings.logo_width | divided_by: settings.logo.aspect_ratio -%}
                {% capture sizes %}(max-width: {{ settings.logo_width | times: 2 }}px) 50vw, {{ settings.logo_width }}px{% endcapture %}
                {% capture widths %}{{ settings.logo_width }}, {{ settings.logo_width | times: 1.5 | round }}, {{ settings.logo_width | times: 2 }}{% endcapture %}
                {{ settings.logo | image_url: width: 600 | image_tag:
                  class: 'header__heading-logo motion-reduce',
                  widths: widths,
                  height: logo_height,
                  width: settings.logo_width,
                  alt: logo_alt,
                  sizes: sizes,
                  preload: true
                }}
              </div>
            {%- else -%}
              <span class="h2">{{ shop.name }}</span>
            {%- endif -%}
          </a>
      {%- if request.page_type == 'index' -%}
        </h1>
      {%- endif -%}
    {%- endif -%}

    {%- liquid
      if section.settings.menu != blank
        if section.settings.menu_type_desktop == 'dropdown'
          render 'header-dropdown-menu'
        elsif section.settings.menu_type_desktop != 'drawer'
          render 'header-mega-menu'
        endif
      endif
    %}

    {%- if section.settings.logo_position == 'middle-center' -%}
      {%- if request.page_type == 'index' -%}
        <h1 class="header__heading">
      {%- endif -%}
          <a href="{{ routes.root_url }}" class="header__heading-link link link--text focus-inset">
            {%- if settings.logo != blank -%}
              <div class="header__heading-logo-wrapper">
                {%- assign logo_alt = settings.logo.alt | default: shop.name | escape -%}
                {%- assign logo_height = settings.logo_width | divided_by: settings.logo.aspect_ratio -%}
                {% capture sizes %}(min-width: 750px) {{ settings.logo_width }}px, 50vw{% endcapture %}
                {% capture widths %}{{ settings.logo_width }}, {{ settings.logo_width | times: 1.5 | round }}, {{ settings.logo_width | times: 2 }}{% endcapture %}
                {{ settings.logo | image_url: width: 600 | image_tag:
                  class: 'header__heading-logo',
                  widths: widths,
                  height: logo_height,
                  width: settings.logo_width,
                  alt: logo_alt,
                  sizes: sizes,
                  preload: true
                }}
              </div>
            {%- else -%}
              <span class="h2">{{ shop.name }}</span>
            {%- endif -%}
          </a>
      {%- if request.page_type == 'index' -%}
        </h1>
      {%- endif -%}
    {%- endif -%}

    <div class="header__icons{% if section.settings.enable_country_selector or section.settings.enable_language_selector %} header__icons--localization header-localization{% endif %}">
      <div class="desktop-localization-wrapper">
        {%- if section.settings.enable_country_selector and localization.available_countries.size > 1 -%}
          <localization-form class="small-hide medium-hide" data-prevent-hide>
            {%- form 'localization', id: 'HeaderCountryForm', class: 'localization-form' -%}
              <div>
                <h2 class="visually-hidden" id="HeaderCountryLabel">{{ 'localization.country_label' | t }}</h2>
                {%- render 'country-localization', localPosition: 'HeaderCountry' -%}
              </div>
            {%- endform -%}
          </localization-form>
        {% endif %}

        {%- if section.settings.enable_language_selector and localization.available_languages.size > 1 -%}
          <localization-form class="small-hide medium-hide" data-prevent-hide>
            {%- form 'localization', id: 'HeaderLanguageForm', class: 'localization-form' -%}
              <div>
                <h2 class="visually-hidden" id="HeaderLanguageLabel">{{ 'localization.language_label' | t }}</h2>
                {%- render 'language-localization', localPosition: 'HeaderLanguage' -%}
              </div>
            {%- endform -%}
          </localization-form>
        {%- endif -%}
      </div>
      {% render 'header-search', input_id: 'Search-In-Modal' %}

      {%- if shop.customer_accounts_enabled -%}
        <a href="{%- if customer -%}{{ routes.account_url }}{%- else -%}{{ routes.account_login_url }}{%- endif -%}" class="header__icon header__icon--account link focus-inset{% if section.settings.menu != blank %} small-hide{% endif %}">
          <account-icon>
            {%- if customer and customer.has_avatar? -%}
              {{ customer | avatar }}
            {%- else -%}
              {% render 'icon-account' %}
            {%- endif -%}
          </account-icon>
          <span class="visually-hidden">
            {%- liquid
              if customer
                echo 'customer.account_fallback' | t
              else
                echo 'customer.log_in' | t
              endif
            -%}
          </span>
        </a>
      {%- endif -%}

      {%- for block in section.blocks -%}
        {%- case block.type -%}
          {%- when '@app' -%}
            {% render block %}
        {%- endcase -%}
      {%- endfor -%}

        {%- liquid
          if cart == empty
            render 'icon-cart-empty'
          else
            render 'icon-cart'
          endif
        -%}
        <span class="visually-hidden">{{ 'templates.cart.cart' | t }}</span>
        {%- if cart != empty -%}
          <div class="cart-count-bubble">
            {%- if cart.item_count < 100 -%}
              <span aria-hidden="true">{{ cart.item_count }}</span>
            {%- endif -%}
            <span class="visually-hidden">{{ 'sections.header.cart_count' | t: count: cart.item_count }}</span>
          </div>
        {%- endif -%}
      </a>
    </div>
  </header>
</{% if section.settings.sticky_header_type != 'none' %}sticky-header{% else %}div{% endif %}>

{%- if settings.cart_type == "notification" -%}
  {%- render 'cart-notification', color_scheme: section.settings.color_scheme, desktop_menu_type: section.settings.menu_type_desktop -%}
{%- endif -%}

{% javascript %}
  class StickyHeader extends HTMLElement {
    constructor() {
      super();
    }

    connectedCallback() {
      this.header = document.querySelector('.section-header');
      this.headerIsAlwaysSticky = this.getAttribute('data-sticky-type') === 'always' || this.getAttribute('data-sticky-type') === 'reduce-logo-size';
      this.headerBounds = {};

      this.setHeaderHeight();

      window.matchMedia('(max-width: 990px)').addEventListener('change', this.setHeaderHeight.bind(this));

      if (this.headerIsAlwaysSticky) {
        this.header.classList.add('shopify-section-header-sticky');
      };

      this.currentScrollTop = 0;
      this.preventReveal = false;
      this.predictiveSearch = this.querySelector('predictive-search');

      this.onScrollHandler = this.onScroll.bind(this);
      this.hideHeaderOnScrollUp = () => this.preventReveal = true;

      this.addEventListener('preventHeaderReveal', this.hideHeaderOnScrollUp);
      window.addEventListener('scroll', this.onScrollHandler, false);

      this.createObserver();
    }

    setHeaderHeight() {
      document.documentElement.style.setProperty('--header-height', `${this.header.offsetHeight}px`);
    }

    disconnectedCallback() {
      this.removeEventListener('preventHeaderReveal', this.hideHeaderOnScrollUp);
      window.removeEventListener('scroll', this.onScrollHandler);
    }

    createObserver() {
      let observer = new IntersectionObserver((entries, observer) => {
        this.headerBounds = entries[0].intersectionRect;
        observer.disconnect();
      });

      observer.observe(this.header);
    }

    onScroll() {
      const scrollTop = window.pageYOffset || document.documentElement.scrollTop;

      if (this.predictiveSearch && this.predictiveSearch.isOpen) return;

      if (scrollTop > this.currentScrollTop && scrollTop > this.headerBounds.bottom) {
        this.header.classList.add('scrolled-past-header');
        if (this.preventHide) return;
        requestAnimationFrame(this.hide.bind(this));
      } else if (scrollTop < this.currentScrollTop && scrollTop > this.headerBounds.bottom) {
        this.header.classList.add('scrolled-past-header');
        if (!this.preventReveal) {
          requestAnimationFrame(this.reveal.bind(this));
        } else {
          window.clearTimeout(this.isScrolling);

          this.isScrolling = setTimeout(() => {
            this.preventReveal = false;
          }, 66);

          requestAnimationFrame(this.hide.bind(this));
        }
      } else if (scrollTop <= this.headerBounds.top) {
        this.header.classList.remove('scrolled-past-header');
        requestAnimationFrame(this.reset.bind(this));
      }

      this.currentScrollTop = scrollTop;
    }

    hide() {
      if (this.headerIsAlwaysSticky) return;
      this.header.classList.add('shopify-section-header-hidden', 'shopify-section-header-sticky');
      this.closeMenuDisclosure();
      this.closeSearchModal();
    }

    reveal() {
      if (this.headerIsAlwaysSticky) return;
      this.header.classList.add('shopify-section-header-sticky', 'animate');
      this.header.classList.remove('shopify-section-header-hidden');
    }

    reset() {
      if (this.headerIsAlwaysSticky) return;
      this.header.classList.remove('shopify-section-header-hidden', 'shopify-section-header-sticky', 'animate');
    }

    closeMenuDisclosure() {
      this.disclosures = this.disclosures || this.header.querySelectorAll('header-menu');
      this.disclosures.forEach(disclosure => disclosure.close());
    }

    closeSearchModal() {
      this.searchModal = this.searchModal || this.header.querySelector('details-modal');
      this.searchModal.close(false);
    }
  }

  customElements.define('sticky-header', StickyHeader);
{% endjavascript %}

<script type="application/ld+json">
  {
    "@context": "http://schema.org",
    "@type": "Organization",
    "name": {{ shop.name | json }},
    {% if settings.logo %}
      "logo": {{ settings.logo | image_url: width: 500 | prepend: "https:" | json }},
    {% endif %}
    "sameAs": [
      {{ settings.social_twitter_link | json }},
      {{ settings.social_facebook_link | json }},
      {{ settings.social_pinterest_link | json }},
      {{ settings.social_instagram_link | json }},
      {{ settings.social_tiktok_link | json }},
      {{ settings.social_tumblr_link | json }},
      {{ settings.social_snapchat_link | json }},
      {{ settings.social_youtube_link | json }},
      {{ settings.social_vimeo_link | json }}
    ],
    "url": {{ request.origin | append: page.url | json }}
  }
</script>

{%- if request.page_type == 'index' -%}
  {% assign potential_action_target = request.origin | append: routes.search_url | append: "?q={search_term_string}" %}
  <script type="application/ld+json">
    {
      "@context": "http://schema.org",
      "@type": "WebSite",
      "name": {{ shop.name | json }},
      "potentialAction": {
        "@type": "SearchAction",
        "target": {{ potential_action_target | json }},
        "query-input": "required name=search_term_string"
      },
      "url": {{ request.origin | append: page.url | json }}
    }
  </script>
{%- endif -%}

{% schema %}
{
  "name": "t:sections.header.name",
  "class": "section-header",
  "max_blocks": 3,
  "settings": [
    {
      "type": "select",
      "id": "logo_position",
      "options": [
        {
          "value": "top-left",
          "label": "t:sections.header.settings.logo_position.options__2.label"
        },
        {
          "value": "top-center",
          "label": "t:sections.header.settings.logo_position.options__3.label"
        },
        {
          "value": "middle-left",
          "label": "t:sections.header.settings.logo_position.options__1.label"
        },
        {
          "value": "middle-center",
          "label": "t:sections.header.settings.logo_position.options__4.label"
        }
      ],
      "default": "middle-left",
      "label": "t:sections.header.settings.logo_position.label",
      "info": "t:sections.header.settings.logo_help.content"
    },
    {
      "type": "link_list",
      "id": "menu",
      "default": "main-menu",
      "label": "t:sections.header.settings.menu.label"
    },
    {
      "type": "select",
      "id": "menu_type_desktop",
      "options": [
        {
          "value": "dropdown",
          "label": "t:sections.header.settings.menu_type_desktop.options__1.label"
        },
        {
          "value": "mega",
          "label": "t:sections.header.settings.menu_type_desktop.options__2.label"
        },
        {
          "value": "drawer",
          "label": "t:sections.header.settings.menu_type_desktop.options__3.label"
        }
      ],
      "default": "dropdown",
      "label": "t:sections.header.settings.menu_type_desktop.label",
      "info": "t:sections.header.settings.menu_type_desktop.info"
    },
    {
      "type": "select",
      "id": "sticky_header_type",
      "options": [
        {
          "value": "none",
          "label": "t:sections.header.settings.sticky_header_type.options__1.label"
        },
        {
          "value": "on-scroll-up",
          "label": "t:sections.header.settings.sticky_header_type.options__2.label"
        },
        {
          "value": "always",
          "label": "t:sections.header.settings.sticky_header_type.options__3.label"
        },
        {
          "value": "reduce-logo-size",
          "label": "t:sections.header.settings.sticky_header_type.options__4.label"
        }
      ],
      "default": "on-scroll-up",
      "label": "t:sections.header.settings.sticky_header_type.label"
    },
    {
      "type": "checkbox",
      "id": "show_line_separator",
      "default": true,
      "label": "t:sections.header.settings.show_line_separator.label"
    },
    {
      "type": "header",
      "content": "t:sections.header.settings.header__1.content"
    },
    {
      "type": "color_scheme",
      "id": "color_scheme",
      "label": "t:sections.all.colors.label",
      "default": "scheme-1"
    },
    {
      "type": "color_scheme",
      "id": "menu_color_scheme",
      "label": "t:sections.header.settings.menu_color_scheme.label",
      "default": "scheme-1"
    },
    {
      "type": "header",
      "content": "t:sections.header.settings.header__3.content",
      "info": "t:sections.header.settings.header__4.info"
    },
    {
      "type": "checkbox",
      "id": "enable_country_selector",
      "default": false,
      "label": "t:sections.header.settings.enable_country_selector.label"
    },
    {
      "type": "header",
      "content": "t:sections.header.settings.header__5.content",
      "info": "t:sections.header.settings.header__6.info"
    },
    {
      "type": "checkbox",
      "id": "enable_language_selector",
      "default": false,
      "label": "t:sections.header.settings.enable_language_selector.label"
    },
    {
      "type": "header",
      "content": "t:sections.header.settings.mobile_layout.content"
    },
    {
      "type": "select",
      "id": "mobile_logo_position",
      "options": [
        {
          "value": "center",
          "label": "t:sections.header.settings.mobile_logo_position.options__1.label"
        },
        {
          "value": "left",
          "label": "t:sections.header.settings.mobile_logo_position.options__2.label"
        }
      ],
      "default": "center",
      "label": "t:sections.header.settings.mobile_logo_position.label"
    },
    {
      "type": "header",
      "content": "t:sections.all.spacing"
    },
    {
      "type": "range",
      "id": "margin_bottom",
      "min": 0,
      "max": 100,
      "step": 4,
      "unit": "px",
      "label": "t:sections.header.settings.margin_bottom.label",
      "default": 0
    },
    {
      "type": "header",
      "content": "t:sections.all.padding.section_padding_heading"
    },
    {
      "type": "range",
      "id": "padding_top",
      "min": 0,
      "max": 36,
      "step": 4,
      "unit": "px",
      "label": "t:sections.all.padding.padding_top",
      "default": 20
    },
    {
      "type": "range",
      "id": "padding_bottom",
      "min": 0,
      "max": 36,
      "step": 4,
      "unit": "px",
      "label": "t:sections.all.padding.padding_bottom",
      "default": 20
    }
  ],
  "blocks": [
    {
      "type": "@app"
    }
  ]
}
{% endschema %}
 /**
  * Class for plugin functionality
  */
  class DWCSTS
  {

    function __construct()
    {
      add_action('wp_dashboard_setup', array( $this, 'removingWCStatus' ));
    }

    function removingWCStatus()
    {
      remove_meta_box( 'woocommerce_dashboard_status', 'dashboard', 'normal');
    }

  }
  $dwcsts = new DWCSTS();
function themeslug_postmeta_form_keys() {
 return false;
}
add_filter('postmeta_form_keys', 'themeslug_postmeta_form_keys');

function themeslug_deactivate_stock_reports($from) {
 global $wpdb;
 return "FROM {$wpdb-&amp;amp;amp;gt;posts} as posts WHERE 1=0";
}
add_filter( 'woocommerce_report_low_in_stock_query_from', 'themeslug_deactivate_stock_reports' );
add_filter( 'woocommerce_report_out_of_stock_query_from', 'themeslug_deactivate_stock_reports' ); 

<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
	<CreateTransaction xmlns=”http://www.agmo.eu/protocols/Payments/v2.3”>
		<client>
			<email>john.doe@email.com</email>
			<phone>+420123456789</phone>
			<fullName>Jan Novák</fullName><!-- nový parametr -->
			<emailNotification>true</emailNotification>
		</client>
		<product>
			<category>DIGITAL</category>
			<name>BEATLES</name>
			<label>Beatles - Help!</label>
			<description>320kbps MP3 song</description>
		</product>
		<payment>
			<price currency="CZK">100.00</price>
			<variableSymbol>2010102600</variableSymbol>
			<method id="BANK_CZ_FB_P"/>
			<method id="BANK_CZ_VB"/>
		</payment>
		<interface>
			<language>cs</language>
			<urlOk>https://go.to/ok?id=${id}</urlOk>
			<urlError>http://go.to/error?id=${id}</urlError>
			<urlPending>http://go.to/pending?id=${id}</urlPending>
		</interface>
	</CreateTransaction>
</env:Body>
</env:Envelope>
$payment = new Payment();
$payment
    ->setPrice(Money::ofInt(50))
    ->setCurrency(CurrencyCode::CZK)
    ->setLabel('Test item')
    ->setReferenceId('test001')
    ->setEmail('foo@bar.tld')
    ->addMethod(PaymentMethodCode::ALL)
    ->setTest(false)
    ->setFullName('Jan Novák') // nové parametry ↓
    ->setCategory(CategoryCode::PHYSICAL_GOODS_ONLY)
    ->setDelivery(DeliveryCode::HOME_DELIVERY);
// Define array of request body.
$request_params = [
    'merchant' => '123456',
    'test' => '1',
    'price' => '1000',
    'curr' => 'CZK',
    'label' => 'Product 123',
    'refId' => 'order445566',
    'method' => 'ALL',
    'email' => 'platce@email.com',
    'prepareOnly' => '1',
    'secret' => 'gx4q8OV3TJt6noJnfhjqJKyX3Z6Ych0y',
    'full_name' => 'Jan Novák', // nové parametry ↓
    'billingAddrCity' => 'Hradec Králové',
    'billingAddrStreet' => 'Jiráskova 115',
    'billingAddrPostalCode' => '50341',
    'billingAddrCountry' => 'CZ',
    'delivery' => 'HOME_DELIVERY',
    'homeDeliveryCity' => 'Pardubice',
    'homeDeliveryStreet' => 'třída Míru 224',
    'homeDeliveryPostalCode' => '54314',
    'homeDeliveryCountry' => 'CZ',
    'category' => 'PHYSICAL_GOODS_ONLY',
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://payments.comgate.cz/v1.0/create');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($request_params));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
const cron = require('node-cron');
const MongoClient = require('mongodb').MongoClient;

// MongoDB connection URL
const url = 'mongodb://localhost:27017';
// Database Name
const dbName = 'myauctionapp';

// Function to check auctions and initiate bidding
async function checkAndInitiateAuctions() {
    // Connect to MongoDB
    const client = await MongoClient.connect(url, { useNewUrlParser: true, useUnifiedTopology: true });
    const db = client.db(dbName);

    try {
        // Query auctions that have passed their set date
        const currentDate = new Date();
        const expiredAuctions = await db.collection('auctions').find({ endDate: { $lt: currentDate } }).toArray();

        // If there are expired auctions, initiate bidding process
        if (expiredAuctions.length > 0) {
            console.log('Initiating bidding for expired auctions:', expiredAuctions);
            // Add your bidding initiation logic here
        } else {
            console.log('No expired auctions found.');
        }
    } catch (error) {
        console.error('Error occurred while checking auctions:', error);
    } finally {
        // Close MongoDB connection
        client.close();
    }
}

// Schedule the function to run every minute
cron.schedule('* * * * *', () => {
    console.log('Checking auctions...');
    checkAndInitiateAuctions();
});
#include <stdio.h>

int main() {
    int num, count_pos = 0, count_neg = 0;

    // Prompting the user to input a whole number
    printf("Enter a whole number: \n");
    scanf("%d", &num);

    // Loop for positive numbers
    for (int i = 1; i <= num; i++) {
        if (i % 7 == 0) {
            count_pos++;
        }
    }

    // Loop for negative numbers
    for (int i = -1; i >= num; i--) {
        if (i % 7 == 0) {
            count_neg++;
        }
    }

    // Adding the counts together
    int total_count = count_pos + count_neg;
    
    if(num<=0)
    {
        total_count = total_count +1;
    }
    // Displaying the count to the user
    printf("%d numbers between 1 and %d are \ndivisible by seven with no remainder.\n", total_count, num);

    return 0;
}
#include <stdio.h>

int main() {
    int num, sum = 0, count = 0;

    printf("Number (-1 to stop)? \n");
    while (1) {
        scanf("%d", &num);
        if (num == -1) {
            if (count == 0) {
                printf("No numbers input.\n");
                return 0;
            } else {
                break;
            }
        }
        sum += num;
        count++;
        printf("Number (-1 to stop)? \n");
    }

    int average = (int)sum / count;

    if (count == 1) {
        printf("\nThe average of the 1 number input is %d\n", average);
    } else {
        printf("\nThe average of the %d numbers input is %d\n", count, average);
    }

    return 0;
}
export const isVesselPositionColumn = {
  renderHeader: () => <span>&#x1F6A2;</span>,
  field: "isVesselPosition",
  sortable: false,
  disableExport: true,
  renderCell: (params) =>
    params.row.isVesselPosition ? (
      <div
        style={{
          width: "10px",
          height: "10px",
          borderRadius: "50%",
          background: "#25ac6a",
        }}
      ></div>
    ) : (
      <div
        style={{
          width: "10px",
          height: "10px",
          borderRadius: "50%",
          background: "#006994",
        }}
      ></div>
    ),
};

import React, { useState, useEffect } from "react";
import {
  getOnlyVesselFilterMap,
  getAllVesselsFilter,
  getVesselData,
  getDestEtaVessel,
  getOnlyVesselFilterMapInitial,
  getPositionMapBroker,
} from "../../services/RequestServiceFunctions";
import ShipTable from "./ShipTable";
import SearchShipDetails from "../../components/search-ship-details/SearchShipDetails";
import { usePreferences } from "../../context/PreferencesContext";
import ToggleMap from "../../components/toggleMap/ToggleMap";
import PinMap from "../../components/Map/PinMap";
import HandleError from "../../components/handleError/HandleError";
import Spinner from "../../components/spinner/Spinner";
import OffshoreVessels from "../offshore-vessels/OffshoreVessels";

const Vessels = () => {
  const [error, setError] = useState<string | null>(null);
  const [items, setItems] = useState([]);
  const [itemsMap, setItemsMap] = useState([]);
  const [itemsPosition, setItemsPosition] = useState([]);
  const [loading, setLoading] = useState({ map: true, table: true });
  const [pagesFilters, setPagesFilters] = useState({});
  const { fullPref, broker, userId, cargoColor, typePref } = usePreferences();
  const [list_size, setListSize] = useState(50);
  const [page_size, setPageNumber] = useState(1);
  const [dataCount, setDataCount] = useState<number>(null);
  const [searchedFiltered, setSearchedFiltered] = useState(null);
  const [toggleMap, setToggleMap] = useState(true);
  const [resetAllForm, setResetAllForm] = useState(false);

  useEffect(() => {
    if (fullPref && !searchedFiltered) {
      const pagesTable = {
        ...fullPref,
        p: page_size,
        list_size: list_size,
      };
      getFetchVeselsTable(pagesTable);
    }

    if (searchedFiltered) {
      const pagesTable = {
        ...pagesFilters,
        p: page_size,
        list_size: list_size,
      };
      getFetchVeselsTable(pagesTable);
    }
    // eslint-disable-next-line react-hooks/exhaustive-deps
  }, [list_size, page_size, fullPref, searchedFiltered, itemsPosition]);

  useEffect(() => {
    if (fullPref && !searchedFiltered) {
      getFetchVesselsMapInitial();
    }
    if (searchedFiltered) {
      const pagesMap = { ...pagesFilters };
      getFetchVesselsMap(pagesMap);
    }
    // eslint-disable-next-line react-hooks/exhaustive-deps
  }, [fullPref, searchedFiltered]);

  const getFetchVesselsMapInitial = async () => {
    setError(null);
    const data = await getOnlyVesselFilterMapInitial(fullPref.cargo_type);
    if (data) {
      const initialData = data.results.map((item) => {
        return {
          validPosition: false,
          vessel_name: item.vessel_name,
          vessel_id: item.vessel_id,
          flag: item.flag,
          coords:
            item.coords.length > 0
              ? [item.coords[0][0], item.coords[0][1]]
              : [0, 0],
          dwtSize: item.dwt,
          courseDirection: item.coords.length > 0 ? item.coords[0][2] : 0,
          cargo_type: item.cargo_type,
          color: cargoColor,
        };
      });

      const positions = await getPositionMapBroker(broker, fullPref);
      if (positions) {
        const positionData = positions.results.map((item) => {
          return {
            validPosition: true,
            vessel_name: item.vessel_details.vessel_name,
            vessel_id: item.vessel_details.vessel_id,
            id: item.id,
            flag: item.vessel_details.flag,
            coords:
              item.vessel_details.coords.length > 0
                ? [
                    item.vessel_details.coords[0][0],
                    item.vessel_details.coords[0][1],
                  ]
                : [0, 0],
            dwtSize: item.vessel_details.dwt,
            courseDirection:
              item.vessel_details.coords.length > 0
                ? item.vessel_details.coords[0][2]
                : 0,
            color: "#25AC6A",
          };
        });
        if (positions.results.length > 0) {
          initialData.forEach((initialItem) => {
            const matchingPosition = positionData.find(
              (positionItem) =>
                positionItem &&
                positionItem.vessel_id === initialItem.vessel_id,
            );
            if (matchingPosition) {
              initialItem.validPosition = true;
              initialItem.color = "#25AC6A";
            }
          });
        }
        setItemsMap(initialData);
        setLoading((prevLoading) => ({ ...prevLoading, map: false }));
      } else {
        setError("Positions map cannot be loaded.");
        setLoading((prevLoading) => ({ ...prevLoading, map: false }));
      }
    } else {
      setError("Vessels cannot be loaded.");
      setLoading((prevLoading) => ({ ...prevLoading, map: false }));
    }
  };

  const getFetchVesselsMap = async (valueFilters: any) => {
    setError(null);
    setLoading((prevLoading) => ({ ...prevLoading, map: true }));
    const positions = await getPositionMapBroker(broker, valueFilters);
    if (!positions) {
      setError("Positions Map cannot be loaded.");
    }
    setItemsMap([]);
    const data = await getOnlyVesselFilterMap(valueFilters);
    let results;
    if (data) {
      results = data.results.map((item) => {
        return {
          vessel_name: item.vessel_name,
          vessel_id: item.vessel_id,
          flag: item.flag,
          coords: [
            item.coords.length > 0 ? item.coords[0][0] : 0,
            item.coords.length > 0 ? item.coords[0][1] : 0,
          ],
          dwtSize: item.dwt,
          courseDirection: item.coords.length > 0 ? item.coords[0][2] : 0,
          cargo_type: item.cargo_type,
          color: cargoColor,
        };
      });
    } else {
      setError("Vessels cannot be loaded.");
    }

    let positionData;
    if (positions.results) {
      positionData = positions.results.map((item) =>
        data.results.find((v) => {
          if (v.vessel_id === item.vessel_details.vessel_id) {
            return {
              validPosition: true,
              vessel_name: item.vessel_details.vessel_name,
              vessel_id: item.vessel_details.vessel_id,
              id: item.id,
              flag: item.vessel_details.flag,
              coords: [
                item.vessel_details.coords.length > 0
                  ? item.vessel_details.coords[0][0]
                  : 0,
                item.vessel_details.coords.length > 0
                  ? item.vessel_details.coords[0][1]
                  : 0,
              ],
              dwtSize: item.vessel_details.dwt,
              courseDirection:
                item.vessel_details.coords.length > 0
                  ? item.vessel_details.coords[0][2]
                  : 0,
              color: "#25AC6A",
            };
          }
        }),
      );
    }

    if (positions.results.length > 0) {
      results.forEach((initialItem) => {
        const matchingPosition = positionData.find(
          (positionItem) =>
            positionItem && positionItem.vessel_id === initialItem.vessel_id,
        );
        if (matchingPosition) {
          initialItem.validPosition = true;
          initialItem.color = "#25AC6A";
        }
      });
    }

    setItemsMap(results);
    setLoading((prevLoading) => ({ ...prevLoading, map: false }));
  };

  const getFetchVeselsTable = async (valueFilters: any) => {
    setError(null);
    if (itemsMap.length === 0) {
      const positions = await getPositionMapBroker(broker, fullPref);
      if (positions.results.length > 0) {
        setItemsPosition(positions.results);
      }
    }
    const data = await getAllVesselsFilter(valueFilters);
    if (data) {
      setDataCount(data.count);
      if (data.results && data.results.length > 0) {
        const results = data.results.map((item) => {
          const matchingPosition = itemsPosition.find(
            (pos) => pos.vessel_details.vessel_id === item.vessel_id,
          );
          const isVesselPosition = !!matchingPosition;

          return {
            ...item,
            eta: item.getExtras && item.getExtras[4] ? item.getExtras[4] : "",
            destination_id:
              item.getExtras && item.getExtras[5]
                ? item.getExtras[5]
                : item.getExtras && item.getExtras[3]
                  ? item.getExtras[3]
                  : "",
            isVesselPosition: isVesselPosition,
          };
        });
        setItems(results);
      } else {
        setItems([]);
      }
      setLoading((prevLoading) => ({ ...prevLoading, table: false }));
    } else {
      setError("Vessel table cannot be loaded.");
      setLoading((prevLoading) => ({ ...prevLoading, table: false }));
    }
  };

  const filterVessels = (filters: any) => {
    setResetAllForm(false);
    let dcFilters;
    if (fullPref.cargo_type === "WET") {
      dcFilters = {
        ...filters,
        dirty_clean: fullPref.dirty_clean,
      };
    } else {
      dcFilters = { ...filters };
    }
    if (dcFilters.dirty_clean == null) {
      delete dcFilters.dirty_clean;
    }
    setDefaultPageSize();
    setSearchedFiltered(true);
    setPagesFilters(dcFilters);
    const pagesMap = { ...dcFilters };
    const pagesTable = { ...dcFilters, p: page_size, list_size: list_size };
    mapTableRequest(pagesTable, pagesMap);
  };

  const handleRefreshMap = () => {
    let pagesMap = { ...pagesFilters };
    let pagesTable = {
      ...pagesFilters,
      p: page_size,
      list_size: list_size,
    };
    if (Object.keys(pagesMap).length === 0) {
      pagesMap = { ...fullPref };
      pagesTable = {
        ...fullPref,
        p: page_size,
        list_size: list_size,
      };
    }
    mapTableRequest(pagesTable, pagesMap);
  };

  const handleResetSearchedResults = () => {
    setResetAllForm(true);
    setDefaultPageSize();
    setSearchedFiltered(false);
    setPagesFilters({});
    const pagesMap = { ...fullPref };
    const pagesTable = {
      ...fullPref,
      p: page_size,
      list_size: list_size,
    };
    mapTableRequest(pagesTable, pagesMap);
  };

  const showTickPositions = async (array: any) => {
    setLoading((prevLoading) => ({ ...prevLoading, map: true }));
    const tickArrayMap = itemsMap.filter((o1) =>
      array.some((o2) => o1.vessel_id === o2),
    );
    const tickTable = [];
    for (const id of array) {
      const dest = await getDestEtaVessel(id);
      const vessel = await getVesselData(id);
      const obj = {
        ...vessel,
        destination_id: dest.destination,
        eta: dest.eta,
      };
      tickTable.push(obj);
      setItems([...tickTable]);
    }
    setItemsMap([...tickArrayMap]);
    setLoading((prevLoading) => ({ ...prevLoading, map: false }));
  };

  const mapTableRequest = (tableValue, mapValue) => {
    getFetchVesselsMap(mapValue);
    getFetchVeselsTable(tableValue);
  };

  const setDefaultPageSize = () => {
    setPageNumber(1);
    setListSize(50);
  };

  return typePref && typePref === "OSV" ? (
    <OffshoreVessels />
  ) : (
    <>
      {loading.map && <Spinner color="dry" size={40} position="right" />}
      {toggleMap ? (
        <PinMap
          color={cargoColor}
          items={itemsMap}
          type="vessel"
          maxRadius={50}
          disableCluster={0}
        />
      ) : (
        ""
      )}
      <ToggleMap handleToggleMap={() => setToggleMap(!toggleMap)} />
      {loading.table ? (
        <Spinner color="dry" size={40} />
      ) : (
        <>
          <SearchShipDetails
            filtersPreferences={fullPref && fullPref.cargo_type ? fullPref : ""}
            filterVessels={filterVessels}
            resetAllForm={resetAllForm}
          />
          <ShipTable
            brokerPreference={fullPref != null && fullPref.cargo_type}
            broker={broker}
            userId={userId}
            state={items}
            showTickPositions={showTickPositions}
            handleRefreshMap={handleRefreshMap}
            handleResetSearchedResults={handleResetSearchedResults}
            handleSetPageSize={(value: number) => setListSize(value)}
            handleSetPage={(value: number) => setPageNumber(value)}
            dataCount={dataCount}
            pageNumber={page_size}
            pageSizeList={list_size}
            typePref={typePref}
          />
        </>
      )}
      {error !== null && <HandleError label={error} time={4000} type="error" />}
    </>
  );
};

export default Vessels;
in the Url, capture the time when this was clicked: 

now = zoho.currenttime.toString();
nav = "https://creatorapp.zohopublic.eu/podmanagement/pod-planner/form-perma/Fire_Risk_Assessment_Residents/740aNxP1kK7AgbezOM1NBtqNmQ78bMC7YrrSg3Jy0MsEGu4m8EYKw3e4rsfsZFrXKNSffrgd0mZB7Jk4Amv5K0xNemxhutH4Gqsp?Developments=SitePath&time=zctime";
navnew = replaceAll(nav,"SitePath",txt);
navnew2 = replaceAll(navnew,"zctime",now);

in the form that will load, add this before the script is run so that it gives a 5 second window for the URL to load or otherwise it will not load: 

dat = input.time.addSeconds(5);
//
if(zoho.currenttime < dat)
# Create account from here : http://adfoc.us/831311103357835
# Go to https://adfoc.us/tools/api 
# http://adfoc.us/api/?key={}&url={}


import requests, os
from dotenv import load_dotenv

load_dotenv()

url = ''
api_key = os.getenv('api_key')

endpoint = f'http://adfoc.us/api/?key={api_key}&url={url}'

res = requests.get(url = endpoint)
print(res.text)
#!/bin/bash

if : >/dev/tcp/8.8.8.8/53; then
  echo 'Internet available.'
else
  echo 'Offline.'
fi
n = 81474445317351469114998901794681267749924290383844849804872725538589664780356463669540704831624290547993868665260609534599922904412518566385365553321673100300596278789491249143959868375264266618838135202981519110403143958876395847772078493296398611279079875116208806227270103224570888646431218497989399208363
e = 65537
c = 76896468500807737825335914377784829617437503664246758133269486881165690695543507888714421406338703577078710776329568623334813822402962378897963191057774859256750382360217208189439460932498965941945968190562650221059448221518153974212398367996784498729296792248859410993657367495281537531822317237456234449054

m2 = 71995441349479405174150238573347268764033401827677332885098064079848037794250711545135940345912821630380354561806095800953927401810043168331542699870491049386252060892238394824625131979503501184517522594418859451822891627902734851875184842064466901694815570008383925978013017741187189549161004235507156345173

m = (pow(4, e, n) * c) % n
#pass m to the server aka D
#what i got back from the server 1161100120783400157893826473469823540279862995405112307026974881786813258069605437069291076149877005781538860580400921108980
d = 1161100120783400157893826473469823540279862995405112307026974881786813258069605437069291076149877005781538860580400921108980
print(bytearray.fromhex(format(d // 4, "x")).decode())
from Crypto.Util.number import *
def encrypt(m,e,n):
    return pow(m,e,n)
p=3
q=7
#to get n multiply two primes
n=p*q
#to get e pick a number 1 < e < f(n), with f representing euler's totient function
#e must also me coeprime to f(n) meaning gdf((fn), e) = 1
e=5
m1=bytes_to_long(b"test123")
m2=bytes_to_long(b"123test5")
assert (encrypt(m1,e,n)*encrypt(m2,e,n))%n==encrypt(m1*m2,e,n)
function Foo() {
  // - If possible, prefer as specific as possible. For example, HTMLDivElement
  //   is better than HTMLElement and way better than Element.
  // - Technical-wise, this returns RefObject<HTMLDivElement>
  const divRef = useRef<HTMLDivElement>(null);

  useEffect(() => {
    // Note that ref.current may be null. This is expected, because you may
    // conditionally render the ref-ed element, or you may forget to assign it
    if (!divRef.current) throw Error("divRef is not assigned");

    // Now divRef.current is sure to be HTMLDivElement
    doSomethingWith(divRef.current);
  });

  // Give the ref to an element so React can manage it for you
  return <div ref={divRef}>etc</div>;
}
const memoizedCallback = useCallback(
  (param1: string, param2: number) => {
    console.log(param1, param2)
    return { ok: true }
  },
  [...],
);
/**
 * VSCode will show the following type:
 * const memoizedCallback:
 *  (param1: string, param2: number) => { ok: boolean }
 */
const [user, setUser] = useState<User>({} as User);

// later...
setUser(newUser);
const [user, setUser] = useState<User | null>(null);

// later...
setUser(newUser);
// Declaring type of props - see "Typing Component Props" for more examples
type AppProps = {
  message: string;
}; /* use `interface` if exporting so that consumers can extend */

// Easiest way to declare a Function Component; return type is inferred.
const App = ({ message }: AppProps) => <div>{message}</div>;

// you can choose annotate the return type so an error is raised if you accidentally return some other type
const App = ({ message }: AppProps): React.JSX.Element => <div>{message}</div>;

// you can also inline the type declaration; eliminates naming the prop types, but looks repetitive
const App = ({ message }: { message: string }) => <div>{message}</div>;

// Alternatively, you can use `React.FunctionComponent` (or `React.FC`), if you prefer.
// With latest React types and TypeScript 5.1. it's mostly a stylistic choice, otherwise discouraged.
const App: React.FunctionComponent<{ message: string }> = ({ message }) => (
  <div>{message}</div>
);
npx create-react-app my-app --template typescript
  const navigateToFile = async (emailId: string) => {
    if (!emailId) return; // If no email ID is present, return
    const filename = await useGetFilename(emailId); // Fetch filename using the email ID
    if (filename) {
      router.push(`/secure/review/email?filename=${filename}`);
    }
  };
<link rel="stylesheet" href="{{ 'component-list-menu.css' | asset_url }}" media="print" onload="this.media='all'">
<link rel="stylesheet" href="{{ 'component-search.css' | asset_url }}" media="print" onload="this.media='all'">
<link rel="stylesheet" href="{{ 'component-menu-drawer.css' | asset_url }}" media="print" onload="this.media='all'">
<link rel="stylesheet" href="{{ 'component-cart-notification.css' | asset_url }}" media="print" onload="this.media='all'">
<link rel="stylesheet" href="{{ 'component-cart-items.css' | asset_url }}" media="print" onload="this.media='all'">
{%- if settings.predictive_search_enabled -%}
  <link rel="stylesheet" href="{{ 'component-price.css' | asset_url }}" media="print" onload="this.media='all'">
{%- endif -%}
{%- if section.settings.menu_type_desktop == 'mega' -%}
  <link rel="stylesheet" href="{{ 'component-mega-menu.css' | asset_url }}" media="print" onload="this.media='all'">
{%- endif -%}

{%- if settings.cart_type == "drawer" -%}
  {{ 'component-cart-drawer.css' | asset_url | stylesheet_tag }}
  {{ 'component-cart.css' | asset_url | stylesheet_tag }}
  {{ 'component-totals.css' | asset_url | stylesheet_tag }}
  {{ 'component-price.css' | asset_url | stylesheet_tag }}
  {{ 'component-discounts.css' | asset_url | stylesheet_tag }}
{%- endif -%}

<style>
  header-drawer {
    justify-self: start;
    margin-left: -1.2rem;
  }

  {%- if section.settings.sticky_header_type == 'reduce-logo-size' -%}
    .scrolled-past-header .header__heading-logo-wrapper {
      width: 75%;
    }
  {%- endif -%}

  {%- if section.settings.menu_type_desktop != "drawer" -%}
    @media screen and (min-width: 990px) {
      header-drawer {
        display: none;
      }
    }
  {%- endif -%}

  .menu-drawer-container {
    display: flex;
  }

  .list-menu {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .list-menu--inline {
    display: inline-flex;
    flex-wrap: wrap;
  }

  summary.list-menu__item {
    padding-right: 2.7rem;
  }

  .list-menu__item {
    display: flex;
    align-items: center;
    line-height: calc(1 + 0.3 / var(--font-body-scale));
  }

  .list-menu__item--link {
    text-decoration: none;
    padding-bottom: 1rem;
    padding-top: 1rem;
    line-height: calc(1 + 0.8 / var(--font-body-scale));
  }

  @media screen and (min-width: 750px) {
    .list-menu__item--link {
      padding-bottom: 0.5rem;
      padding-top: 0.5rem;
    }
  }
</style>

{%- style -%}
  .header {
    padding: {{ section.settings.padding_top | times: 0.5 | round: 0 }}px 3rem {{ section.settings.padding_bottom | times: 0.5 | round: 0 }}px 3rem;
  }

  .section-header {
    position: sticky; /* This is for fixing a Safari z-index issue. PR #2147 */
    margin-bottom: {{ section.settings.margin_bottom | times: 0.75 | round: 0 }}px;
  }

  @media screen and (min-width: 750px) {
    .section-header {
      margin-bottom: {{ section.settings.margin_bottom }}px;
    }
  }

  @media screen and (min-width: 990px) {
    .header {
      padding-top: {{ section.settings.padding_top }}px;
      padding-bottom: {{ section.settings.padding_bottom }}px;
    }
  }
{%- endstyle -%}

<script src="{{ 'details-disclosure.js' | asset_url }}" defer="defer"></script>
<script src="{{ 'details-modal.js' | asset_url }}" defer="defer"></script>
<script src="{{ 'cart-notification.js' | asset_url }}" defer="defer"></script>
<script src="{{ 'search-form.js' | asset_url }}" defer="defer"></script>
{%- if settings.cart_type == "drawer" -%}
  <script src="{{ 'cart-drawer.js' | asset_url }}" defer="defer"></script>
{%- endif -%}

<svg xmlns="http://www.w3.org/2000/svg" class="hidden">
  <symbol id="icon-search" viewbox="0 0 18 19" fill="none">
    <path fill-rule="evenodd" clip-rule="evenodd" d="M11.03 11.68A5.784 5.784 0 112.85 3.5a5.784 5.784 0 018.18 8.18zm.26 1.12a6.78 6.78 0 11.72-.7l5.4 5.4a.5.5 0 11-.71.7l-5.41-5.4z" fill="currentColor"/>
  </symbol>

  <symbol id="icon-reset" class="icon icon-close"  fill="none" viewBox="0 0 18 18" stroke="currentColor">
    <circle r="8.5" cy="9" cx="9" stroke-opacity="0.2"/>
    <path d="M6.82972 6.82915L1.17193 1.17097" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/>
    <path d="M1.22896 6.88502L6.77288 1.11523" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/>
  </symbol>

  <symbol id="icon-close" class="icon icon-close" fill="none" viewBox="0 0 18 17">
    <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
  </symbol>
</svg>

{%- liquid
  for block in section.blocks
    if block.type == '@app'
      assign has_app_block = true
    endif
  endfor
-%}

<{% if section.settings.sticky_header_type != 'none' %}sticky-header data-sticky-type="{{ section.settings.sticky_header_type }}"{% else %}div{% endif %} class="header-wrapper color-{{ section.settings.color_scheme }} gradient{% if section.settings.show_line_separator %} header-wrapper--border-bottom{% endif %}">
  {%- liquid
    assign social_links = false
    assign localization_forms = false

    if settings.social_twitter_link != blank or settings.social_facebook_link != blank or settings.social_pinterest_link != blank or settings.social_instagram_link != blank or settings.social_youtube_link != blank or settings.social_vimeo_link != blank or settings.social_tiktok_link != blank or settings.social_tumblr_link != blank or settings.social_snapchat_link != blank
      assign social_links = true
    endif

    if localization.available_countries.size > 1 and section.settings.enable_country_selector or section.settings.enable_language_selector and localization.available_languages.size > 1
      assign localization_forms = true
    endif
  -%}
  <header class="header header--{{ section.settings.logo_position }} header--mobile-{{ section.settings.mobile_logo_position }} page-width{% if section.settings.menu_type_desktop == 'drawer' %} drawer-menu{% endif %}{% if section.settings.menu != blank %} header--has-menu{% endif %}{% if has_app_block %} header--has-app{% endif %}{% if social_links %} header--has-social{% endif %}{% if shop.customer_accounts_enabled %} header--has-account{% endif %}{% if localization_forms %} header--has-localizations{% endif %}">
    {%- liquid
      if section.settings.menu != blank
        render 'header-drawer'
      endif

      if section.settings.logo_position == 'top-center' or section.settings.menu == blank
        render 'header-search', input_id: 'Search-In-Modal-1'
      endif
    -%}

    {%- if section.settings.logo_position != 'middle-center' -%}
      {%- if request.page_type == 'index' -%}
        <h1 class="header__heading">
      {%- endif -%}
          <a href="{{ routes.root_url }}" class="header__heading-link link link--text focus-inset">
            {%- if settings.logo != blank -%}
              <div class="header__heading-logo-wrapper">
                {%- assign logo_alt = settings.logo.alt | default: shop.name | escape -%}
                {%- assign logo_height = settings.logo_width | divided_by: settings.logo.aspect_ratio -%}
                {% capture sizes %}(max-width: {{ settings.logo_width | times: 2 }}px) 50vw, {{ settings.logo_width }}px{% endcapture %}
                {% capture widths %}{{ settings.logo_width }}, {{ settings.logo_width | times: 1.5 | round }}, {{ settings.logo_width | times: 2 }}{% endcapture %}
                {{ settings.logo | image_url: width: 600 | image_tag:
                  class: 'header__heading-logo motion-reduce',
                  widths: widths,
                  height: logo_height,
                  width: settings.logo_width,
                  alt: logo_alt,
                  sizes: sizes,
                  preload: true
                }}
              </div>
            {%- else -%}
              <span class="h2">{{ shop.name }}</span>
            {%- endif -%}
          </a>
      {%- if request.page_type == 'index' -%}
        </h1>
      {%- endif -%}
    {%- endif -%}

    {%- liquid
      if section.settings.menu != blank
        if section.settings.menu_type_desktop == 'dropdown'
          render 'header-dropdown-menu'
        elsif section.settings.menu_type_desktop != 'drawer'
          render 'header-mega-menu'
        endif
      endif
    %}

    {%- if section.settings.logo_position == 'middle-center' -%}
      {%- if request.page_type == 'index' -%}
        <h1 class="header__heading">
      {%- endif -%}
          <a href="{{ routes.root_url }}" class="header__heading-link link link--text focus-inset">
            {%- if settings.logo != blank -%}
              <div class="header__heading-logo-wrapper">
                {%- assign logo_alt = settings.logo.alt | default: shop.name | escape -%}
                {%- assign logo_height = settings.logo_width | divided_by: settings.logo.aspect_ratio -%}
                {% capture sizes %}(min-width: 750px) {{ settings.logo_width }}px, 50vw{% endcapture %}
                {% capture widths %}{{ settings.logo_width }}, {{ settings.logo_width | times: 1.5 | round }}, {{ settings.logo_width | times: 2 }}{% endcapture %}
                {{ settings.logo | image_url: width: 600 | image_tag:
                  class: 'header__heading-logo',
                  widths: widths,
                  height: logo_height,
                  width: settings.logo_width,
                  alt: logo_alt,
                  sizes: sizes,
                  preload: true
                }}
              </div>
            {%- else -%}
              <span class="h2">{{ shop.name }}</span>
            {%- endif -%}
          </a>
      {%- if request.page_type == 'index' -%}
        </h1>
      {%- endif -%}
    {%- endif -%}

    <div class="header__icons{% if section.settings.enable_country_selector or section.settings.enable_language_selector %} header__icons--localization header-localization{% endif %}">
      <div class="desktop-localization-wrapper">
        {%- if section.settings.enable_country_selector and localization.available_countries.size > 1 -%}
          <localization-form class="small-hide medium-hide" data-prevent-hide>
            {%- form 'localization', id: 'HeaderCountryForm', class: 'localization-form' -%}
              <div>
                <h2 class="visually-hidden" id="HeaderCountryLabel">{{ 'localization.country_label' | t }}</h2>
                {%- render 'country-localization', localPosition: 'HeaderCountry' -%}
              </div>
            {%- endform -%}
          </localization-form>
        {% endif %}

        {%- if section.settings.enable_language_selector and localization.available_languages.size > 1 -%}
          <localization-form class="small-hide medium-hide" data-prevent-hide>
            {%- form 'localization', id: 'HeaderLanguageForm', class: 'localization-form' -%}
              <div>
                <h2 class="visually-hidden" id="HeaderLanguageLabel">{{ 'localization.language_label' | t }}</h2>
                {%- render 'language-localization', localPosition: 'HeaderLanguage' -%}
              </div>
            {%- endform -%}
          </localization-form>
        {%- endif -%}
      </div>
      {% render 'header-search', input_id: 'Search-In-Modal' %}

      {%- if shop.customer_accounts_enabled -%}
        <a href="{%- if customer -%}{{ routes.account_url }}{%- else -%}{{ routes.account_login_url }}{%- endif -%}" class="header__icon header__icon--account link focus-inset{% if section.settings.menu != blank %} small-hide{% endif %}">
          <account-icon>
            {%- if customer and customer.has_avatar? -%}
              {{ customer | avatar }}
            {%- else -%}
              {% render 'icon-account' %}
            {%- endif -%}
          </account-icon>
          <span class="visually-hidden">
            {%- liquid
              if customer
                echo 'customer.account_fallback' | t
              else
                echo 'customer.log_in' | t
              endif
            -%}
          </span>
        </a>
      {%- endif -%}

      {%- for block in section.blocks -%}
        {%- case block.type -%}
          {%- when '@app' -%}
            {% render block %}
        {%- endcase -%}
      {%- endfor -%}

      <a href="{{ routes.cart_url }}" class="header__icon header__icon--cart link focus-inset" id="cart-icon-bubble">
        {%- liquid
          if cart == empty
            render 'icon-cart-empty'
          else
            render 'icon-cart'
          endif
        -%}
        <span class="visually-hidden">{{ 'templates.cart.cart' | t }}</span>
        {%- if cart != empty -%}
          <div class="cart-count-bubble">
            {%- if cart.item_count < 100 -%}
              <span aria-hidden="true">{{ cart.item_count }}</span>
            {%- endif -%}
            <span class="visually-hidden">{{ 'sections.header.cart_count' | t: count: cart.item_count }}</span>
          </div>
        {%- endif -%}
      </a>
    </div>
  </header>
</{% if section.settings.sticky_header_type != 'none' %}sticky-header{% else %}div{% endif %}>

{%- if settings.cart_type == "notification" -%}
  {%- render 'cart-notification', color_scheme: section.settings.color_scheme, desktop_menu_type: section.settings.menu_type_desktop -%}
{%- endif -%}

{% javascript %}
  class StickyHeader extends HTMLElement {
    constructor() {
      super();
    }

    connectedCallback() {
      this.header = document.querySelector('.section-header');
      this.headerIsAlwaysSticky = this.getAttribute('data-sticky-type') === 'always' || this.getAttribute('data-sticky-type') === 'reduce-logo-size';
      this.headerBounds = {};

      this.setHeaderHeight();

      window.matchMedia('(max-width: 990px)').addEventListener('change', this.setHeaderHeight.bind(this));

      if (this.headerIsAlwaysSticky) {
        this.header.classList.add('shopify-section-header-sticky');
      };

      this.currentScrollTop = 0;
      this.preventReveal = false;
      this.predictiveSearch = this.querySelector('predictive-search');

      this.onScrollHandler = this.onScroll.bind(this);
      this.hideHeaderOnScrollUp = () => this.preventReveal = true;

      this.addEventListener('preventHeaderReveal', this.hideHeaderOnScrollUp);
      window.addEventListener('scroll', this.onScrollHandler, false);

      this.createObserver();
    }

    setHeaderHeight() {
      document.documentElement.style.setProperty('--header-height', `${this.header.offsetHeight}px`);
    }

    disconnectedCallback() {
      this.removeEventListener('preventHeaderReveal', this.hideHeaderOnScrollUp);
      window.removeEventListener('scroll', this.onScrollHandler);
    }

    createObserver() {
      let observer = new IntersectionObserver((entries, observer) => {
        this.headerBounds = entries[0].intersectionRect;
        observer.disconnect();
      });

      observer.observe(this.header);
    }

    onScroll() {
      const scrollTop = window.pageYOffset || document.documentElement.scrollTop;

      if (this.predictiveSearch && this.predictiveSearch.isOpen) return;

      if (scrollTop > this.currentScrollTop && scrollTop > this.headerBounds.bottom) {
        this.header.classList.add('scrolled-past-header');
        if (this.preventHide) return;
        requestAnimationFrame(this.hide.bind(this));
      } else if (scrollTop < this.currentScrollTop && scrollTop > this.headerBounds.bottom) {
        this.header.classList.add('scrolled-past-header');
        if (!this.preventReveal) {
          requestAnimationFrame(this.reveal.bind(this));
        } else {
          window.clearTimeout(this.isScrolling);

          this.isScrolling = setTimeout(() => {
            this.preventReveal = false;
          }, 66);

          requestAnimationFrame(this.hide.bind(this));
        }
      } else if (scrollTop <= this.headerBounds.top) {
        this.header.classList.remove('scrolled-past-header');
        requestAnimationFrame(this.reset.bind(this));
      }

      this.currentScrollTop = scrollTop;
    }

    hide() {
      if (this.headerIsAlwaysSticky) return;
      this.header.classList.add('shopify-section-header-hidden', 'shopify-section-header-sticky');
      this.closeMenuDisclosure();
      this.closeSearchModal();
    }

    reveal() {
      if (this.headerIsAlwaysSticky) return;
      this.header.classList.add('shopify-section-header-sticky', 'animate');
      this.header.classList.remove('shopify-section-header-hidden');
    }

    reset() {
      if (this.headerIsAlwaysSticky) return;
      this.header.classList.remove('shopify-section-header-hidden', 'shopify-section-header-sticky', 'animate');
    }

    closeMenuDisclosure() {
      this.disclosures = this.disclosures || this.header.querySelectorAll('header-menu');
      this.disclosures.forEach(disclosure => disclosure.close());
    }

    closeSearchModal() {
      this.searchModal = this.searchModal || this.header.querySelector('details-modal');
      this.searchModal.close(false);
    }
  }

  customElements.define('sticky-header', StickyHeader);
{% endjavascript %}

<script type="application/ld+json">
  {
    "@context": "http://schema.org",
    "@type": "Organization",
    "name": {{ shop.name | json }},
    {% if settings.logo %}
      "logo": {{ settings.logo | image_url: width: 500 | prepend: "https:" | json }},
    {% endif %}
    "sameAs": [
      {{ settings.social_twitter_link | json }},
      {{ settings.social_facebook_link | json }},
      {{ settings.social_pinterest_link | json }},
      {{ settings.social_instagram_link | json }},
      {{ settings.social_tiktok_link | json }},
      {{ settings.social_tumblr_link | json }},
      {{ settings.social_snapchat_link | json }},
      {{ settings.social_youtube_link | json }},
      {{ settings.social_vimeo_link | json }}
    ],
    "url": {{ request.origin | append: page.url | json }}
  }
</script>

{%- if request.page_type == 'index' -%}
  {% assign potential_action_target = request.origin | append: routes.search_url | append: "?q={search_term_string}" %}
  <script type="application/ld+json">
    {
      "@context": "http://schema.org",
      "@type": "WebSite",
      "name": {{ shop.name | json }},
      "potentialAction": {
        "@type": "SearchAction",
        "target": {{ potential_action_target | json }},
        "query-input": "required name=search_term_string"
      },
      "url": {{ request.origin | append: page.url | json }}
    }
  </script>
{%- endif -%}

{% schema %}
{
  "name": "t:sections.header.name",
  "class": "section-header",
  "max_blocks": 3,
  "settings": [
    {
      "type": "select",
      "id": "logo_position",
      "options": [
        {
          "value": "top-left",
          "label": "t:sections.header.settings.logo_position.options__2.label"
        },
        {
          "value": "top-center",
          "label": "t:sections.header.settings.logo_position.options__3.label"
        },
        {
          "value": "middle-left",
          "label": "t:sections.header.settings.logo_position.options__1.label"
        },
        {
          "value": "middle-center",
          "label": "t:sections.header.settings.logo_position.options__4.label"
        }
      ],
      "default": "middle-left",
      "label": "t:sections.header.settings.logo_position.label",
      "info": "t:sections.header.settings.logo_help.content"
    },
    {
      "type": "link_list",
      "id": "menu",
      "default": "main-menu",
      "label": "t:sections.header.settings.menu.label"
    },
    {
      "type": "select",
      "id": "menu_type_desktop",
      "options": [
        {
          "value": "dropdown",
          "label": "t:sections.header.settings.menu_type_desktop.options__1.label"
        },
        {
          "value": "mega",
          "label": "t:sections.header.settings.menu_type_desktop.options__2.label"
        },
        {
          "value": "drawer",
          "label": "t:sections.header.settings.menu_type_desktop.options__3.label"
        }
      ],
      "default": "dropdown",
      "label": "t:sections.header.settings.menu_type_desktop.label",
      "info": "t:sections.header.settings.menu_type_desktop.info"
    },
    {
      "type": "select",
      "id": "sticky_header_type",
      "options": [
        {
          "value": "none",
          "label": "t:sections.header.settings.sticky_header_type.options__1.label"
        },
        {
          "value": "on-scroll-up",
          "label": "t:sections.header.settings.sticky_header_type.options__2.label"
        },
        {
          "value": "always",
          "label": "t:sections.header.settings.sticky_header_type.options__3.label"
        },
        {
          "value": "reduce-logo-size",
          "label": "t:sections.header.settings.sticky_header_type.options__4.label"
        }
      ],
      "default": "on-scroll-up",
      "label": "t:sections.header.settings.sticky_header_type.label"
    },
    {
      "type": "checkbox",
      "id": "show_line_separator",
      "default": true,
      "label": "t:sections.header.settings.show_line_separator.label"
    },
    {
      "type": "header",
      "content": "t:sections.header.settings.header__1.content"
    },
    {
      "type": "color_scheme",
      "id": "color_scheme",
      "label": "t:sections.all.colors.label",
      "default": "scheme-1"
    },
    {
      "type": "color_scheme",
      "id": "menu_color_scheme",
      "label": "t:sections.header.settings.menu_color_scheme.label",
      "default": "scheme-1"
    },
    {
      "type": "header",
      "content": "t:sections.header.settings.header__3.content",
      "info": "t:sections.header.settings.header__4.info"
    },
    {
      "type": "checkbox",
      "id": "enable_country_selector",
      "default": false,
      "label": "t:sections.header.settings.enable_country_selector.label"
    },
    {
      "type": "header",
      "content": "t:sections.header.settings.header__5.content",
      "info": "t:sections.header.settings.header__6.info"
    },
    {
      "type": "checkbox",
      "id": "enable_language_selector",
      "default": false,
      "label": "t:sections.header.settings.enable_language_selector.label"
    },
    {
      "type": "header",
      "content": "t:sections.header.settings.mobile_layout.content"
    },
    {
      "type": "select",
      "id": "mobile_logo_position",
      "options": [
        {
          "value": "center",
          "label": "t:sections.header.settings.mobile_logo_position.options__1.label"
        },
        {
          "value": "left",
          "label": "t:sections.header.settings.mobile_logo_position.options__2.label"
        }
      ],
      "default": "center",
      "label": "t:sections.header.settings.mobile_logo_position.label"
    },
    {
      "type": "header",
      "content": "t:sections.all.spacing"
    },
    {
      "type": "range",
      "id": "margin_bottom",
      "min": 0,
      "max": 100,
      "step": 4,
      "unit": "px",
      "label": "t:sections.header.settings.margin_bottom.label",
      "default": 0
    },
    {
      "type": "header",
      "content": "t:sections.all.padding.section_padding_heading"
    },
    {
      "type": "range",
      "id": "padding_top",
      "min": 0,
      "max": 36,
      "step": 4,
      "unit": "px",
      "label": "t:sections.all.padding.padding_top",
      "default": 20
    },
    {
      "type": "range",
      "id": "padding_bottom",
      "min": 0,
      "max": 36,
      "step": 4,
      "unit": "px",
      "label": "t:sections.all.padding.padding_bottom",
      "default": 20
    }
  ],
  "blocks": [
    {
      "type": "@app"
    }
  ]
}
{% endschema %}
Collect(ColNew,
    ForAll(Sequence(10),
        {
            ID: Value,
            Algo: $"texto:{Value}"
        }
    )
)
star

Sat Apr 27 2024 11:58:18 GMT+0000 (Coordinated Universal Time) https://www.alphacodez.com/1xbet-clone-script

@jacksonjackk

star

Sat Apr 27 2024 11:57:48 GMT+0000 (Coordinated Universal Time) https://www.alphacodez.com/cash-app-clone-script

@jacksonjackk

star

Sat Apr 27 2024 11:56:32 GMT+0000 (Coordinated Universal Time) https://www.alphacodez.com/binance-clone-script

@jacksonjackk

star

Sat Apr 27 2024 11:55:58 GMT+0000 (Coordinated Universal Time) https://www.alphacodez.com/onlyfans-clone-script

@jacksonjackk

star

Sat Apr 27 2024 11:53:54 GMT+0000 (Coordinated Universal Time) https://www.alphacodez.com/betfury-clone-script

@jacksonjackk

star

Sat Apr 27 2024 11:53:08 GMT+0000 (Coordinated Universal Time) https://www.alphacodez.com/bet365-clone-script

@jacksonjackk

star

Sat Apr 27 2024 11:51:05 GMT+0000 (Coordinated Universal Time) https://www.alphacodez.com/paxful-clone-script

@jacksonjackk

star

Sat Apr 27 2024 11:25:11 GMT+0000 (Coordinated Universal Time)

@harunmunjal #java

star

Sat Apr 27 2024 09:23:39 GMT+0000 (Coordinated Universal Time) https://www.incgujarat.com/

@Combustion

star

Sat Apr 27 2024 09:20:03 GMT+0000 (Coordinated Universal Time)

@signup

star

Sat Apr 27 2024 09:19:03 GMT+0000 (Coordinated Universal Time)

@signup

star

Sat Apr 27 2024 08:54:57 GMT+0000 (Coordinated Universal Time)

@signup

star

Sat Apr 27 2024 04:04:48 GMT+0000 (Coordinated Universal Time) https://github.com/S4-2024/Lista1/blob/main/src/Main.java

@baralou

star

Sat Apr 27 2024 03:50:47 GMT+0000 (Coordinated Universal Time) https://github.com/S4-2024/Lista1/blob/main/src/BubbleSort.java

@baralou

star

Sat Apr 27 2024 03:47:39 GMT+0000 (Coordinated Universal Time) https://www.onlinegdb.com/online_c_compiler

@2233081393

star

Sat Apr 27 2024 03:42:51 GMT+0000 (Coordinated Universal Time) https://github.com/S4-2024/Lista1/blob/main/src/SelectionSort.java

@baralou

star

Sat Apr 27 2024 02:26:34 GMT+0000 (Coordinated Universal Time) https://github.com/S4-2024/Lista1/blob/main/src/LeitorCSV.java

@baralou

star

Sat Apr 27 2024 02:19:20 GMT+0000 (Coordinated Universal Time) https://www.notion.so/login

@baralou

star

Fri Apr 26 2024 22:59:32 GMT+0000 (Coordinated Universal Time) https://askubuntu.com/questions/13065/how-do-i-fix-the-gpg-error-no-pubkey

@j3d1n00b

star

Fri Apr 26 2024 22:37:01 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/35251359/cannot-upgrade-arch-linux-pacman-syu-not-working

@j3d1n00b

star

Fri Apr 26 2024 22:36:18 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/35251359/cannot-upgrade-arch-linux-pacman-syu-not-working

@j3d1n00b

star

Fri Apr 26 2024 19:37:38 GMT+0000 (Coordinated Universal Time) https://learn.microsoft.com/sv-se/powershell/module/storage/update-storageprovidercache?view

@dw

star

Fri Apr 26 2024 16:12:54 GMT+0000 (Coordinated Universal Time)

@nsmnmlgolf

star

Fri Apr 26 2024 12:57:15 GMT+0000 (Coordinated Universal Time) https://github.com/littlebizzy/disable-woocommerce-status/tree/1.0.4

@Mesmeric

star

Fri Apr 26 2024 12:56:31 GMT+0000 (Coordinated Universal Time) https://www.danielauener.com/woocommerce-with-thousands-of-products-workarounds-for-slow-admin-panel/

@Mesmeric

star

Fri Apr 26 2024 12:56:28 GMT+0000 (Coordinated Universal Time) https://www.danielauener.com/woocommerce-with-thousands-of-products-workarounds-for-slow-admin-panel/

@Mesmeric

star

Fri Apr 26 2024 12:45:19 GMT+0000 (Coordinated Universal Time)

@comgate

star

Fri Apr 26 2024 12:43:21 GMT+0000 (Coordinated Universal Time)

@comgate

star

Fri Apr 26 2024 12:39:13 GMT+0000 (Coordinated Universal Time)

@comgate

star

Fri Apr 26 2024 12:03:39 GMT+0000 (Coordinated Universal Time)

@kimsson

star

Fri Apr 26 2024 11:58:09 GMT+0000 (Coordinated Universal Time) https://codevalidator.aut.ac.nz/autmoodle1/mod/quiz/attempt.php?attempt

@meanaspotato #c

star

Fri Apr 26 2024 11:16:10 GMT+0000 (Coordinated Universal Time) https://codevalidator.aut.ac.nz/autmoodle1/mod/quiz/attempt.php?attempt

@meanaspotato #c

star

Fri Apr 26 2024 09:28:15 GMT+0000 (Coordinated Universal Time)

@Jacko

star

Fri Apr 26 2024 09:27:51 GMT+0000 (Coordinated Universal Time)

@Jacko

star

Fri Apr 26 2024 08:52:53 GMT+0000 (Coordinated Universal Time)

@nishpod

star

Fri Apr 26 2024 08:42:02 GMT+0000 (Coordinated Universal Time)

@amramroo ##python #coding #python #earn #shortlink #api #api

star

Fri Apr 26 2024 07:00:29 GMT+0000 (Coordinated Universal Time)

@edsonjorgef1 #cli #bash

star

Fri Apr 26 2024 06:33:35 GMT+0000 (Coordinated Universal Time)

@sammo4

star

Fri Apr 26 2024 06:17:22 GMT+0000 (Coordinated Universal Time)

@sammo4

star

Fri Apr 26 2024 06:13:30 GMT+0000 (Coordinated Universal Time) https://github.com/typescript-cheatsheets/react

@temp

star

Fri Apr 26 2024 06:10:02 GMT+0000 (Coordinated Universal Time) https://github.com/typescript-cheatsheets/react

@temp

star

Fri Apr 26 2024 05:59:42 GMT+0000 (Coordinated Universal Time) https://github.com/typescript-cheatsheets/react

@temp

star

Fri Apr 26 2024 05:59:19 GMT+0000 (Coordinated Universal Time) https://github.com/typescript-cheatsheets/react

@temp

star

Fri Apr 26 2024 05:49:57 GMT+0000 (Coordinated Universal Time) https://github.com/typescript-cheatsheets/react

@temp

star

Fri Apr 26 2024 05:31:39 GMT+0000 (Coordinated Universal Time) https://www.sitepoint.com/react-with-typescript-best-practices/

@temp #bash

star

Fri Apr 26 2024 00:19:17 GMT+0000 (Coordinated Universal Time)

@rafal_rydz

star

Thu Apr 25 2024 23:57:02 GMT+0000 (Coordinated Universal Time)

@nsmnmlgolf

star

Thu Apr 25 2024 15:48:21 GMT+0000 (Coordinated Universal Time)

@eguajardo

star

Thu Apr 25 2024 13:59:15 GMT+0000 (Coordinated Universal Time) https://github.com/massgravel/Microsoft-Activation-Scripts/releases

@dw

Save snippets that work with our extensions

Available in the Chrome Web Store Get Firefox Add-on Get VS Code extension