Call init first because it may set up variables that are used by scan.
Service Provided by tilde.club.