it gives a segfault; still cool