rewrite for memorizations sake, removed axes