adding transient and singleton domain methods