type Gas = variant { Elemental; Mixed; Toxic };
type ManualReply = record { id : text; orbitals : vec Orbital; state : State };
type ManualReply_1 = record {
  "int" : int;
  "blob" : vec nat8;
  "bool" : bool;
  "text" : text;
  "variant" : Options;
};
type Options = variant { Large; Small; Medium };
type Orbital = record { electrons : nat8; layer : nat8 };
type Solid = record { element : text };
type State = variant { Gas : Gas; Solid : Solid; Liquid };
service : () -> {
  manual_query : (text) -> (text) query;
  manual_update : (text) -> (text);
  query_blob : () -> (vec nat8) query;
  query_float32 : () -> (float32) query;
  query_int8 : () -> (int8) query;
  query_nat : () -> (nat) query;
  query_null : () -> (null) query;
  query_record : () -> (ManualReply) query;
  query_reserved : () -> (reserved) query;
  query_string : () -> (text) query;
  query_variant : () -> (Gas) query;
  reply_raw : () -> (ManualReply_1);
  update_blob : () -> (vec nat8);
  update_float32 : () -> (float32);
  update_int8 : () -> (int8);
  update_nat : () -> (nat);
  update_null : () -> (null);
  update_record : () -> (ManualReply);
  update_reserved : () -> (reserved);
  update_string : () -> (text);
  update_variant : () -> (Gas);
}