major tweaks. fixed bug with null/invisible cards... method is ugly but it works