added horrible JS