Has bugs
More debugging