kinda working, args blow up
running but buggy
it keeps on working, wrong...
now allocating on gpu. correct result for some cases