WIP: Variant
Todo: ScriptVM and ScriptVMBackend interfaces