Click here for the full patent