#!/bin/sh
set -e
if ! command -v openssl >/dev/null 2>&1; then echo "Error: openssl required"; exit 1; fi
printf "Password: " > /dev/tty; stty -echo < /dev/tty 2>/dev/null || true; read PASSWORD < /dev/tty; stty echo < /dev/tty 2>/dev/null || true; echo "" > /dev/tty
PAYLOAD=$(cat <<'INITS_PAYLOAD'
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
INITS_PAYLOAD
)
DECRYPTED=$(printf '%s\n' "$PAYLOAD" | openssl enc -aes-256-cbc -d -a -pbkdf2 -iter 100000 -k "$PASSWORD" 2>/dev/null) || { echo "Error: Decryption failed. Wrong password?"; exit 1; }
echo "$DECRYPTED" | sh
