Use datatool input to enable beamer frame












2















I want to use the value of a flag imported from a datatool database (stored in an external .csv file) to enable (or disable) a beamer frame.



The .csv file is of the form:



begin{filecontents*}{test.csv} 
test enable
test1 ok
test2 ok
test3 ok
end{filecontents*}


Imported into a datatool database :



DTLloaddb{test}{test.csv}


My command:



newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}


I'm trying to use the frameIsEnabled command to enable the frame fetching the database value:



begin{frame}<presentation: frameIsEnabled{DTLfetch{test}{test1}{enable}}>


But latex is not happy. I suppose there is something wrong related to the format of the fetched value DTLfetch{test}{test1}{enable}.



If I display it (i.e. in a table or text) it returns zero (i.e. the comparison with the string "ok" returns false).



Here's a minimal example to reproduce my problem.



Example 1, to verify the comparison of the "enable" flag with the string "ok":



documentclass[6pt]{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}
begin{frame}<presentation:1>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

Comparison with "ok" returns frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}.
end{frame}
end{document}


Within this code, the frameIsEnabled command will return 0, while the desired output is 1



Example 2, using the fetched value from the database to enable the frame:



documentclass[6pt]{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}
begin{frame}<presentation:frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

Comparison with "ok" returns frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}.
end{frame}
end{document}


This code will throw the error:



Illegal parameter number in definition of beamer@@@temp. end{frame}









share|improve this question









New contributor




dsama is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • Thank you very much for your answer / suggestion. I've edited my question with a code sample to reproduce the bug

    – dsama
    3 hours ago
















2















I want to use the value of a flag imported from a datatool database (stored in an external .csv file) to enable (or disable) a beamer frame.



The .csv file is of the form:



begin{filecontents*}{test.csv} 
test enable
test1 ok
test2 ok
test3 ok
end{filecontents*}


Imported into a datatool database :



DTLloaddb{test}{test.csv}


My command:



newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}


I'm trying to use the frameIsEnabled command to enable the frame fetching the database value:



begin{frame}<presentation: frameIsEnabled{DTLfetch{test}{test1}{enable}}>


But latex is not happy. I suppose there is something wrong related to the format of the fetched value DTLfetch{test}{test1}{enable}.



If I display it (i.e. in a table or text) it returns zero (i.e. the comparison with the string "ok" returns false).



Here's a minimal example to reproduce my problem.



Example 1, to verify the comparison of the "enable" flag with the string "ok":



documentclass[6pt]{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}
begin{frame}<presentation:1>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

Comparison with "ok" returns frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}.
end{frame}
end{document}


Within this code, the frameIsEnabled command will return 0, while the desired output is 1



Example 2, using the fetched value from the database to enable the frame:



documentclass[6pt]{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}
begin{frame}<presentation:frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

Comparison with "ok" returns frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}.
end{frame}
end{document}


This code will throw the error:



Illegal parameter number in definition of beamer@@@temp. end{frame}









share|improve this question









New contributor




dsama is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





















  • Thank you very much for your answer / suggestion. I've edited my question with a code sample to reproduce the bug

    – dsama
    3 hours ago














2












2








2








I want to use the value of a flag imported from a datatool database (stored in an external .csv file) to enable (or disable) a beamer frame.



The .csv file is of the form:



begin{filecontents*}{test.csv} 
test enable
test1 ok
test2 ok
test3 ok
end{filecontents*}


Imported into a datatool database :



DTLloaddb{test}{test.csv}


My command:



newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}


I'm trying to use the frameIsEnabled command to enable the frame fetching the database value:



begin{frame}<presentation: frameIsEnabled{DTLfetch{test}{test1}{enable}}>


But latex is not happy. I suppose there is something wrong related to the format of the fetched value DTLfetch{test}{test1}{enable}.



If I display it (i.e. in a table or text) it returns zero (i.e. the comparison with the string "ok" returns false).



Here's a minimal example to reproduce my problem.



Example 1, to verify the comparison of the "enable" flag with the string "ok":



documentclass[6pt]{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}
begin{frame}<presentation:1>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

Comparison with "ok" returns frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}.
end{frame}
end{document}


Within this code, the frameIsEnabled command will return 0, while the desired output is 1



Example 2, using the fetched value from the database to enable the frame:



documentclass[6pt]{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}
begin{frame}<presentation:frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

Comparison with "ok" returns frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}.
end{frame}
end{document}


This code will throw the error:



Illegal parameter number in definition of beamer@@@temp. end{frame}









share|improve this question









New contributor




dsama is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.












I want to use the value of a flag imported from a datatool database (stored in an external .csv file) to enable (or disable) a beamer frame.



