extracted leapmotion input component