fabric functions update