initial library setup