Slightly modify for personal project