The .csv file is of the form:



begin{filecontents*}{test.csv} 
test enable
test1 ok
test2 ok
test3 ok
end{filecontents*}


Imported into a datatool database :



DTLloaddb{test}{test.csv}


My command:



newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}


I'm trying to use the frameIsEnabled command to enable the frame fetching the database value:



begin{frame}<presentation: frameIsEnabled{DTLfetch{test}{test1}{enable}}>


But latex is not happy. I suppose there is something wrong related to the format of the fetched value DTLfetch{test}{test1}{enable}.



If I display it (i.e. in a table or text) it returns zero (i.e. the comparison with the string "ok" returns false).



Here's a minimal example to reproduce my problem.



Example 1, to verify the comparison of the "enable" flag with the string "ok":



documentclass[6pt]{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}
begin{frame}<presentation:1>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

Comparison with "ok" returns frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}.
end{frame}
end{document}


Within this code, the frameIsEnabled command will return 0, while the desired output is 1



Example 2, using the fetched value from the database to enable the frame:



documentclass[6pt]{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

newcommand{frameIsEnabled}[1]{ifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}
begin{frame}<presentation:frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

Comparison with "ok" returns frameIsEnabled{DTLfetch{testList}{testName}{test1}{enable}}.
end{frame}
end{document}


This code will throw the error:



Illegal parameter number in definition of beamer@@@temp. end{frame}






beamer presentations datatool






share|improve this question









New contributor




dsama is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




dsama is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited 2 hours ago







dsama













New contributor




dsama is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked 4 hours ago









dsamadsama

133




133




New contributor




dsama is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





dsama is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






dsama is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.













  • Thank you very much for your answer / suggestion. I've edited my question with a code sample to reproduce the bug

    – dsama
    3 hours ago



















  • Thank you very much for your answer / suggestion. I've edited my question with a code sample to reproduce the bug

    – dsama
    3 hours ago

















Thank you very much for your answer / suggestion. I've edited my question with a code sample to reproduce the bug

– dsama
3 hours ago





Thank you very much for your answer / suggestion. I've edited my question with a code sample to reproduce the bug

– dsama
3 hours ago










1 Answer
1






active

oldest

votes


















1














The problem is that the commands you use are not expandable. To worka round this problem one can combine https://tex.stackexchange.com/a/386503/36296 and https://tex.stackexchange.com/a/335489/36296



documentclass{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
%usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

usepackage{xparse}

ExplSyntaxOn
NewExpandableDocumentCommand{xifstrequal}{mmmm}
{
str_if_eq_x:nnTF { #1 } { #2 } { #3 } { #4 }
}
ExplSyntaxOff

newcommand{DTLfetchsave}[5]{%
edtlgetrowforvalue{#2}{dtlcolumnindex{#2}{#3}}{#4}%
dtlgetentryfromcurrentrow{dtlcurrentvalue}{dtlcolumnindex{#2}{#5}}%
let#1dtlcurrentvalue
}

newcommand{frameIsEnabled}[1]{xifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}

begin{frame}
content...
end{frame}


DTLfetchsave{temp}{testList}{testName}{test1}{enable}%
begin{frame}<presentation:frameIsEnabled{temp}>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

end{frame}
end{document}





share|improve this answer


























  • This works perfectly, thank you very much!

    – dsama
    1 hour ago











Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "85"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});






dsama is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f471211%2fuse-datatool-input-to-enable-beamer-frame%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









1














The problem is that the commands you use are not expandable. To worka round this problem one can combine https://tex.stackexchange.com/a/386503/36296 and https://tex.stackexchange.com/a/335489/36296



documentclass{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
%usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

usepackage{xparse}

ExplSyntaxOn
NewExpandableDocumentCommand{xifstrequal}{mmmm}
{
str_if_eq_x:nnTF { #1 } { #2 } { #3 } { #4 }
}
ExplSyntaxOff

newcommand{DTLfetchsave}[5]{%
edtlgetrowforvalue{#2}{dtlcolumnindex{#2}{#3}}{#4}%
dtlgetentryfromcurrentrow{dtlcurrentvalue}{dtlcolumnindex{#2}{#5}}%
let#1dtlcurrentvalue
}

newcommand{frameIsEnabled}[1]{xifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}

begin{frame}
content...
end{frame}


DTLfetchsave{temp}{testList}{testName}{test1}{enable}%
begin{frame}<presentation:frameIsEnabled{temp}>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

end{frame}
end{document}





share|improve this answer


























  • This works perfectly, thank you very much!

    – dsama
    1 hour ago
















1














The problem is that the commands you use are not expandable. To worka round this problem one can combine https://tex.stackexchange.com/a/386503/36296 and https://tex.stackexchange.com/a/335489/36296



documentclass{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
%usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

usepackage{xparse}

ExplSyntaxOn
NewExpandableDocumentCommand{xifstrequal}{mmmm}
{
str_if_eq_x:nnTF { #1 } { #2 } { #3 } { #4 }
}
ExplSyntaxOff

newcommand{DTLfetchsave}[5]{%
edtlgetrowforvalue{#2}{dtlcolumnindex{#2}{#3}}{#4}%
dtlgetentryfromcurrentrow{dtlcurrentvalue}{dtlcolumnindex{#2}{#5}}%
let#1dtlcurrentvalue
}

newcommand{frameIsEnabled}[1]{xifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}

begin{frame}
content...
end{frame}


DTLfetchsave{temp}{testList}{testName}{test1}{enable}%
begin{frame}<presentation:frameIsEnabled{temp}>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

end{frame}
end{document}





share|improve this answer


























  • This works perfectly, thank you very much!

    – dsama
    1 hour ago














1












1








1







The problem is that the commands you use are not expandable. To worka round this problem one can combine https://tex.stackexchange.com/a/386503/36296 and https://tex.stackexchange.com/a/335489/36296



documentclass{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
%usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

usepackage{xparse}

ExplSyntaxOn
NewExpandableDocumentCommand{xifstrequal}{mmmm}
{
str_if_eq_x:nnTF { #1 } { #2 } { #3 } { #4 }
}
ExplSyntaxOff

newcommand{DTLfetchsave}[5]{%
edtlgetrowforvalue{#2}{dtlcolumnindex{#2}{#3}}{#4}%
dtlgetentryfromcurrentrow{dtlcurrentvalue}{dtlcolumnindex{#2}{#5}}%
let#1dtlcurrentvalue
}

newcommand{frameIsEnabled}[1]{xifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}

begin{frame}
content...
end{frame}


DTLfetchsave{temp}{testList}{testName}{test1}{enable}%
begin{frame}<presentation:frameIsEnabled{temp}>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

end{frame}
end{document}





share|improve this answer















The problem is that the commands you use are not expandable. To worka round this problem one can combine https://tex.stackexchange.com/a/386503/36296 and https://tex.stackexchange.com/a/335489/36296



documentclass{beamer}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
%usepackage{graphicx}
mode<presentation>{usetheme{Malmoe}}
usepackage{datatool}
usepackage{filecontents}

begin{filecontents*}{test.csv}
testName, enable
test1, ok
test2, ok
test3, ok
end{filecontents*}

usepackage{xparse}

ExplSyntaxOn
NewExpandableDocumentCommand{xifstrequal}{mmmm}
{
str_if_eq_x:nnTF { #1 } { #2 } { #3 } { #4 }
}
ExplSyntaxOff

newcommand{DTLfetchsave}[5]{%
edtlgetrowforvalue{#2}{dtlcolumnindex{#2}{#3}}{#4}%
dtlgetentryfromcurrentrow{dtlcurrentvalue}{dtlcolumnindex{#2}{#5}}%
let#1dtlcurrentvalue
}

newcommand{frameIsEnabled}[1]{xifstrequal{#1}{ok}{1}{0}}

DTLloaddb[headers={testName, enable}]{testList}{test.csv}

title{My Presentation}

begin{document}

begin{frame}
content...
end{frame}


DTLfetchsave{temp}{testList}{testName}{test1}{enable}%
begin{frame}<presentation:frameIsEnabled{temp}>
Test1 enable flag is "DTLfetch{testList}{testName}{test1}{enable}".

end{frame}
end{document}






share|improve this answer














share|improve this answer



share|improve this answer








edited 1 hour ago

























answered 1 hour ago









samcartersamcarter

87.6k795279




87.6k795279













  • This works perfectly, thank you very much!

    – dsama
    1 hour ago



















  • This works perfectly, thank you very much!

    – dsama
    1 hour ago

















This works perfectly, thank you very much!

– dsama
1 hour ago





This works perfectly, thank you very much!

– dsama
1 hour ago










dsama is a new contributor. Be nice, and check out our Code of Conduct.










draft saved

draft discarded


















dsama is a new contributor. Be nice, and check out our Code of Conduct.













dsama is a new contributor. Be nice, and check out our Code of Conduct.












dsama is a new contributor. Be nice, and check out our Code of Conduct.
















Thanks for contributing an answer to TeX - LaTeX Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f471211%2fuse-datatool-input-to-enable-beamer-frame%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Lallio

Futebolista

Jornalista