private void loadWaypoints(FileConfiguration config) {
try {
Object o = config.get("waypoints");
if (o != null) {
MemorySection mem = (MemorySection)o;
Map<String, Object> worlds = getMemorySectionMap(mem);
Iterator<Entry<String, Object>> i = worlds.entrySet().iterator();
while (i.hasNext()) {
Entry<String, Object> e = i.next();
final String world = e.getKey().toLowerCase();
if (e.getValue() instanceof MemorySection) {
Map<String, Object> waypoints = getMemorySectionMap((MemorySection) e.getValue());
Iterator<Entry<String, Object>> j = waypoints.entrySet().iterator();
while (j.hasNext()) {
Entry<String, Object> waypoint = j.next();
MemorySection values = (MemorySection) waypoint.getValue();
double x = values.getDouble("x");
double y = values.getDouble("y");
double z = values.getDouble("z");
List<Waypoint> existing = ConfigReader.waypoints.get(world);
if (existing == null) {
existing = new LinkedList<Waypoint>();
ConfigReader.waypoints.put(world, existing);