It looks good in theory, but bugs in the sample app still