an attempt to fix a few different cases in convert_cpu_topology
diff --git a/src/folsom_vm_metrics.erl b/src/folsom_vm_metrics.erl
index 72eedb6..688e504 100644
--- a/src/folsom_vm_metrics.erl
+++ b/src/folsom_vm_metrics.erl
@@ -133,19 +133,19 @@
     list_to_binary(io_lib:format("~p.~p", [A, B])).
 
 convert_cpu_topology([{core, Value}| Tail], Acc) when is_tuple(Value) ->
-  convert_cpu_topology(Tail, lists:append(Acc, [{core, tuple_to_list(Value)}]));
+    convert_cpu_topology(Tail, lists:append(Acc, [{core, tuple_to_list(Value)}]));
 convert_cpu_topology([{core, Value}| Tail], Acc) when is_list(Value) ->
-  convert_cpu_topology(Tail, lists:append(Acc, [{core, convert_cpu_topology(Value, [])}]));
+    convert_cpu_topology(Tail, lists:append(Acc, [{core, convert_cpu_topology(Value, [])}]));
 convert_cpu_topology([{thread, Value}| Tail], Acc) ->
-  convert_cpu_topology(Tail, lists:append(Acc, [{thread, tuple_to_list(Value)}]));
-convert_cpu_topology({logical, Value}, Acc) ->
-  convert_cpu_topology([], lists:append(Acc, [logical, Value]));
+    convert_cpu_topology(Tail, lists:append(Acc, [{thread, tuple_to_list(Value)}]));
 convert_cpu_topology([{node, Value}| Tail], Acc) ->
-  convert_cpu_topology(Tail, lists:append(Acc, [{node, convert_cpu_topology(Value, [])}]));
+    convert_cpu_topology(Tail, lists:append(Acc, [{node, convert_cpu_topology(Value, [])}]));
 convert_cpu_topology([{processor, Value}| Tail], Acc) ->
-  convert_cpu_topology(Tail, lists:append(Acc, [{processor, convert_cpu_topology(Value, [])}]));
+    convert_cpu_topology(Tail, lists:append(Acc, [{processor, convert_cpu_topology(Value, [])}]));
+convert_cpu_topology({Key, Value}, _) ->
+    [{Key, Value}];
 convert_cpu_topology([], Acc) ->
-  Acc.
+    Acc.
 
 get_process_info(Pid) ->
     Info = [process_info(Pid, Key) || Key <- ?PROCESS_INFO],
diff --git a/test/folsom_erlang_checks.erl b/test/folsom_erlang_checks.erl
index eb4d857..31a681a 100644
--- a/test/folsom_erlang_checks.erl
+++ b/test/folsom_erlang_checks.erl
@@ -356,7 +356,9 @@
                                          {core,[{thread,[logical,4]},{thread,[logical,12]}]},
                                          {core,[{thread,[logical,6]},{thread,[logical,14]}]}]}]}],
 
-    ExpectedResult = folsom_vm_metrics:convert_cpu_topology(Test, []).
+    ExpectedResult = folsom_vm_metrics:convert_cpu_topology(Test, []),
+
+    [{logical, 0}] = folsom_vm_metrics:convert_cpu_topology({logical, 0}, []).
 
 duration_check(Duration) ->
     [?assert(lists:keymember(Key, 1, Duration)) || Key <-