added recourser_main feature