extract world into separate class