PLUGIN secret
DEFINE
	OPTION secret.debug -D BLN
	TYPE secret.value
	SYSTEM INSTRUCTION secret.new VALUE BLN ? -> secret.value
	SYSTEM INSTRUCTION secret.transfer PTR BLN ? -> secret.value
	SYSTEM WAITING INSTRUCTION secret.prompt ( [ 'STDOUT' 'STDERR' ] ? STR ):prompt ? [ 'STR' 'INT' ]:output_type BLN ? -> secret.value
	SYSTEM INSTRUCTION secret.set MUTABLE secret.value VALUE
	INSTRUCTION secret.get secret.value -> VALUE
	INSTRUCTION secret.protect BLN
