User algorithm